diff --git a/src/cli.rs b/src/cli.rs
index a4f7c2de9b..a39f14d7aa 100644
--- a/src/cli.rs
+++ b/src/cli.rs
@@ -11,7 +11,7 @@ use crate::commands::classified::{
 use crate::context::Context;
 crate use crate::errors::ShellError;
 use crate::evaluate::Scope;
-use crate::parser::parse2::span::Spanned;
+use crate::parser::parse::span::Spanned;
 use crate::parser::registry;
 use crate::parser::{Pipeline, PipelineElement, TokenNode};
 
diff --git a/src/main.rs b/src/main.rs
index ac4f251c32..6cc0d21711 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -22,7 +22,7 @@ use clap::{App, Arg};
 use log::LevelFilter;
 use std::error::Error;
 
-crate use parser::parse2::text::Text;
+crate use parser::parse::text::Text;
 
 fn main() -> Result<(), Box<dyn Error>> {
     let matches = App::new("nu shell")
diff --git a/src/parser.rs b/src/parser.rs
index fcc299d4ec..e27cfce9ba 100644
--- a/src/parser.rs
+++ b/src/parser.rs
@@ -1,22 +1,22 @@
 crate mod hir;
-crate mod parse2;
+crate mod parse;
 crate mod parse_command;
 crate mod registry;
 
 use crate::errors::ShellError;
 
 crate use hir::baseline_parse_tokens::baseline_parse_tokens;
-crate use parse2::call_node::CallNode;
-crate use parse2::files::Files;
-crate use parse2::flag::Flag;
-crate use parse2::operator::Operator;
-crate use parse2::parser::{nom_input, pipeline};
-crate use parse2::pipeline::{Pipeline, PipelineElement};
-crate use parse2::span::{Span, Spanned};
-crate use parse2::text::Text;
-crate use parse2::token_tree::TokenNode;
-crate use parse2::tokens::{RawToken, Token};
-crate use parse2::unit::Unit;
+crate use parse::call_node::CallNode;
+crate use parse::files::Files;
+crate use parse::flag::Flag;
+crate use parse::operator::Operator;
+crate use parse::parser::{nom_input, pipeline};
+crate use parse::pipeline::{Pipeline, PipelineElement};
+crate use parse::span::{Span, Spanned};
+crate use parse::text::Text;
+crate use parse::token_tree::TokenNode;
+crate use parse::tokens::{RawToken, Token};
+crate use parse::unit::Unit;
 crate use parse_command::parse_command;
 crate use registry::CommandRegistry;
 
diff --git a/src/parser/ast.rs b/src/parser/ast.rs
deleted file mode 100644
index 4cf030bfeb..0000000000
--- a/src/parser/ast.rs
+++ /dev/null
@@ -1,16 +0,0 @@
-crate mod expression;
-crate mod expression_builder;
-crate mod module;
-crate mod module_builder;
-crate mod parser_utils;
-
-crate use expression::{
-    Bare, Binary, Block, Call, Expression, Flag, Leaf, Operator, ParameterIdentifier,
-    Parenthesized, Path, Pipeline, RawExpression, Unit, Variable,
-};
-crate use expression_builder::ExpressionBuilder;
-crate use module::{Module};
-crate use module_builder::ModuleBuilder;
-
-#[cfg(test)]
-crate use module::RawItem;
diff --git a/src/parser/ast/expression.rs b/src/parser/ast/expression.rs
deleted file mode 100644
index 1df0e8c3b2..0000000000
--- a/src/parser/ast/expression.rs
+++ /dev/null
@@ -1,540 +0,0 @@
-use crate::parser::lexer::{Span, Spanned};
-use crate::prelude::*;
-use adhoc_derive::FromStr;
-use derive_new::new;
-use getset::Getters;
-use serde_derive::{Deserialize, Serialize};
-use std::io::Write;
-use std::str::FromStr;
-
-#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Deserialize, Serialize)]
-pub enum Operator {
-    Equal,
-    NotEqual,
-    LessThan,
-    GreaterThan,
-    LessThanOrEqual,
-    GreaterThanOrEqual,
-}
-
-impl Operator {
-    pub fn print(&self) -> String {
-        self.as_str().to_string()
-    }
-
-    pub fn as_str(&self) -> &str {
-        match *self {
-            Operator::Equal => "==",
-            Operator::NotEqual => "!=",
-            Operator::LessThan => "<",
-            Operator::GreaterThan => ">",
-            Operator::LessThanOrEqual => "<=",
-            Operator::GreaterThanOrEqual => ">=",
-        }
-    }
-}
-
-impl From<&str> for Operator {
-    fn from(input: &str) -> Operator {
-        Operator::from_str(input).unwrap()
-    }
-}
-
-impl FromStr for Operator {
-    type Err = ();
-    fn from_str(input: &str) -> Result<Self, <Self as std::str::FromStr>::Err> {
-        match input {
-            "==" => Ok(Operator::Equal),
-            "!=" => Ok(Operator::NotEqual),
-            "<" => Ok(Operator::LessThan),
-            ">" => Ok(Operator::GreaterThan),
-            "<=" => Ok(Operator::LessThanOrEqual),
-            ">=" => Ok(Operator::GreaterThanOrEqual),
-            _ => Err(()),
-        }
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq)]
-pub struct Expression {
-    crate expr: RawExpression,
-    crate span: Span,
-}
-
-impl std::ops::Deref for Expression {
-    type Target = RawExpression;
-
-    fn deref(&self) -> &RawExpression {
-        &self.expr
-    }
-}
-
-impl Expression {
-    crate fn print(&self) -> String {
-        self.expr.print()
-    }
-
-    crate fn as_external_arg(&self) -> String {
-        self.expr.as_external_arg()
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq)]
-pub enum RawExpression {
-    Leaf(Leaf),
-    Flag(Flag),
-    Parenthesized(Box<Parenthesized>),
-    Block(Box<Block>),
-    Binary(Box<Binary>),
-    Path(Box<Path>),
-    Call(Box<Call>),
-    VariableReference(Variable),
-}
-
-impl RawExpression {
-    crate fn print(&self) -> String {
-        match self {
-            RawExpression::Call(c) => c.print(),
-            RawExpression::Leaf(l) => l.print(),
-            RawExpression::Flag(f) => f.print(),
-            RawExpression::Parenthesized(p) => p.print(),
-            RawExpression::Block(b) => b.print(),
-            RawExpression::VariableReference(r) => r.print(),
-            RawExpression::Path(p) => p.print(),
-            RawExpression::Binary(b) => b.print(),
-        }
-    }
-
-    crate fn as_external_arg(&self) -> String {
-        match self {
-            RawExpression::Call(c) => c.as_external_arg(),
-            RawExpression::Leaf(l) => l.as_external_arg(),
-            RawExpression::Flag(f) => f.as_external_arg(),
-            RawExpression::Parenthesized(p) => p.as_external_arg(),
-            RawExpression::Block(b) => b.as_external_arg(),
-            RawExpression::VariableReference(r) => r.as_external_arg(),
-            RawExpression::Path(p) => p.as_external_arg(),
-            RawExpression::Binary(b) => b.as_external_arg(),
-        }
-    }
-
-    crate fn as_string(&self) -> Option<String> {
-        match self {
-            RawExpression::Leaf(Leaf::String(s)) => Some(s.to_string()),
-            RawExpression::Leaf(Leaf::Bare(path)) => Some(path.to_string()),
-            _ => None,
-        }
-    }
-
-    #[allow(unused)]
-    crate fn as_bare(&self) -> Option<String> {
-        match self {
-            RawExpression::Leaf(Leaf::Bare(p)) => Some(p.to_string()),
-            _ => None,
-        }
-    }
-
-    #[allow(unused)]
-    crate fn as_block(&self) -> Option<Block> {
-        match self {
-            RawExpression::Block(block) => Some(*block.clone()),
-            _ => None,
-        }
-    }
-
-    crate fn is_flag(&self, value: &str) -> bool {
-        match self {
-            RawExpression::Flag(Flag::Longhand(f)) if value == f => true,
-            _ => false,
-        }
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, new)]
-pub struct Block {
-    crate expr: Expression,
-}
-
-impl Block {
-    crate fn print(&self) -> String {
-        format!("{{ {} }}", self.expr.print())
-    }
-
-    fn as_external_arg(&self) -> String {
-        format!("{{ {} }}", self.expr.as_external_arg())
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, new)]
-pub struct Parenthesized {
-    crate expr: Expression,
-}
-
-impl Parenthesized {
-    fn print(&self) -> String {
-        format!("({})", self.expr.print())
-    }
-
-    fn as_external_arg(&self) -> String {
-        format!("({})", self.expr.as_external_arg())
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, Getters, new)]
-pub struct Path {
-    #[get = "crate"]
-    head: Expression,
-
-    #[get = "crate"]
-    tail: Vec<Spanned<String>>,
-}
-
-impl Path {
-    crate fn print(&self) -> String {
-        let mut out = self.head.print();
-
-        for item in self.tail.iter() {
-            out.push_str(&format!(".{}", item.item));
-        }
-
-        out
-    }
-
-    crate fn as_external_arg(&self) -> String {
-        let mut out = self.head.as_external_arg();
-
-        for item in self.tail.iter() {
-            out.push_str(&format!(".{}", item.item));
-        }
-
-        out
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq)]
-pub enum Variable {
-    It,
-    Other(String),
-}
-
-impl Variable {
-    crate fn from_string(s: &str) -> Variable {
-        match s {
-            "it" => ast::Variable::It,
-            _ => ast::Variable::Other(s.to_string()),
-        }
-    }
-
-    fn print(&self) -> String {
-        match self {
-            Variable::It => format!("$it"),
-            Variable::Other(s) => format!("${}", s),
-        }
-    }
-
-    fn as_external_arg(&self) -> String {
-        self.print()
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, new, Getters)]
-pub struct Bare {
-    #[get = "crate"]
-    body: String,
-}
-
-impl From<String> for Bare {
-    fn from(input: String) -> Bare {
-        Bare { body: input }
-    }
-}
-
-impl From<&str> for Bare {
-    fn from(input: &str) -> Bare {
-        Bare {
-            body: input.to_string(),
-        }
-    }
-}
-
-impl Bare {
-    crate fn from_string(string: impl Into<String>) -> Bare {
-        Bare {
-            body: string.into(),
-        }
-    }
-
-    crate fn to_string(&self) -> String {
-        self.body.to_string()
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, FromStr)]
-pub enum Unit {
-    #[adhoc(regex = "^B$")]
-    B,
-    #[adhoc(regex = "^KB$")]
-    KB,
-    #[adhoc(regex = "^MB$")]
-    MB,
-    #[adhoc(regex = "^GB$")]
-    GB,
-    #[adhoc(regex = "^TB$")]
-    TB,
-    #[adhoc(regex = "^PB$")]
-    PB,
-}
-
-impl From<&str> for Unit {
-    fn from(input: &str) -> Unit {
-        Unit::from_str(input).unwrap()
-    }
-}
-
-impl Unit {
-    crate fn to_string(&self) -> &str {
-        match self {
-            Unit::B => "B",
-            Unit::KB => "KB",
-            Unit::MB => "MB",
-            Unit::GB => "GB",
-            Unit::TB => "TB",
-            Unit::PB => "PB",
-        }
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq)]
-pub enum RawParameterIdentifier {
-    #[allow(unused)]
-    Bare(Spanned<Bare>),
-    Var(Spanned<Variable>),
-    ShorthandFlag(Spanned<String>),
-    LonghandFlag(Spanned<String>),
-}
-
-impl RawParameterIdentifier {
-    #[allow(unused)]
-    pub fn print(&self) -> String {
-        match self {
-            RawParameterIdentifier::Bare(b) => b.to_string(),
-            RawParameterIdentifier::Var(v) => v.print(),
-            RawParameterIdentifier::ShorthandFlag(f) => f.to_string(),
-            RawParameterIdentifier::LonghandFlag(f) => f.to_string(),
-        }
-    }
-}
-
-pub type ParameterIdentifier = Spanned<RawParameterIdentifier>;
-
-impl ParameterIdentifier {
-    #[allow(unused)]
-    pub fn bare(bare: Spanned<Bare>, span: impl Into<Span>) -> ParameterIdentifier {
-        let id = RawParameterIdentifier::Bare(bare);
-        Spanned::from_item(id, span)
-    }
-
-    pub fn var(var: Spanned<Variable>, span: impl Into<Span>) -> ParameterIdentifier {
-        let id = RawParameterIdentifier::Var(var);
-        Spanned::from_item(id, span)
-    }
-
-    pub fn flag(flag: Spanned<String>, span: impl Into<Span>) -> ParameterIdentifier {
-        let id = RawParameterIdentifier::LonghandFlag(flag);
-        Spanned::from_item(id, span)
-    }
-
-    pub fn shorthand(flag: Spanned<String>, span: impl Into<Span>) -> ParameterIdentifier {
-        let id = RawParameterIdentifier::ShorthandFlag(flag);
-        Spanned::from_item(id, span)
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq)]
-pub enum Leaf {
-    String(String),
-    Bare(Bare),
-    Boolean(bool),
-    Int(i64),
-    Unit(i64, Unit),
-}
-
-impl Leaf {
-    fn print(&self) -> String {
-        match self {
-            Leaf::String(s) => format!("{:?}", s),
-            Leaf::Bare(path) => format!("{}", path.to_string()),
-            Leaf::Boolean(b) => format!("{}", b),
-            Leaf::Int(i) => format!("{}", i),
-            Leaf::Unit(i, unit) => format!("{}{:?}", i, unit),
-        }
-    }
-
-    fn as_external_arg(&self) -> String {
-        match self {
-            Leaf::String(s) => {
-                #[cfg(windows)]
-                {
-                    format!("{}", s)
-                }
-                #[cfg(not(windows))]
-                {
-                    format!("\"{}\"", s)
-                }
-            }
-            Leaf::Bare(path) => format!("{}", path.to_string()),
-            Leaf::Boolean(b) => format!("{}", b),
-            Leaf::Int(i) => format!("{}", i),
-            Leaf::Unit(i, unit) => format!("{}{:?}", i, unit),
-        }
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq)]
-pub struct Binary {
-    crate left: Expression,
-    crate operator: Spanned<Operator>,
-    crate right: Expression,
-}
-
-impl Binary {
-    crate fn new(
-        left: impl Into<Expression>,
-        operator: Spanned<Operator>,
-        right: impl Into<Expression>,
-    ) -> Binary {
-        Binary {
-            left: left.into(),
-            operator,
-            right: right.into(),
-        }
-    }
-}
-
-impl Binary {
-    fn print(&self) -> String {
-        format!(
-            "{} {} {}",
-            self.left.print(),
-            self.operator.print(),
-            self.right.print()
-        )
-    }
-
-    fn as_external_arg(&self) -> String {
-        format!(
-            "{} {} {}",
-            self.left.as_external_arg(),
-            self.operator.print(),
-            self.right.as_external_arg()
-        )
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq)]
-pub enum Flag {
-    Shorthand(String),
-    Longhand(String),
-}
-
-impl Flag {
-    #[allow(unused)]
-    crate fn print(&self) -> String {
-        match self {
-            Flag::Shorthand(s) => format!("-{}", s),
-            Flag::Longhand(s) => format!("--{}", s),
-        }
-    }
-
-    #[allow(unused)]
-    crate fn as_external_arg(&self) -> String {
-        self.print()
-    }
-}
-
-#[derive(Debug, Clone, Ord, PartialOrd, Eq, PartialEq, new)]
-pub struct Call {
-    crate name: Expression,
-    crate args: Option<Vec<Expression>>,
-}
-
-impl From<(Expression, Vec<Expression>)> for Call {
-    fn from(input: (Expression, Vec<Expression>)) -> Call {
-        Call {
-            name: input.0,
-            args: if input.1.len() == 0 {
-                None
-            } else {
-                Some(input.1)
-            },
-        }
-    }
-}
-
-impl From<Expression> for Call {
-    fn from(input: Expression) -> Call {
-        Call {
-            name: input,
-            args: None,
-        }
-    }
-}
-
-impl Call {
-    fn as_external_arg(&self) -> String {
-        let mut out = vec![];
-
-        write!(out, "{}", self.name.as_external_arg()).unwrap();
-
-        if let Some(args) = &self.args {
-            for arg in args.iter() {
-                write!(out, " {}", arg.as_external_arg()).unwrap();
-            }
-        }
-
-        String::from_utf8_lossy(&out).into_owned()
-    }
-
-    fn print(&self) -> String {
-        let mut out = vec![];
-
-        write!(out, "{}", self.name.print()).unwrap();
-
-        if let Some(args) = &self.args {
-            for arg in args.iter() {
-                write!(out, " {}", arg.print()).unwrap();
-            }
-        }
-
-        String::from_utf8_lossy(&out).into_owned()
-    }
-}
-
-#[derive(new, Debug, Eq, PartialEq, Clone)]
-pub struct Pipeline {
-    crate commands: Vec<Expression>,
-    crate trailing: Span,
-    crate span: Span,
-}
-
-impl Pipeline {
-    crate fn from_parts(
-        command: Expression,
-        rest: Vec<Expression>,
-        start: usize,
-        end: usize,
-    ) -> Pipeline {
-        let mut commands = vec![command];
-        commands.extend(rest);
-
-        Pipeline {
-            commands,
-            span: Span::from((start, end)),
-        }
-    }
-
-    #[allow(unused)]
-    crate fn print(&self) -> String {
-        itertools::join(self.commands.iter().map(|i| i.print()), " | ")
-    }
-}
diff --git a/src/parser/ast/expression_builder.rs b/src/parser/ast/expression_builder.rs
deleted file mode 100644
index c9145cff7a..0000000000
--- a/src/parser/ast/expression_builder.rs
+++ /dev/null
@@ -1,401 +0,0 @@
-use crate::parser::lexer::{Span, Spanned};
-use derive_new::new;
-
-use crate::parser::ast::{self, Expression, RawExpression};
-
-#[derive(new)]
-pub struct ExpressionBuilder {
-    #[new(default)]
-    pos: usize,
-}
-
-#[allow(unused)]
-impl ExpressionBuilder {
-    pub fn op(&mut self, input: impl Into<ast::Operator>) -> Spanned<ast::Operator> {
-        let input = input.into();
-
-        let (start, end) = self.consume(input.as_str());
-
-        self.pos = end;
-
-        ExpressionBuilder::spanned_op(input, start, end)
-    }
-
-    pub fn spanned_op(
-        input: impl Into<ast::Operator>,
-        start: usize,
-        end: usize,
-    ) -> Spanned<ast::Operator> {
-        Spanned {
-            span: Span::from((start, end)),
-            item: input.into(),
-        }
-    }
-
-    pub fn string(&mut self, input: impl Into<String>) -> Expression {
-        let input = input.into();
-
-        let (start, _) = self.consume("\"");
-        self.consume(&input);
-        let (_, end) = self.consume("\"");
-        self.pos = end;
-
-        ExpressionBuilder::spanned_string(input, start, end)
-    }
-
-    pub fn spanned_string(input: impl Into<String>, start: usize, end: usize) -> Expression {
-        let input = input.into();
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Leaf(ast::Leaf::String(input)),
-        }
-    }
-
-    pub fn bare(&mut self, input: impl Into<ast::Bare>) -> Expression {
-        let input = input.into();
-
-        let (start, end) = self.consume(input.body());
-        self.pos = end;
-
-        ExpressionBuilder::spanned_bare(input, start, end)
-    }
-
-    pub fn spanned_bare(input: impl Into<ast::Bare>, start: usize, end: usize) -> Expression {
-        let input = input.into();
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Leaf(ast::Leaf::Bare(input)),
-        }
-    }
-
-    pub fn boolean(&mut self, input: impl Into<bool>) -> Expression {
-        let boolean = input.into();
-
-        let (start, end) = match boolean {
-            true => self.consume("$yes"),
-            false => self.consume("$no"),
-        };
-
-        self.pos = end;
-
-        ExpressionBuilder::spanned_boolean(boolean, start, end)
-    }
-
-    pub fn spanned_boolean(input: impl Into<bool>, start: usize, end: usize) -> Expression {
-        let input = input.into();
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Leaf(ast::Leaf::Boolean(input)),
-        }
-    }
-
-    pub fn int(&mut self, input: impl Into<i64>) -> Expression {
-        let int = input.into();
-
-        let (start, end) = self.consume(&int.to_string());
-        self.pos = end;
-
-        ExpressionBuilder::spanned_int(int, start, end)
-    }
-
-    pub fn spanned_int(input: impl Into<i64>, start: usize, end: usize) -> Expression {
-        let input = input.into();
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Leaf(ast::Leaf::Int(input)),
-        }
-    }
-
-    pub fn unit(&mut self, input: (impl Into<i64>, impl Into<ast::Unit>)) -> Expression {
-        let (int, unit) = (input.0.into(), input.1.into());
-
-        let (start, _) = self.consume(&int.to_string());
-        let (_, end) = self.consume(&unit.to_string());
-        self.pos = end;
-
-        ExpressionBuilder::spanned_unit((int, unit), start, end)
-    }
-
-    pub fn spanned_unit(
-        input: (impl Into<i64>, impl Into<ast::Unit>),
-        start: usize,
-        end: usize,
-    ) -> Expression {
-        let (int, unit) = (input.0.into(), input.1.into());
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Leaf(ast::Leaf::Unit(int, unit)),
-        }
-    }
-
-    pub fn flag(&mut self, input: impl Into<String>) -> Expression {
-        let input = input.into();
-
-        let (start, _) = self.consume("--");
-        let (_, end) = self.consume(&input);
-        self.pos = end;
-
-        ExpressionBuilder::spanned_flag(input, start, end)
-    }
-
-    pub fn spanned_flag(input: impl Into<String>, start: usize, end: usize) -> Expression {
-        let input = input.into();
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Flag(ast::Flag::Longhand(input)),
-        }
-    }
-
-    pub fn shorthand(&mut self, input: impl Into<String>) -> Expression {
-        let int = input.into();
-
-        let size = int.to_string().len();
-
-        let start = self.pos;
-        let end = self.pos + size + 1;
-        self.pos = end;
-
-        ExpressionBuilder::spanned_shorthand(int, start, end)
-    }
-
-    pub fn spanned_shorthand(input: impl Into<String>, start: usize, end: usize) -> Expression {
-        let input = input.into();
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Flag(ast::Flag::Shorthand(input)),
-        }
-    }
-
-    pub fn parens(
-        &mut self,
-        input: impl FnOnce(&mut ExpressionBuilder) -> Expression,
-    ) -> Expression {
-        let (start, _) = self.consume("(");
-        let input = input(self);
-        let (_, end) = self.consume(")");
-        self.pos = end;
-
-        ExpressionBuilder::spanned_parens(input, start, end)
-    }
-
-    pub fn spanned_parens(input: Expression, start: usize, end: usize) -> Expression {
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Parenthesized(Box::new(ast::Parenthesized::new(input))),
-        }
-    }
-
-    pub fn raw_block(
-        &mut self,
-        input: &dyn Fn(&mut ExpressionBuilder) -> Expression,
-    ) -> Spanned<ast::Block> {
-        let (start, _) = self.consume("{ ");
-        let input = input(self);
-        let (_, end) = self.consume(" }");
-        self.pos = end;
-
-        ExpressionBuilder::spanned_raw_block(input, start, end)
-    }
-
-    pub fn spanned_raw_block(input: Expression, start: usize, end: usize) -> Spanned<ast::Block> {
-        Spanned::from_item(ast::Block::new(input), (start, end))
-    }
-
-    pub fn block(&mut self, input: &dyn Fn(&mut ExpressionBuilder) -> Expression) -> Expression {
-        let (start, _) = self.consume("{ ");
-        let input = input(self);
-        let (_, end) = self.consume(" }");
-        self.pos = end;
-
-        ExpressionBuilder::spanned_block(input, start, end)
-    }
-
-    pub fn spanned_block(input: Expression, start: usize, end: usize) -> Expression {
-        let block = ast::Block::new(input);
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Block(Box::new(block)),
-        }
-    }
-
-    pub fn binary(
-        &mut self,
-        input: (
-            &dyn Fn(&mut ExpressionBuilder) -> Expression,
-            &dyn Fn(&mut ExpressionBuilder) -> Spanned<ast::Operator>,
-            &dyn Fn(&mut ExpressionBuilder) -> Expression,
-        ),
-    ) -> Expression {
-        let start = self.pos;
-
-        let left = (input.0)(self);
-        self.consume(" ");
-        let operator = (input.1)(self);
-        self.consume(" ");
-        let right = (input.2)(self);
-
-        let end = self.pos;
-
-        ExpressionBuilder::spanned_binary((left, operator, right), start, end)
-    }
-
-    pub fn spanned_binary(
-        input: (
-            impl Into<Expression>,
-            impl Into<Spanned<ast::Operator>>,
-            impl Into<Expression>,
-        ),
-        start: usize,
-        end: usize,
-    ) -> Expression {
-        let binary = ast::Binary::new(input.0, input.1.into(), input.2);
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Binary(Box::new(binary)),
-        }
-    }
-
-    pub fn path(
-        &mut self,
-        input: (
-            &dyn Fn(&mut ExpressionBuilder) -> Expression,
-            Vec<impl Into<String>>,
-        ),
-    ) -> Expression {
-        let start = self.pos;
-
-        let head = (input.0)(self);
-
-        let mut tail = vec![];
-
-        for item in input.1 {
-            self.consume(".");
-            let item = item.into();
-            let (start, end) = self.consume(&item);
-            tail.push(Spanned::new(Span::from((start, end)), item));
-        }
-
-        let end = self.pos;
-
-        ExpressionBuilder::spanned_path((head, tail), start, end)
-    }
-
-    pub fn spanned_path(
-        input: (impl Into<Expression>, Vec<Spanned<String>>),
-        start: usize,
-        end: usize,
-    ) -> Expression {
-        let path = ast::Path::new(input.0.into(), input.1);
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Path(Box::new(path)),
-        }
-    }
-
-    pub fn call(
-        &mut self,
-        input: (
-            &(dyn Fn(&mut ExpressionBuilder) -> Expression),
-            Vec<&dyn Fn(&mut ExpressionBuilder) -> Expression>,
-        ),
-    ) -> Expression {
-        let start = self.pos;
-
-        let name = (&input.0)(self);
-
-        let mut args = vec![];
-
-        for item in input.1 {
-            self.consume(" ");
-            args.push(item(self));
-        }
-
-        let end = self.pos;
-
-        ExpressionBuilder::spanned_call((name, args), start, end)
-    }
-
-    pub fn spanned_call(input: impl Into<ast::Call>, start: usize, end: usize) -> Expression {
-        let call = input.into();
-
-        Expression {
-            span: Span::from((start, end)),
-            expr: RawExpression::Call(Box::new(call)),
-        }
-    }
-
-    pub fn var(&mut self, input: impl Into<String>) -> Expression {
-        let input = input.into();
-        let (start, _) = self.consume("$");
-        let (_, end) = self.consume(&input);
-
-        ExpressionBuilder::spanned_var(input, start, end)
-    }
-
-    pub fn spanned_var(input: impl Into<String>, start: usize, end: usize) -> Expression {
-        let input = input.into();
-
-        let expr = match &input[..] {
-            "it" => RawExpression::VariableReference(ast::Variable::It),
-            _ => RawExpression::VariableReference(ast::Variable::Other(input)),
-        };
-
-        Expression {
-            span: Span::from((start, end)),
-            expr,
-        }
-    }
-
-    pub fn pipeline(
-        &mut self,
-        input: Vec<&dyn Fn(&mut ExpressionBuilder) -> Expression>,
-    ) -> ast::Pipeline {
-        let start = self.pos;
-
-        let mut exprs = vec![];
-        let mut input = input.into_iter();
-
-        let next = input.next().unwrap();
-        exprs.push(next(self));
-
-        for item in input {
-            self.consume(" | ");
-            exprs.push(item(self));
-        }
-
-        let end = self.pos;
-
-        ExpressionBuilder::spanned_pipeline(exprs, start, end)
-    }
-
-    pub fn spanned_pipeline(input: Vec<Expression>, start: usize, end: usize) -> ast::Pipeline {
-        ast::Pipeline {
-            span: Span::from((start, end)),
-            commands: input,
-        }
-    }
-
-    pub fn sp(&mut self) {
-        self.consume(" ");
-    }
-
-    pub fn ws(&mut self, input: &str) {
-        self.consume(input);
-    }
-
-    fn consume(&mut self, input: &str) -> (usize, usize) {
-        let start = self.pos;
-        self.pos += input.len();
-        (start, self.pos)
-    }
-}
diff --git a/src/parser/ast/module.rs b/src/parser/ast/module.rs
deleted file mode 100644
index fb88f2dc51..0000000000
--- a/src/parser/ast/module.rs
+++ /dev/null
@@ -1,119 +0,0 @@
-use crate::parser::ast;
-use crate::parser::lexer::{Span, Spanned};
-use derive_new::new;
-
-#[derive(new, Eq, PartialEq, Clone, Debug)]
-pub struct Module {
-    span: Span,
-    items: Vec<Item>,
-}
-
-impl Module {
-    #[allow(unused)]
-    crate fn print(&self) -> String {
-        let mut iter = self.items.iter();
-
-        let first = iter.next().unwrap();
-        let mut out = first.print();
-
-        for item in iter {
-            out.push_str(&format!("\n{}", item.print()));
-        }
-
-        out
-    }
-}
-
-#[derive(Eq, PartialEq, Clone, Debug)]
-pub enum RawItem {
-    Expression(ast::Pipeline),
-
-    #[allow(unused)]
-    Function(Function),
-}
-
-impl RawItem {
-    fn print(&self) -> String {
-        match self {
-            RawItem::Expression(p) => p.print(),
-            RawItem::Function(f) => f.print(),
-        }
-    }
-}
-
-pub type Item = Spanned<RawItem>;
-
-#[derive(Eq, PartialEq, Clone, Debug)]
-pub enum Type {
-    Any,
-    Int,
-    Decimal,
-    Bytes,
-    Text,
-    Boolean,
-    Date,
-    Object,
-    List,
-    Block,
-    // Object(IndexMap<Spanned<String>, Spanned<Type>>),
-    // List(Box<Spanned<Type>>),
-    // Block {
-    //     arguments: Spanned<Vec<Spanned<Type>>>,
-    //     return_type: Box<Spanned<Type>>,
-    // },
-}
-
-impl Type {
-    #[allow(unused)]
-    crate fn print(&self) -> String {
-        use Type::*;
-
-        match self {
-            Any => "any",
-            Int => "int",
-            Decimal => "decimal",
-            Bytes => "bytes",
-            Text => "text",
-            Boolean => "boolean",
-            Date => "date",
-            Object => "object",
-            List => "list",
-            Block => "block",
-        }
-        .to_string()
-    }
-}
-
-#[derive(Eq, PartialEq, Clone, Debug, new)]
-pub struct FormalParameter {
-    name: ast::ParameterIdentifier,
-    ty: Spanned<Type>,
-    span: Span,
-}
-
-#[derive(Eq, PartialEq, Clone, Debug, new)]
-pub struct Function {
-    name: Spanned<ast::Bare>,
-    params: Vec<FormalParameter>,
-    return_type: Option<Box<Spanned<Type>>>,
-    body: Spanned<ast::Block>,
-}
-
-impl Function {
-    crate fn print(&self) -> String {
-        use pretty::{BoxDoc, Doc};
-
-        let doc: Doc<BoxDoc<()>> = Doc::text("function")
-            .append(Doc::space())
-            .append(Doc::text(self.name.item.to_string()))
-            // todo: signature
-            .append(Doc::space())
-            .append(Doc::text("{"))
-            .append(Doc::newline())
-            .append(Doc::text(self.body.print()).nest(1))
-            .append(Doc::newline())
-            .append(Doc::text("}"));
-
-        format!("{}", doc.pretty(80))
-    }
-}
diff --git a/src/parser/ast/module_builder.rs b/src/parser/ast/module_builder.rs
deleted file mode 100644
index 52c025fc11..0000000000
--- a/src/parser/ast/module_builder.rs
+++ /dev/null
@@ -1,77 +0,0 @@
-use crate::parser::ast::module::{Item, Module};
-use crate::parser::ast::{self, module};
-use crate::parser::lexer::{Span, Spanned};
-use derive_new::new;
-
-#[derive(new)]
-pub struct ModuleBuilder {
-    #[new(default)]
-    pos: usize,
-}
-
-#[allow(unused)]
-impl ModuleBuilder {
-    // crate fn function(&mut self, input: ) -> Function {}
-
-    crate fn spanned_function(
-        input: (
-            Spanned<ast::Bare>,
-            Vec<module::FormalParameter>,
-            Option<Spanned<module::Type>>,
-            Spanned<ast::Block>,
-        ),
-        start: usize,
-        end: usize,
-    ) -> module::Function {
-        module::Function::new(input.0, input.1, input.2.map(Box::new), input.3)
-    }
-
-    crate fn spanned_formal_parameter(
-        input: (ast::ParameterIdentifier, Spanned<module::Type>),
-        start: usize,
-        end: usize,
-    ) -> module::FormalParameter {
-        module::FormalParameter::new(input.0, input.1, Span::from((start, end)))
-    }
-
-    crate fn items(&mut self, input: Vec<&dyn Fn(&mut ModuleBuilder) -> Item>) -> Module {
-        let start = self.pos;
-
-        let mut items = vec![];
-        let mut input = input.into_iter();
-
-        let next = input.next().unwrap();
-        items.push(next(self));
-
-        for item in input {
-            self.consume(" | ");
-            items.push(item(self));
-        }
-
-        let end = self.pos;
-
-        ModuleBuilder::spanned_items(items, start, end)
-    }
-
-    pub fn spanned_items(input: Vec<Item>, start: usize, end: usize) -> ast::Module {
-        ast::Module::new(Span::from((start, end)), input)
-    }
-
-    pub fn sp(&mut self) {
-        self.consume(" ");
-    }
-
-    pub fn ws(&mut self, input: &str) {
-        self.consume(input);
-    }
-
-    pub fn newline(&mut self) {
-        self.consume("\n");
-    }
-
-    fn consume(&mut self, input: &str) -> (usize, usize) {
-        let start = self.pos;
-        self.pos += input.len();
-        (start, self.pos)
-    }
-}
diff --git a/src/parser/ast/parser_utils.rs b/src/parser/ast/parser_utils.rs
deleted file mode 100644
index d154f3611e..0000000000
--- a/src/parser/ast/parser_utils.rs
+++ /dev/null
@@ -1,5 +0,0 @@
-crate fn concat<T>(item: T, rest: Vec<T>) -> Vec<T> {
-    let mut out = vec![item];
-    out.extend(rest);
-    out
-}
diff --git a/src/parser/completer.rs b/src/parser/completer.rs
deleted file mode 100644
index a22ac3abaf..0000000000
--- a/src/parser/completer.rs
+++ /dev/null
@@ -1,34 +0,0 @@
-use crate::prelude::*;
-use rustyline::{completion, Context};
-use std::collections::BTreeMap;
-
-#[allow(unused)]
-crate struct Completer {
-    commands: BTreeMap<String, Box<dyn Command>>,
-}
-
-impl completion::Completer for Completer {
-    type Candidate = completion::Pair;
-
-    fn complete(
-        &self,
-        _line: &str,
-        _pos: usize,
-        _ctx: &Context<'_>,
-    ) -> rustyline::Result<(usize, Vec<completion::Pair>)> {
-        let pairs: Vec<completion::Pair> = self
-            .commands
-            .keys()
-            .map(|k| completion::Pair {
-                display: k.clone(),
-                replacement: k.clone(),
-            })
-            .collect();
-        Ok((0, pairs))
-    }
-
-    fn update(&self, line: &mut rustyline::line_buffer::LineBuffer, start: usize, elected: &str) {
-        let end = line.pos();
-        line.replace(start..end, elected)
-    }
-}
diff --git a/src/parser/lexer.rs b/src/parser/lexer.rs
deleted file mode 100644
index 76fb7ae0ca..0000000000
--- a/src/parser/lexer.rs
+++ /dev/null
@@ -1,1242 +0,0 @@
-use crate::errors::ShellError;
-use derive_new::new;
-use log::trace;
-use logos_derive::Logos;
-use std::collections::VecDeque;
-use std::ops::Range;
-
-#[derive(Debug, Clone, Copy, Eq, PartialEq, Logos)]
-#[extras = "LexerState"]
-crate enum TopToken {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[token = "function"]
-    #[callback = "after_function"]
-    Function,
-
-    #[regex = "-?[0-9]+"]
-    #[callback = "after_num"]
-    Num,
-
-    #[regex = r#"'([^']|\\')*'"#]
-    SQString,
-
-    #[regex = r#""([^"]|\\")*""#]
-    DQString,
-
-    #[token = "$"]
-    #[callback = "start_variable"]
-    Dollar,
-
-    #[regex = r#"[^\s0-9"'$\-(){}][^\s"'(){}]*"#]
-    #[callback = "end_bare_variable"]
-    Bare,
-
-    #[token = "|"]
-    Pipe,
-
-    #[token = "."]
-    Dot,
-
-    #[token = "{"]
-    OpenBrace,
-
-    #[token = "}"]
-    CloseBrace,
-
-    #[token = "("]
-    OpenParen,
-
-    #[token = ")"]
-    CloseParen,
-
-    #[token = ">"]
-    OpGt,
-
-    #[token = "<"]
-    OpLt,
-
-    #[token = ">="]
-    OpGte,
-
-    #[token = "<="]
-    OpLte,
-
-    #[token = "=="]
-    OpEq,
-
-    #[token = "!="]
-    OpNeq,
-
-    #[token = "--"]
-    DashDash,
-
-    #[token = "-"]
-    Dash,
-
-    #[regex = r"[^\S\r\n]"]
-    Whitespace,
-
-    #[regex = r"(\r\n|\n)"]
-    Newline,
-}
-
-impl TopToken {
-    fn to_token(&self, _text: &str) -> Option<Token> {
-        use TopToken::*;
-
-        let result = match self {
-            END => return None,
-            Function => Token::KeywordFunction,
-            Newline => Token::Newline,
-            Num => Token::Num,
-            SQString => Token::SQString,
-            DQString => Token::DQString,
-            Dollar => Token::Dollar,
-            Bare => Token::Bare,
-            Pipe => Token::Pipe,
-            Dot => Token::Bare,
-            OpenBrace => Token::OpenBrace,
-            CloseBrace => Token::CloseBrace,
-            OpenParen => Token::OpenParen,
-            CloseParen => Token::CloseParen,
-            OpGt => Token::OpGt,
-            OpLt => Token::OpLt,
-            OpGte => Token::OpGte,
-            OpLte => Token::OpLte,
-            OpEq => Token::OpEq,
-            OpNeq => Token::OpNeq,
-            DashDash => Token::DashDash,
-            Dash => Token::Dash,
-            Whitespace => Token::Whitespace,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn after_num<S>(lex: &mut logos::Lexer<TopToken, S>) {
-    trace!("after_num EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::AfterNum);
-}
-
-fn after_function<S>(lex: &mut logos::Lexer<TopToken, S>) {
-    trace!("after_function EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::AfterFunction);
-}
-
-fn start_variable<S>(lex: &mut logos::Lexer<TopToken, S>) {
-    trace!("start_variable EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::VariableToken);
-}
-
-fn end_bare_variable<S>(lex: &mut logos::Lexer<TopToken, S>) {
-    trace!("end_bare_variable EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::AfterVariableToken);
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum AfterFunction {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[regex = r"[A-Za-z][A-Za-z0-9_\-]*"]
-    #[callback = "after_function_name"]
-    CommandName,
-
-    #[token = "{"]
-    #[callback = "start_function_block"]
-    OpenBrace,
-
-    #[regex = r"[^\S\r\n]"]
-    Whitespace,
-}
-
-impl AfterFunction {
-    fn to_token(&self) -> Option<Token> {
-        use AfterFunction::*;
-
-        let result = match self {
-            END => return None,
-            CommandName => Token::CommandName,
-            Whitespace => Token::Whitespace,
-            OpenBrace => Token::OpenBrace,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn after_function_name<S>(lex: &mut logos::Lexer<AfterFunction, S>) {
-    trace!("after_function_name EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::AfterFunctionName);
-}
-
-fn start_function_block<S>(lex: &mut logos::Lexer<AfterFunction, S>) {
-    trace!("start_function_block EXTRAS={:?}", lex.extras);
-    lex.extras.pop();
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum AfterFunctionName {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[token = "("]
-    #[callback = "start_param_list"]
-    StartParamList,
-
-    #[regex = r"[^\S\r\n]"]
-    Whitespace,
-}
-
-impl AfterFunctionName {
-    fn to_token(&self) -> Option<Token> {
-        use AfterFunctionName::*;
-
-        let result = match self {
-            END => return None,
-            StartParamList => Token::StartParamList,
-            Whitespace => Token::Whitespace,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn start_param_list<S>(lex: &mut logos::Lexer<AfterFunctionName, S>) {
-    trace!("start_param_list EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::InParamList);
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum InParamList {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[token = "$"]
-    #[callback = "start_param_name"]
-    Dollar,
-
-    #[regex = r"[^\S\r\n]"]
-    Whitespace,
-}
-
-impl InParamList {
-    fn to_token(&self) -> Option<Token> {
-        use InParamList::*;
-
-        let result = match self {
-            END => return None,
-            Dollar => Token::Dollar,
-            Whitespace => Token::Whitespace,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn start_param_name<S>(lex: &mut logos::Lexer<InParamList, S>) {
-    trace!("start_param_name EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::VariableToken);
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum TypeTokens {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[regex = "(any|int|decimal|bytes|text|boolean|date|object|list|block)"]
-    #[callback = "end_type_token"]
-    TypeName,
-}
-
-fn end_type_token<S>(lex: &mut logos::Lexer<TypeTokens, S>) {
-    trace!("end_type_token EXTRAS={:?}", lex.extras);
-    lex.extras.pop();
-}
-
-impl TypeTokens {
-    fn to_token(&self, text: &str) -> Option<Token> {
-        use TypeTokens::*;
-
-        let result = match self {
-            END => return None,
-            TypeName => match text {
-                "any" => Token::TyAny,
-                "int" => Token::TyInt,
-                "decimal" => Token::TyDecimal,
-                "bytes" => Token::TyBytes,
-                "text" => Token::TyText,
-                "boolean" => Token::TyBoolean,
-                "date" => Token::TyDate,
-                "object" => Token::TyObject,
-                "list" => Token::TyList,
-                other => unreachable!("Type name {:?} shouldn't be possible", other),
-            },
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum AfterNum {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[regex = "(B|KB|MB|GB|TB|PB)"]
-    #[callback = "end_unit"]
-    Unit,
-
-    #[regex = r"[^\S\r\n]"]
-    #[callback = "end_number"]
-    Whitespace,
-
-    #[regex = r"(\r\n|\n)"]
-    Newline,
-}
-
-impl AfterNum {
-    fn to_token(&self) -> Option<Token> {
-        use AfterNum::*;
-
-        let result = match self {
-            END => return None,
-            Unit => Token::Unit,
-            Whitespace => Token::Whitespace,
-            Newline => Token::Newline,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn end_unit<S>(lex: &mut logos::Lexer<AfterNum, S>) {
-    trace!("end_unit EXTRAS={:?}", lex.extras);
-    lex.extras.pop();
-}
-
-fn end_number<S>(lex: &mut logos::Lexer<AfterNum, S>) {
-    trace!("end_number EXTRAS={:?}", lex.extras);
-    lex.extras.pop();
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum VariableToken {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[regex = r"[A-Za-z][A-Za-z0-9\-?!]*"]
-    #[callback = "end_variable"]
-    Variable,
-}
-
-impl VariableToken {
-    fn to_token(&self, _text: &str) -> Option<Token> {
-        use VariableToken::*;
-
-        let result = match self {
-            END => return None,
-            Variable => Token::Variable,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn end_variable<S>(lex: &mut logos::Lexer<VariableToken, S>) {
-    trace!("end_variable EXTRAS={:?}", lex.extras);
-    lex.extras.replace(LexerStateName::AfterVariableToken);
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum AfterVariableToken {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[token = "."]
-    #[callback = "start_member"]
-    Dot,
-
-    #[token = ":"]
-    #[callback = "start_type"]
-    Colon,
-
-    #[regex = r"[^\S\r\n]"]
-    #[callback = "terminate_variable"]
-    Whitespace,
-
-    #[token = ")"]
-    #[callback = "end_param_list"]
-    EndParamList,
-
-    #[regex = r"(\r\n|\n)"]
-    Newline,
-}
-
-impl AfterVariableToken {
-    fn to_token(&self) -> Option<Token> {
-        use AfterVariableToken::*;
-
-        let result = match self {
-            END => return None,
-            Dot => Token::PathDot,
-            Colon => Token::Colon,
-            Whitespace => Token::Whitespace,
-            Newline => Token::Newline,
-            EndParamList => Token::EndParamList,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn start_member<S>(lex: &mut logos::Lexer<AfterVariableToken, S>) {
-    trace!("start_member EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::AfterMemberDot);
-}
-
-fn end_param_list<S>(lex: &mut logos::Lexer<AfterVariableToken, S>) {
-    trace!("end_param_list EXTRAS={:?}", lex.extras);
-    lex.extras.pop();
-    lex.extras.pop();
-    lex.extras.pop();
-    lex.extras.push(LexerStateName::AfterParamList);
-}
-
-fn start_type<S>(lex: &mut logos::Lexer<AfterVariableToken, S>) {
-    trace!("start_type EXTRAS={:?}", lex.extras);
-    lex.extras.push(LexerStateName::TypeTokens);
-}
-
-fn terminate_variable<S>(lex: &mut logos::Lexer<AfterVariableToken, S>) {
-    trace!("terminate_variable EXTRAS={:?}", lex.extras);
-    lex.extras.pop();
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum AfterMemberDot {
-    #[error]
-    Error,
-
-    #[end]
-    END,
-
-    #[regex = r"[A-Za-z][A-Za-z0-9\-?!]*"]
-    #[callback = "finish_member"]
-    Member,
-
-    #[regex = r#"'([^']|\\')*'"#]
-    SQString,
-
-    #[regex = r#""([^"]|\\")*""#]
-    DQString,
-
-    #[regex = r"[^\S\r\n]"]
-    Whitespace,
-
-    #[regex = r"(\r\n|\n)"]
-    Newline,
-}
-
-impl AfterMemberDot {
-    fn to_token(&self) -> Option<Token> {
-        use AfterMemberDot::*;
-
-        let result = match self {
-            END => return None,
-            Member => Token::Member,
-            SQString => Token::SQMember,
-            DQString => Token::DQMember,
-
-            Whitespace => Token::Whitespace,
-            Newline => Token::Newline,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn finish_member<S>(lex: &mut logos::Lexer<AfterMemberDot, S>) {
-    trace!("finish_member EXTRAS={:?}", lex.extras);
-    lex.extras.pop();
-}
-
-#[derive(Logos, Debug, Clone, Copy, Eq, PartialEq)]
-#[extras = "LexerState"]
-crate enum AfterParamList {
-    #[error]
-    Error,
-
-    #[token = "->"]
-    #[callback = "finish_arrow"]
-    Arrow,
-
-    #[end]
-    END,
-}
-
-impl AfterParamList {
-    fn to_token(&self, _text: &str) -> Option<Token> {
-        use AfterParamList::*;
-
-        let result = match self {
-            END => return None,
-            Arrow => Token::ReturnArrow,
-            Error => unreachable!("Don't call to_token with the error variant"),
-        };
-
-        Some(result)
-    }
-}
-
-fn finish_arrow<S>(lex: &mut logos::Lexer<AfterParamList, S>) {
-    trace!("finish_arrow EXTRAS={:?}", lex.extras);
-    lex.extras.replace(LexerStateName::TypeTokens);
-}
-
-#[derive(Debug, Clone, Copy)]
-crate enum LexerStateName {
-    Top,
-    VariableToken,
-    AfterFunction,
-    AfterFunctionName,
-    TypeTokens,
-    InParamList,
-    AfterParamList,
-    AfterMemberDot,
-    AfterNum,
-    AfterVariableToken,
-}
-
-impl Default for LexerStateName {
-    fn default() -> LexerStateName {
-        LexerStateName::Top
-    }
-}
-
-#[derive(Debug, Clone)]
-crate struct LexerState {
-    stack: VecDeque<LexerStateName>,
-}
-
-impl Default for LexerState {
-    fn default() -> LexerState {
-        let mut stack = VecDeque::new();
-        stack.push_back(LexerStateName::Top);
-        LexerState { stack }
-    }
-}
-
-impl LexerState {
-    crate fn debug_states(&self) -> String {
-        let items: Vec<String> = self.stack.iter().map(|s| format!("{:?}", s)).collect();
-        let debug = itertools::join(items, " -> ");
-        format!("{}", debug)
-    }
-
-    crate fn push(&mut self, name: LexerStateName) {
-        self.stack.push_back(name);
-        trace!("push {:?} (to {})", name, self.debug_states());
-    }
-
-    crate fn replace(&mut self, name: LexerStateName) {
-        self.stack.pop_back();
-        self.stack.push_back(name);
-        trace!("replace with {:?} (to {})", name, self.debug_states());
-    }
-
-    crate fn pop(&mut self) {
-        self.stack.pop_back();
-        trace!("pop (to {})", self.debug_states());
-    }
-
-    crate fn current(&self) -> LexerStateName {
-        *self
-            .stack
-            .back()
-            .expect("There must always be at least one state in the lexer stack")
-    }
-}
-
-impl logos::Extras for LexerState {
-    fn on_advance(&mut self) {}
-    fn on_whitespace(&mut self, _byte: u8) {}
-}
-
-#[derive(Debug, Clone, Copy, PartialEq, Eq, Ord, PartialOrd, Hash)]
-pub struct Span {
-    crate start: usize,
-    crate end: usize,
-    // source: &'source str,
-}
-
-impl From<(usize, usize)> for Span {
-    fn from(input: (usize, usize)) -> Span {
-        Span {
-            start: input.0,
-            end: input.1,
-        }
-    }
-}
-
-impl From<&std::ops::Range<usize>> for Span {
-    fn from(input: &std::ops::Range<usize>) -> Span {
-        Span {
-            start: input.start,
-            end: input.end,
-        }
-    }
-}
-
-impl Span {
-    fn new(range: &Range<usize>) -> Span {
-        Span {
-            start: range.start,
-            end: range.end,
-            // source,
-        }
-    }
-}
-
-impl language_reporting::ReportingSpan for Span {
-    fn with_start(&self, start: usize) -> Self {
-        Span {
-            start,
-            end: self.end,
-        }
-    }
-
-    fn with_end(&self, end: usize) -> Self {
-        Span {
-            start: self.start,
-            end,
-        }
-    }
-
-    fn start(&self) -> usize {
-        self.start
-    }
-
-    fn end(&self) -> usize {
-        self.end
-    }
-}
-
-#[derive(new, Debug, Clone, Eq, PartialEq, Ord, PartialOrd, Hash)]
-pub struct Spanned<T> {
-    crate span: Span,
-    crate item: T,
-}
-
-impl<T> std::ops::Deref for Spanned<T> {
-    type Target = T;
-
-    fn deref(&self) -> &T {
-        &self.item
-    }
-}
-
-impl<T> Spanned<T> {
-    crate fn from_item(item: T, span: impl Into<Span>) -> Spanned<T> {
-        Spanned {
-            span: span.into(),
-            item,
-        }
-    }
-
-    crate fn map<U>(self, input: impl FnOnce(T) -> U) -> Spanned<U> {
-        let Spanned { span, item } = self;
-
-        let mapped = input(item);
-        Spanned { span, item: mapped }
-    }
-}
-
-#[derive(new, Debug, Clone, Eq, PartialEq)]
-pub struct SpannedToken<'source> {
-    crate span: Span,
-    crate slice: &'source str,
-    crate token: Token,
-}
-
-impl SpannedToken<'source> {
-    crate fn to_spanned_string(&self) -> Spanned<String> {
-        Spanned::from_item(self.slice.to_string(), self.span)
-    }
-
-    crate fn as_slice(&self) -> &str {
-        self.slice
-    }
-}
-
-#[derive(Debug, Clone, Eq, PartialEq)]
-pub enum Token {
-    KeywordFunction,
-    CommandName,
-    #[allow(unused)]
-    Comma,
-    Colon,
-    Variable,
-    PathDot,
-    ReturnArrow,
-    Member,
-    SQMember,
-    DQMember,
-    Num,
-    SQString,
-    DQString,
-    Unit,
-    Dollar,
-    Bare,
-    Pipe,
-    OpenBrace,
-    CloseBrace,
-    OpenParen,
-    CloseParen,
-    StartParamList,
-    EndParamList,
-    OpGt,
-    OpLt,
-    OpGte,
-    OpLte,
-    OpEq,
-    OpNeq,
-    Dash,
-    DashDash,
-    TyAny,
-    #[allow(unused)]
-    TyBlock,
-    TyBoolean,
-    TyBytes,
-    TyDate,
-    TyDecimal,
-    TyInt,
-    TyList,
-    TyObject,
-    TyText,
-    Whitespace,
-    Newline,
-}
-
-#[derive(Clone)]
-crate struct Lexer<'source> {
-    lexer: logos::Lexer<TopToken, &'source str>,
-    first: bool,
-    whitespace: bool,
-}
-
-impl Lexer<'source> {
-    crate fn new(source: &str, whitespace: bool) -> Lexer<'_> {
-        Lexer {
-            first: true,
-            lexer: logos::Logos::lexer(source),
-            whitespace,
-        }
-    }
-
-    fn lex_error(&self, range: &Range<usize>) -> ShellError {
-        use language_reporting::*;
-
-        let states = self.lexer.extras.debug_states();
-
-        ShellError::diagnostic(
-            Diagnostic::new(Severity::Error, "Lex error")
-                .with_label(Label::new_primary(Span::new(range)).with_message(states)),
-        )
-    }
-}
-
-impl Iterator for Lexer<'source> {
-    type Item = Result<(usize, SpannedToken<'source>, usize), ShellError>;
-
-    fn next(&mut self) -> Option<Self::Item> {
-        let result = if self.first {
-            self.first = false;
-
-            match self.lexer.token {
-                TopToken::Error => Some(Err(self.lex_error(&self.lexer.range()))),
-                TopToken::Whitespace if !self.whitespace => self.next(),
-                other => spanned(
-                    other.to_token(self.lexer.slice())?,
-                    self.lexer.slice(),
-                    &self.lexer.range(),
-                ),
-            }
-        } else {
-            trace!("STATE={:?}", self.lexer.extras);
-
-            match self.lexer.extras.current() {
-                LexerStateName::Top => {
-                    let (lexer, range, slice, token) = advance::<TopToken>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        TopToken::Error => Some(Err(self.lex_error(&range))),
-                        TopToken::Whitespace if !self.whitespace => self.next(),
-                        other => spanned(other.to_token(slice)?, slice, &range),
-                    }
-                }
-
-                LexerStateName::AfterParamList => {
-                    let (lexer, range, slice, token) =
-                        advance::<AfterParamList>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        AfterParamList::Error => Some(Err(self.lex_error(&range))),
-                        other => spanned(other.to_token(slice)?, slice, &range),
-                    }
-                }
-
-                LexerStateName::TypeTokens => {
-                    let (lexer, range, slice, token) = advance::<TypeTokens>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        TypeTokens::Error => Some(Err(self.lex_error(&range))),
-                        other => spanned(other.to_token(slice)?, slice, &range),
-                    }
-                }
-
-                LexerStateName::AfterNum => {
-                    let (lexer, range, slice, token) = advance::<AfterNum>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        AfterNum::Error => Some(Err(self.lex_error(&range))),
-                        AfterNum::Whitespace if !self.whitespace => self.next(),
-                        other => spanned(other.to_token()?, slice, &range),
-                    }
-                }
-
-                LexerStateName::AfterFunction => {
-                    let (lexer, range, slice, token) = advance::<AfterFunction>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        AfterFunction::Error => Some(Err(self.lex_error(&range))),
-                        AfterFunction::Whitespace if !self.whitespace => self.next(),
-                        other => spanned(other.to_token()?, slice, &range),
-                    }
-                }
-
-                LexerStateName::AfterFunctionName => {
-                    let (lexer, range, slice, token) =
-                        advance::<AfterFunctionName>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        AfterFunctionName::Error => Some(Err(self.lex_error(&range))),
-                        AfterFunctionName::Whitespace if !self.whitespace => self.next(),
-                        other => spanned(other.to_token()?, slice, &range),
-                    }
-                }
-
-                LexerStateName::InParamList => {
-                    let (lexer, range, slice, token) = advance::<InParamList>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        InParamList::Error => Some(Err(self.lex_error(&range))),
-                        InParamList::Whitespace if !self.whitespace => self.next(),
-                        other => return spanned(other.to_token()?, slice, &range),
-                    }
-                }
-
-                LexerStateName::AfterMemberDot => {
-                    let (lexer, range, slice, token) =
-                        advance::<AfterMemberDot>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        AfterMemberDot::Error => return Some(Err(self.lex_error(&range))),
-                        AfterMemberDot::Whitespace if !self.whitespace => self.next(),
-                        other => spanned(other.to_token()?, slice, &range),
-                    }
-                }
-
-                LexerStateName::AfterVariableToken => {
-                    let (lexer, range, slice, token) =
-                        advance::<AfterVariableToken>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        AfterVariableToken::Error => Some(Err(self.lex_error(&range))),
-                        AfterVariableToken::Whitespace if !self.whitespace => self.next(),
-                        other => spanned(other.to_token()?, slice, &range),
-                    }
-                }
-
-                LexerStateName::VariableToken => {
-                    let (lexer, range, slice, token) = advance::<VariableToken>(self.lexer.clone());
-                    self.lexer = lexer;
-
-                    match token {
-                        VariableToken::Error => Some(Err(self.lex_error(&range))),
-                        other => spanned(other.to_token(slice)?, slice, &range),
-                    }
-                }
-            }
-        };
-
-        trace!("emitting {:?}", result);
-
-        result
-    }
-}
-
-fn spanned<'source>(
-    token: Token,
-    slice: &'source str,
-    range: &Range<usize>,
-) -> Option<Result<(usize, SpannedToken<'source>, usize), ShellError>> {
-    let token = SpannedToken::new(Span::new(range), slice, token);
-    Some(Ok((range.start, token, range.end)))
-}
-
-fn advance<T>(
-    lexer: logos::Lexer<TopToken, &'source str>,
-) -> (
-    logos::Lexer<TopToken, &'source str>,
-    Range<usize>,
-    &'source str,
-    T,
-)
-where
-    T: logos::Logos<Extras = LexerState> + logos::source::WithSource<&'source str> + Copy,
-{
-    let lexer = lexer.advance_as::<T>();
-    let token = &lexer.token;
-    let range = lexer.range();
-    let slice = lexer.slice();
-    (lexer.clone().morph::<TopToken>(), range, slice, *token)
-}
-
-#[cfg(test)]
-mod tests {
-    use super::*;
-    use pretty_assertions::assert_eq;
-
-    fn assert_lex(source: &str, tokens: &[TestToken<'_>]) {
-        let _ = pretty_env_logger::try_init();
-
-        let lex = Lexer::new(source, false);
-        let mut current = 0;
-
-        let expected_tokens: Vec<SpannedToken> = tokens
-            .iter()
-            .filter_map(|token_desc| {
-                trace!("{:?}", token_desc);
-
-                let len = token_desc.source.len();
-                let range = current..(current + len);
-                let token = token_desc.to_token(&range);
-
-                current = current + len;
-
-                if let SpannedToken {
-                    token: Token::Whitespace,
-                    ..
-                } = token
-                {
-                    None
-                } else {
-                    Some(token)
-                }
-            })
-            .collect();
-
-        let actual_tokens: Result<Vec<SpannedToken>, _> =
-            lex.map(|result| result.map(|(_, i, _)| i)).collect();
-
-        let actual_tokens = match actual_tokens {
-            Ok(v) => v,
-            Err(ShellError::Diagnostic(diag)) => {
-                use language_reporting::termcolor;
-
-                let writer = termcolor::StandardStream::stdout(termcolor::ColorChoice::Auto);
-                let files = crate::parser::span::Files::new(source.to_string());
-
-                language_reporting::emit(
-                    &mut writer.lock(),
-                    &files,
-                    &diag.diagnostic,
-                    &language_reporting::DefaultConfig,
-                )
-                .unwrap();
-
-                panic!("Test failed")
-            }
-            Err(err) => panic!("Something went wrong during lex: {:#?}", err),
-        };
-
-        assert_eq!(actual_tokens, expected_tokens);
-    }
-
-    #[derive(Debug)]
-    enum TokenDesc {
-        Ws,
-        Member,
-        PathDot,
-        Top(TopToken),
-        Var(VariableToken),
-    }
-
-    #[derive(Debug, new)]
-    struct TestToken<'source> {
-        desc: TokenDesc,
-        source: &'source str,
-    }
-
-    impl TestToken<'source> {
-        fn to_token(&self, range: &std::ops::Range<usize>) -> SpannedToken<'source> {
-            match self.desc {
-                TokenDesc::Top(tok) => SpannedToken::new(
-                    Span::new(range),
-                    self.source,
-                    tok.to_token(&self.source).unwrap(),
-                ),
-                TokenDesc::Var(tok) => SpannedToken::new(
-                    Span::new(range),
-                    self.source,
-                    tok.to_token(&self.source).unwrap(),
-                ),
-                TokenDesc::Member => {
-                    SpannedToken::new(Span::new(range), self.source, Token::Member)
-                }
-
-                TokenDesc::Ws => {
-                    SpannedToken::new(Span::new(range), self.source, Token::Whitespace)
-                }
-
-                TokenDesc::PathDot => {
-                    SpannedToken::new(Span::new(range), self.source, Token::PathDot)
-                }
-            }
-        }
-    }
-
-    macro_rules! chomp_tokens {
-        { rest = { SP $($rest:tt)* }, accum = [ $($accum:tt)* ] } => {
-            chomp_tokens! { rest = { $($rest)* }, accum = [ $($accum)* { SP } ] }
-        };
-
-        { rest = { ws($expr:expr) $($rest:tt)* }, accum = [ $($accum:tt)* ] } => {
-            chomp_tokens! { rest = { $($rest)* }, accum = [ $($accum)* { ws($expr) } ] }
-        };
-
-        { rest = { $id:ident ( $expr:expr ) $($rest:tt)* }, accum = [ $($accum:tt)* ] } => {
-            chomp_tokens! { rest = { $($rest)* }, accum = [ $($accum)* { tok(stringify!($id), $expr) } ] }
-        };
-
-        { rest = { $token:tt $($rest:tt)* }, accum = [ $($accum:tt)* ] } => {
-            chomp_tokens! { rest = { $($rest)* }, accum = [ $($accum)* { tk($token) } ] }
-        };
-
-        { rest = { }, accum = [ $({ $($tokens:tt)* })* ] } => {
-            &[ $($($tokens)*),* ]
-        }
-    }
-
-    macro_rules! tokens {
-        ($($tokens:tt)*) => {
-            chomp_tokens! { rest = { $($tokens)* }, accum = [] }
-        };
-    }
-
-    #[test]
-    fn test_tokenize_number() {
-        assert_lex("123", tokens![Num("123")]);
-        // assert_lex("123", &[tok("Num", "123")]);
-        assert_lex(
-            "123 456 789",
-            tokens![Num("123") SP Num("456") SP Num("789")],
-        );
-
-        assert_lex("-123", tokens![Num("-123")]);
-
-        assert_lex(
-            "123   -456    789",
-            tokens![
-                Num("123")
-                ws("   ")
-                Num("-456")
-                ws("    ")
-                Num("789")
-            ],
-        )
-    }
-
-    #[test]
-    fn test_tokenize_variable() {
-        assert_lex("$var", tokens![ "$" Var("var")]);
-    }
-
-    #[test]
-    fn test_tokenize_string() {
-        assert_lex(
-            r#" "hello world" "#,
-            tokens![ SP DQString(r#""hello world""#) SP ],
-        );
-
-        assert_lex(
-            r#" 'hello world' "#,
-            tokens![ SP SQString(r#"'hello world'"#) SP ],
-        );
-    }
-
-    #[test]
-    fn test_tokenize_path() {
-        assert_lex("$var.bar", tokens![ "$" Var("var") "???." Member("bar") ]);
-        assert_lex("$it.bar", tokens![ "$" Var("it") "???." Member("bar") ]);
-        assert_lex(
-            "$var. bar",
-            tokens![ "$" Var("var") "???." SP Member("bar") ],
-        );
-        assert_lex("$it. bar", tokens![ "$" Var("it") "???." SP Member("bar") ]);
-    }
-
-    #[test]
-    fn test_tokenize_operator() {
-        assert_lex(
-            "$it.cpu > 10",
-            tokens![ "$" Var("it") "???." Member("cpu") SP ">" SP Num("10") ],
-        );
-
-        assert_lex(
-            "$it.cpu < 10",
-            tokens![ "$" Var("it") "???." Member("cpu") SP "<" SP Num("10") ],
-        );
-
-        assert_lex(
-            "$it.cpu >= 10",
-            tokens![ "$" Var("it") "???." Member("cpu") SP ">=" SP Num("10") ],
-        );
-
-        assert_lex(
-            "$it.cpu <= 10",
-            tokens![ "$" Var("it") "???." Member("cpu") SP "<=" SP Num("10") ],
-        );
-
-        assert_lex(
-            "$it.cpu == 10",
-            tokens![ "$" Var("it") "???." Member("cpu") SP "==" SP Num("10") ],
-        );
-
-        assert_lex(
-            "$it.cpu != 10",
-            tokens![ "$" Var("it") "???." Member("cpu") SP "!=" SP Num("10") ],
-        );
-    }
-
-    #[test]
-    fn test_tokenize_smoke() {
-        assert_lex(
-            "ls | where cpu > 10",
-            tokens![ Bare("ls") SP "|" SP Bare("where") SP Bare("cpu") SP ">" SP Num("10") ],
-        );
-
-        assert_lex(
-            "ls | where { $it.cpu > 10 }",
-            tokens![ Bare("ls") SP "|" SP Bare("where") SP "{" SP "$" Var("it") "???." Member("cpu") SP ">" SP Num("10") SP "}" ],
-        );
-
-        assert_lex(
-            "open input2.json | from-json | select glossary",
-            tokens![ Bare("open") SP Bare("input2.json") SP "|" SP Bare("from-json") SP "|" SP Bare("select") SP Bare("glossary") ],
-        );
-
-        assert_lex(
-            "git add . -v",
-            tokens![ Bare("git") SP Bare("add") SP Bare(".") SP "-" Bare("v") ],
-        )
-    }
-
-    fn tok(name: &str, value: &'source str) -> TestToken<'source> {
-        match name {
-            "Num" => TestToken::new(TokenDesc::Top(TopToken::Num), value),
-            "Var" => TestToken::new(TokenDesc::Var(VariableToken::Variable), value),
-            "Member" => TestToken::new(TokenDesc::Member, value),
-            "Bare" => TestToken::new(TokenDesc::Top(TopToken::Bare), value),
-            "DQString" => TestToken::new(TokenDesc::Top(TopToken::DQString), value),
-            "SQString" => TestToken::new(TokenDesc::Top(TopToken::SQString), value),
-            other => panic!("Unexpected token name in test: {}", other),
-        }
-    }
-
-    fn tk(name: &'source str) -> TestToken<'source> {
-        let token = match name {
-            "???." => return TestToken::new(TokenDesc::PathDot, "."),
-            "." => TopToken::Dot,
-            "--" => TopToken::DashDash,
-            "-" => TopToken::Dash,
-            "$" => TopToken::Dollar,
-            "|" => TopToken::Pipe,
-            "{" => TopToken::OpenBrace,
-            "}" => TopToken::CloseBrace,
-            ">" => TopToken::OpGt,
-            "<" => TopToken::OpLt,
-            ">=" => TopToken::OpGte,
-            "<=" => TopToken::OpLte,
-            "==" => TopToken::OpEq,
-            "!=" => TopToken::OpNeq,
-            other => panic!("Unexpected token name in test: {}", other),
-        };
-
-        TestToken::new(TokenDesc::Top(token), name)
-    }
-
-    const SP: TestToken<'static> = TestToken {
-        desc: TokenDesc::Ws,
-        source: " ",
-    };
-
-    fn ws(string: &'static str) -> TestToken<'source> {
-        TestToken::new(TokenDesc::Ws, string)
-    }
-
-}
diff --git a/src/parser/parse2.rs b/src/parser/parse.rs
similarity index 100%
rename from src/parser/parse2.rs
rename to src/parser/parse.rs
diff --git a/src/parser/parse2/call_node.rs b/src/parser/parse/call_node.rs
similarity index 100%
rename from src/parser/parse2/call_node.rs
rename to src/parser/parse/call_node.rs
diff --git a/src/parser/parse2/files.rs b/src/parser/parse/files.rs
similarity index 98%
rename from src/parser/parse2/files.rs
rename to src/parser/parse/files.rs
index c606055f6c..2b02c51c65 100644
--- a/src/parser/parse2/files.rs
+++ b/src/parser/parse/files.rs
@@ -1,4 +1,4 @@
-use crate::parser::parse2::span::Span;
+use crate::parser::parse::span::Span;
 use derive_new::new;
 use language_reporting::{FileName, Location};
 
diff --git a/src/parser/parse2/flag.rs b/src/parser/parse/flag.rs
similarity index 100%
rename from src/parser/parse2/flag.rs
rename to src/parser/parse/flag.rs
diff --git a/src/parser/parse2/operator.rs b/src/parser/parse/operator.rs
similarity index 100%
rename from src/parser/parse2/operator.rs
rename to src/parser/parse/operator.rs
diff --git a/src/parser/parse2/parser.rs b/src/parser/parse/parser.rs
similarity index 99%
rename from src/parser/parse2/parser.rs
rename to src/parser/parse/parser.rs
index 41d4443877..4dc744bfba 100644
--- a/src/parser/parse2/parser.rs
+++ b/src/parser/parse/parser.rs
@@ -1,6 +1,6 @@
 #![allow(unused)]
 
-use crate::parser::parse2::{
+use crate::parser::parse::{
     call_node::*, flag::*, operator::*, pipeline::*, span::*, token_tree::*, token_tree_builder::*,
     tokens::*, unit::*,
 };
@@ -552,8 +552,8 @@ fn is_id_continue(c: char) -> bool {
 #[cfg(test)]
 mod tests {
     use super::*;
-    use crate::parser::parse2::token_tree_builder::TokenTreeBuilder as b;
-    use crate::parser::parse2::token_tree_builder::{CurriedToken, TokenTreeBuilder};
+    use crate::parser::parse::token_tree_builder::TokenTreeBuilder as b;
+    use crate::parser::parse::token_tree_builder::{CurriedToken, TokenTreeBuilder};
     use pretty_assertions::assert_eq;
 
     macro_rules! assert_leaf {
diff --git a/src/parser/parse2/pipeline.rs b/src/parser/parse/pipeline.rs
similarity index 100%
rename from src/parser/parse2/pipeline.rs
rename to src/parser/parse/pipeline.rs
diff --git a/src/parser/parse2/span.rs b/src/parser/parse/span.rs
similarity index 100%
rename from src/parser/parse2/span.rs
rename to src/parser/parse/span.rs
diff --git a/src/parser/parse2/text.rs b/src/parser/parse/text.rs
similarity index 100%
rename from src/parser/parse2/text.rs
rename to src/parser/parse/text.rs
diff --git a/src/parser/parse2/token_tree.rs b/src/parser/parse/token_tree.rs
similarity index 96%
rename from src/parser/parse2/token_tree.rs
rename to src/parser/parse/token_tree.rs
index e11295bba4..4cfd73b9c9 100644
--- a/src/parser/parse2/token_tree.rs
+++ b/src/parser/parse/token_tree.rs
@@ -1,5 +1,5 @@
 use crate::errors::ShellError;
-use crate::parser::parse2::{call_node::*, flag::*, operator::*, pipeline::*, span::*, tokens::*};
+use crate::parser::parse::{call_node::*, flag::*, operator::*, pipeline::*, span::*, tokens::*};
 use crate::Text;
 use derive_new::new;
 use enum_utils::FromStr;
diff --git a/src/parser/parse2/token_tree_builder.rs b/src/parser/parse/token_tree_builder.rs
similarity index 96%
rename from src/parser/parse2/token_tree_builder.rs
rename to src/parser/parse/token_tree_builder.rs
index f962691c41..e423c8afa5 100644
--- a/src/parser/parse2/token_tree_builder.rs
+++ b/src/parser/parse/token_tree_builder.rs
@@ -1,13 +1,13 @@
 #[allow(unused)]
 use crate::prelude::*;
 
-use crate::parser::parse2::flag::{Flag, FlagKind};
-use crate::parser::parse2::operator::Operator;
-use crate::parser::parse2::pipeline::{Pipeline, PipelineElement};
-use crate::parser::parse2::span::{Span, Spanned};
-use crate::parser::parse2::token_tree::{DelimitedNode, Delimiter, PathNode, TokenNode};
-use crate::parser::parse2::tokens::{RawToken, Token};
-use crate::parser::parse2::unit::Unit;
+use crate::parser::parse::flag::{Flag, FlagKind};
+use crate::parser::parse::operator::Operator;
+use crate::parser::parse::pipeline::{Pipeline, PipelineElement};
+use crate::parser::parse::span::{Span, Spanned};
+use crate::parser::parse::token_tree::{DelimitedNode, Delimiter, PathNode, TokenNode};
+use crate::parser::parse::tokens::{RawToken, Token};
+use crate::parser::parse::unit::Unit;
 use crate::parser::CallNode;
 use derive_new::new;
 
diff --git a/src/parser/parse2/tokens.rs b/src/parser/parse/tokens.rs
similarity index 74%
rename from src/parser/parse2/tokens.rs
rename to src/parser/parse/tokens.rs
index e2d36b3d76..5e3f942cbd 100644
--- a/src/parser/parse2/tokens.rs
+++ b/src/parser/parse/tokens.rs
@@ -1,5 +1,5 @@
-use crate::parser::parse2::span::*;
-use crate::parser::parse2::unit::*;
+use crate::parser::parse::span::*;
+use crate::parser::parse::unit::*;
 
 #[derive(Debug, Clone, Copy, Eq, PartialEq, Ord, PartialOrd, Hash)]
 pub enum RawToken {
diff --git a/src/parser/parse2/unit.rs b/src/parser/parse/unit.rs
similarity index 100%
rename from src/parser/parse2/unit.rs
rename to src/parser/parse/unit.rs
diff --git a/src/parser/parse2/util.rs b/src/parser/parse/util.rs
similarity index 100%
rename from src/parser/parse2/util.rs
rename to src/parser/parse/util.rs
diff --git a/src/parser/parser.lalrpop b/src/parser/parser.lalrpop
deleted file mode 100644
index 19020e6340..0000000000
--- a/src/parser/parser.lalrpop
+++ /dev/null
@@ -1,330 +0,0 @@
-#![allow(unused)]
-
-use std::str::FromStr;
-use crate::parser::ast::expression::*;
-use crate::parser::ast::module::*;
-use crate::parser::ast::parser_utils::*;
-use crate::parser::ast::{ExpressionBuilder, ModuleBuilder};
-
-use crate::prelude::*;
-use crate::parser::lexer::{SpannedToken, Spanned, Span, Token};
-use byte_unit::Byte;
-
-// nu's grammar is a little bit different from a lot of other languages, to better match
-// the idioms and constraints of a shell environment. A lot of the constraints are
-// the same as PowerShell, but mostly derived from the same first principles.
-//
-// - Other than at the beginning of a command, bare words are virtually always parsed as
-//   strings. This means that, in general, bare words cannot be used as keywords or
-//   variables.
-// - Variable names begin with `$`, and so do keywords
-// - Functions are invoked without `()` and without comma separation
-// - In general, because of the lack of comma-separation, expressions must be grouped:
-//   - a single token
-//   - a path ($variable followed by any number of `"." member`)
-//   - parenthesized expression
-// - This means that more elaborate expressions, like binary expressions, must usually
-//   be parenthesized
-// - There is a special case for a command that takes a single expression, which can
-//   omit the parens
-
-grammar<'input>;
-
-// === MODULES === //
-
-pub Module: Module = {
-    <l: @L> <first:Item> <items: ( ("newline")+ <Item> )*> <r: @R> => ModuleBuilder::spanned_items(concat(first, items), l, r),
-}
-
-Item: Item = {
-    <l: @L> <pipeline:Pipeline> <r: @R> => Spanned::from_item(RawItem::Expression(pipeline), Span::from((l, r))),
-    <l: @L> <function:Function> <r: @R> => Spanned::from_item(RawItem::Function(function), Span::from((l, r))),
-}
-
-// === FUNCTIONS === //
-
-Function: Function = {
-    <l: @L> "function" <bare: CommandName> "start-params"
-        <params: ParameterList>
-    "end-params" <ret: ("->" <Type>)?> <block: Block> <r: @R> => {
-        ModuleBuilder::spanned_function((bare, params, ret, block), l, r)
-    }
-}
-
-ParameterList: Vec<FormalParameter> = {
-    <params: Comma<FormalParameter>> => params
-}
-
-FormalParameter: FormalParameter = {
-    <l: @L> <name: ParameterName> ":" <ty: Type> <r: @R> => ModuleBuilder::spanned_formal_parameter((name, ty), l, r),
-}
-
-ParameterName: ParameterIdentifier = {
-    <l: @L> "-" <b: SpannedBare> <r: @R> => ParameterIdentifier::shorthand(b.map(|b| b.to_string()), (l, r)),
-    <l: @L> "--" <b: SpannedBare> <r: @R> => ParameterIdentifier::flag(b.map(|b| b.to_string()), (l, r)),
-    <l: @L> <var: ParameterVariable> <r: @R> => ParameterIdentifier::var(var, (l, r)),
-}
-
-ParameterVariable: Spanned<Variable> = {
-    <l: @L> "$" <v: "variable"> <r: @R> => Spanned::from_item(ast::Variable::from_string(v.as_slice()), (l, r)),
-}
-
-// === TYPES === //
-
-Type: Spanned<Type> = {
-    <l: @L> <ty: RawType> <r: @R> => Spanned::from_item(ty, (l, r)),
-}
-
-RawType: Type = {
-    "any" => Type::Any,
-    "int" => Type::Int,
-    "decimal" => Type::Decimal,
-    "bytes" => Type::Bytes,
-    "text" => Type::Text,
-    "boolean" => Type::Boolean,
-    "date" => Type::Date,
-
-    // TODO: generics
-    "object" => Type::Object,
-    "list" => Type::List,
-    "block" => Type::Block,
-}
-
-// === EXPRESSIONS === //
-
-pub ReplLine: Pipeline = {
-    <Pipeline> ("newline")*
-}
-
-Pipeline: Pipeline = {
-  <l: @L> <first:PipelineElement> <rest: ( "|" <PipelineElement> )*> <r: @R> => Pipeline::from_parts(first, rest, l, r),
-}
-
-PipelineElement: Expression = {
-    <l: @L> <bare: BareExpression> <r: @R> => ExpressionBuilder::spanned_call((bare, vec![]), l, r),
-    <SingleExpression> => <>,
-}
-
-// A leaf expression is a single logical token that directly represents an expression
-LeafExpression: Expression = {
-    <String>,
-    <l: @L> <int: Int> <r: @R> => ExpressionBuilder::spanned_int(int, l, r),
-    <UnitsNum>,
-    <Var>,
-}
-
-pub Call: Expression = {
-    <l: @L> <expr:Expression> <rest:SingleCallArgument> <r: @R> => ExpressionBuilder::spanned_call((expr, vec![rest]), l, r),
-    <l: @L> <expr:Expression> <first:CallArgument> <rest:( <CallArgument> )+> <r: @R> => ExpressionBuilder::spanned_call((expr, { let mut rest = rest; let mut v = vec![first]; v.append(&mut rest); v }), l, r),
-    <l: @L> <expr:BareExpression> <rest:SingleCallArgument> <r: @R> => ExpressionBuilder::spanned_call((expr, vec![rest]), l, r),
-    <l: @L> <expr:BareExpression> <first:CallArgument> <rest:( <CallArgument> )+> <r: @R> => ExpressionBuilder::spanned_call((expr, { let mut v = vec![first]; let mut rest = rest; v.append(&mut rest); v }), l, r),
-}
-
-Binary: Expression = {
-    <l: @L> <left:ArgumentExpression> <op:SpannedOperator> <right:ArgumentExpression> <r: @R> => ExpressionBuilder::spanned_binary((left, op, right), l, r)
-}
-
-// In a block, a single bare word is interpreted as a call:
-//
-// foreach { ls }
-Block: Spanned<Block> = {
-    <l: @L> "{" <expr: SingleExpression> "}" <r: @R> => ExpressionBuilder::spanned_raw_block(expr, l, r),
-    <l: @L> "{" <bare: BareExpression> "}" <r: @R> => {
-        let call = ExpressionBuilder::spanned_call(bare.clone(), bare.span.start, bare.span.end);
-        ExpressionBuilder::spanned_raw_block(call, l, r)
-    }
-}
-
-// In a block, a single bare word is interpreted as a call:
-//
-// foreach { ls }
-BlockExpression: Expression = {
-    <l: @L> "{" <expr: SingleExpression> "}" <r: @R> => ExpressionBuilder::spanned_block(expr, l, r),
-    <l: @L> "{" <bare: BareExpression> "}" <r: @R> => {
-        let call = ExpressionBuilder::spanned_call(bare.clone(), bare.span.start, bare.span.end);
-        ExpressionBuilder::spanned_block(call, l, r)
-    }
-}
-
-// An `Expression` is the most general kind of expression. It can go anywhere, even right next to another expression, and
-// even as the first part of a call.
-MemberHeadExpression: Expression = {
-    <LeafExpression> => <>,
-    <BlockExpression> => <>,
-    <l: @L> "(" <expr: Call> ")" <r: @R> => ExpressionBuilder::spanned_call(expr, l, r),
-    <l: @L> "(" <expr: BareExpression> ")" <r: @R> => ExpressionBuilder::spanned_call((expr, vec![]), l, r),
-    <l: @L> "(" <expr:Binary> ")" <r: @R> => ExpressionBuilder::spanned_parens(expr, l, r),
-}
-
-Expression: Expression = {
-    <MemberHeadExpression> => <>,
-    <l: @L> <expr:MemberHeadExpression> <rest: ( "???." <Member> )+> <r: @R> => ExpressionBuilder::spanned_path((expr, rest), l, r),
-}
-
-// An `ArgumentExpression` is an expression that appears in an argument list. It includes all of `Expression`, and
-// bare words are interpreted as strings.
-ArgumentExpression: Expression = {
-    <Expression>,
-    <BareExpression>,
-}
-
-CallArgument: Expression = {
-    <ArgumentExpression>,
-    <Flag>,
-}
-
-SingleCallArgument: Expression = {
-    <CallArgument>,
-    <Binary>,
-}
-
-// A `SingleExpression` is a special-case of `Expression` for situations where expressions do not appear side-by-side.
-// Because expression lists in nu are not comma-separated, composite expressions (like binary expressions) must be
-// parenthesized in lists. If only a single expression appears alone, the parentheses may be left out.
-//
-// `SingleExpression` does not include `Bare`, because expressions that include `SingleExpression` must decide how
-// to interpret a single bare word (`foreach { ls }` vs `cd ls`).
-SingleExpression: Expression = {
-    <Expression>,
-    <Call>,
-    <Binary>,
-}
-
-BareExpression: Expression = {
-    <l: @L> <bare: Bare> <r: @R> => ExpressionBuilder::spanned_bare(bare, l, r)
-}
-
-SpannedOperator: Spanned<Operator> = {
-    <l: @L> <op: Operator> <r: @R> => Spanned::from_item(op, Span::from((l, r)))
-}
-
-Newlines: () = {
-    ("newline")+
-}
-
-OptionalNewlines: () = {
-    ("newline")*
-}
-
-// === LOGICAL TOKENS === //
-
-// A logical token may be composed of more than one raw token, but the tokens must be emitted
-// from the stream in exactly one sequence. This allows us to use parser infrastructure to
-// compose tokens without the risk that these logical tokens will introduce ambiguities.
-
-Bare: Bare = {
-    <head: "bare"> => Bare::from_string(head.as_slice())
-}
-
-// A member is a special token that represents bare words or string literals immediate
-// following a dot.
-Member: Spanned<String> = {
-    <"member"> => <>.to_spanned_string(),
-    <"dqmember"> => <>.to_spanned_string(),
-    <"sqmember"> => <>.to_spanned_string(),
-    <"function"> => <>.to_spanned_string(),
-}
-
-CommandName: Spanned<Bare> = {
-    <l: @L> <name: "command-name"> <r: @R> => Spanned::from_item(Bare::from_string(name.as_slice()), (l, r)),
-}
-
-
-Operator: Operator = {
-    "==" => Operator::Equal,
-    "!=" => Operator::NotEqual,
-    "<" => Operator::LessThan,
-    ">" => Operator::GreaterThan,
-    "<=" => Operator::LessThanOrEqual,
-    ">=" => Operator::GreaterThanOrEqual
-}
-
-Int: i64 = {
-    <n: "num"> => i64::from_str(<>.as_slice()).unwrap(),
-}
-
-UnitsNum: Expression = {
-    <l: @L> <num: Int> <unit: "unit"> <r: @R> => ExpressionBuilder::spanned_unit((num, Unit::from_str(unit.as_slice()).unwrap()), l, r),
-}
-
-String: Expression = {
-    <l: @L> <s: "sqstring"> <r: @R> => ExpressionBuilder::spanned_string(&s.as_slice()[1..(s.as_slice().len() - 1)], l, r),
-    <l: @L> <s: "dqstring"> <r: @R> => ExpressionBuilder::spanned_string(&s.as_slice()[1..(s.as_slice().len() - 1)], l, r),
-}
-
-Flag: Expression = {
-    <l: @L> "-" <b: Bare> <r: @R> => ExpressionBuilder::spanned_shorthand(b.to_string(), l, r),
-    <l: @L> "--" <b: Bare> <r: @R> => ExpressionBuilder::spanned_flag(b.to_string(), l, r),
-}
-
-Var: Expression = {
-    <l: @L> "$" <v: "variable"> <r: @R> => ExpressionBuilder::spanned_var(v.as_slice(), l, r),
-}
-
-SpannedBare: Spanned<Bare> = {
-    <l: @L> <bare: Bare> <r: @R> => Spanned::from_item(bare, (l, r)),
-}
-
-// === MACROS === //
-
-Comma<T>: Vec<T> = { // (1)
-    <v:(<T> OptionalNewlines "," OptionalNewlines)*> <e:T?> => match e { // (2)
-        None => v,
-        Some(e) => {
-            let mut v = v;
-            v.push(e);
-            v
-        }
-    }
-};
-
-extern {
-    type Location = usize;
-    type Error = ShellError;
-
-    enum SpannedToken<'input> {
-        "any" => SpannedToken { token: Token::TyAny, .. },
-        "int" => SpannedToken { token: Token::TyInt, .. },
-        "decimal" => SpannedToken { token: Token::TyDecimal, .. },
-        "bytes" => SpannedToken { token: Token::TyBytes, .. },
-        "text" => SpannedToken { token: Token::TyText, .. },
-        "boolean" => SpannedToken { token: Token::TyBoolean, .. },
-        "date" => SpannedToken { token: Token::TyDate, .. },
-        "object" => SpannedToken { token: Token::TyObject, .. },
-        "list" => SpannedToken { token: Token::TyList, .. },
-        "block" => SpannedToken { token: Token::TyBlock, .. },
-
-        "->" => SpannedToken { token: Token::ReturnArrow, .. },
-        "," => SpannedToken { token: Token::Comma, .. },
-        ":" => SpannedToken { token: Token::Colon, .. },
-        "|" => SpannedToken { token: Token::Pipe, .. },
-        "(" => SpannedToken { token: Token::OpenParen, .. },
-        ")" => SpannedToken { token: Token::CloseParen, .. },
-        "{" => SpannedToken { token: Token::OpenBrace, .. },
-        "}" => SpannedToken { token: Token::CloseBrace, .. },
-        "==" => SpannedToken { token: Token::OpEq, .. },
-        "!=" => SpannedToken { token: Token::OpNeq, .. },
-        "<" => SpannedToken { token: Token::OpLt, .. },
-        "<=" => SpannedToken { token: Token::OpLte, .. },
-        ">" => SpannedToken { token: Token::OpGt, .. },
-        ">=" => SpannedToken { token: Token::OpGte, .. },
-        "-" => SpannedToken { token: Token::Dash, .. },
-        "--" => SpannedToken { token: Token::DashDash, .. },
-        "$" => SpannedToken { token: Token::Dollar, .. },
-        "???." => SpannedToken { token: Token::PathDot, .. },
-        "command-name" => SpannedToken { token: Token::CommandName, .. },
-        "start-params" => SpannedToken { token: Token::StartParamList, .. },
-        "end-params" => SpannedToken { token: Token::EndParamList, .. },
-        "num" => SpannedToken { token: Token::Num, .. },
-        "member" => SpannedToken { token: Token::Member, .. },
-        "sqmember" => SpannedToken { token: Token::SQMember, .. },
-        "dqmember" => SpannedToken { token: Token::SQMember, .. },
-        "variable" => SpannedToken { token: Token::Variable, .. },
-        "bare" => SpannedToken { token: Token::Bare, .. },
-        "dqstring" => SpannedToken { token: Token::DQString, .. },
-        "sqstring" => SpannedToken { token: Token::SQString, .. },
-        "unit" => SpannedToken { token: Token::Unit, .. },
-        "newline" => SpannedToken { token: Token::Newline, .. },
-        "function" => SpannedToken { token: Token::KeywordFunction, .. },
-    }
-}
\ No newline at end of file
diff --git a/src/parser/parser.rs b/src/parser/parser.rs
deleted file mode 100644
index 4a00946779..0000000000
--- a/src/parser/parser.rs
+++ /dev/null
@@ -1,17838 +0,0 @@
-// auto-generated: "lalrpop 0.17.0"
-// sha256: 5010b1b374cbeace446cb1044fed03ecd663121c3bbed7e368a71539deeff50
-#![allow(unused)]
-use std::str::FromStr;
-use crate::parser::ast::expression::*;
-use crate::parser::ast::module::*;
-use crate::parser::ast::parser_utils::*;
-use crate::parser::ast::{ExpressionBuilder, ModuleBuilder};
-use crate::prelude::*;
-use crate::parser::lexer::{SpannedToken, Spanned, Span, Token};
-use byte_unit::Byte;
-#[allow(unused_extern_crates)]
-extern crate lalrpop_util as __lalrpop_util;
-#[allow(unused_imports)]
-use self::__lalrpop_util::state_machine as __state_machine;
-
-#[cfg_attr(rustfmt, rustfmt_skip)]
-mod __parse__Call {
-    #![allow(non_snake_case, non_camel_case_types, unused_mut, unused_variables, unused_imports, unused_parens)]
-
-    use std::str::FromStr;
-    use crate::parser::ast::expression::*;
-    use crate::parser::ast::module::*;
-    use crate::parser::ast::parser_utils::*;
-    use crate::parser::ast::{ExpressionBuilder, ModuleBuilder};
-    use crate::prelude::*;
-    use crate::parser::lexer::{SpannedToken, Spanned, Span, Token};
-    use byte_unit::Byte;
-    #[allow(unused_extern_crates)]
-    extern crate lalrpop_util as __lalrpop_util;
-    #[allow(unused_imports)]
-    use self::__lalrpop_util::state_machine as __state_machine;
-    use super::__ToTriple;
-    #[allow(dead_code)]
-    pub enum __Symbol<'input>
-     {
-        Variant0(SpannedToken<'input>),
-        Variant1(Spanned<Type>),
-        Variant2(::std::option::Option<Spanned<Type>>),
-        Variant3(Spanned<String>),
-        Variant4(::std::vec::Vec<Spanned<String>>),
-        Variant5(::std::vec::Vec<SpannedToken<'input>>),
-        Variant6(Expression),
-        Variant7(::std::vec::Vec<Expression>),
-        Variant8(Item),
-        Variant9(::std::vec::Vec<Item>),
-        Variant10(FormalParameter),
-        Variant11(::std::vec::Vec<FormalParameter>),
-        Variant12(usize),
-        Variant13(Bare),
-        Variant14(Spanned<Block>),
-        Variant15(Vec<FormalParameter>),
-        Variant16(Spanned<Bare>),
-        Variant17(::std::option::Option<FormalParameter>),
-        Variant18(Function),
-        Variant19(i64),
-        Variant20(Module),
-        Variant21(()),
-        Variant22(Operator),
-        Variant23(ParameterIdentifier),
-        Variant24(Spanned<Variable>),
-        Variant25(Pipeline),
-        Variant26(Type),
-        Variant27(Spanned<Operator>),
-    }
-    const __ACTION: &'static [i8] = &[
-        // State 0
-        0, 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 1
-        -35, -35, -35, -35, 0, -35, -35, 0, 0, -35, -35, -35, -35, -35, 0, 0, -35, 0, 0, 0, 0, 0, 0, 0, -35, 0, 0, 0, 0, 0, 0, -35, 0, 0, -35, 0, 0, 0, 0, -35, 0, -35,
-        // State 2
-        0, 13, 14, 0, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 3
-        -73, -73, -73, -73, 0, -73, -73, 0, 0, -73, -73, -73, -73, -73, -73, 0, -73, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, 0, 0, 0, -73, 0, 0, -73, 0, 0, 0, 0, -73, 0, -73,
-        // State 4
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 5
-        0, 13, 14, 0, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 6
-        -65, -65, -65, -65, 0, -65, -65, 0, 0, -65, -65, -65, -65, -65, -65, 0, -65, 0, 0, 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, 0, 0, -65, 0, 0, -65, 0, 0, 31, 0, -65, 0, -65,
-        // State 7
-        -72, -72, -72, -72, 0, -72, -72, 0, 0, -72, -72, -72, -72, -72, -72, 0, -72, 0, 0, 0, 0, 0, 0, 0, -72, 0, 0, 0, 0, 0, 0, -72, 0, 0, -72, 0, 0, 0, 0, -72, 0, -72,
-        // State 8
-        -52, -52, -52, -52, 0, -52, -52, 0, 0, -52, -52, -52, -52, -52, 33, 0, -52, 0, 0, 0, 0, 0, 0, 0, -52, 0, 0, 0, 0, 0, 0, -52, 0, 0, -52, 0, 0, 0, 0, -52, 0, -52,
-        // State 9
-        -64, -64, -64, -64, 0, -64, -64, 0, 0, -64, -64, -64, -64, -64, -64, 0, -64, 0, 0, 0, 0, 0, 0, 0, -64, 0, 0, 0, 0, 0, 0, -64, 0, 0, -64, 0, 0, 0, 0, -64, 0, -64,
-        // State 10
-        -66, -66, -66, -66, 0, -66, -66, 0, 0, -66, -66, -66, -66, -66, -66, 0, -66, 0, 0, 0, 0, 0, 0, 0, -66, 0, 0, 0, 0, 0, 0, -66, 0, 0, -66, 0, 0, 0, 0, -66, 0, -66,
-        // State 11
-        -67, -67, -67, -67, 0, -67, -67, 0, 0, -67, -67, -67, -67, -67, -67, 0, -67, 0, 0, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0, 0, 0, -67, 0, 0, -67, 0, 0, 0, 0, -67, 0, -67,
-        // State 12
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 0, 0, 0,
-        // State 13
-        0, 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 14
-        -34, -34, -34, -34, 0, -34, -34, 0, 0, -34, -34, -34, -34, -34, 0, 0, -34, 0, 0, 0, 0, 0, 0, 0, -34, 0, 0, 0, 0, 0, 0, -34, 0, 0, -34, 0, 0, 0, 0, -34, 0, -34,
-        // State 15
-        -117, -117, -117, -117, 0, -117, -117, 0, 0, -117, -117, -117, -117, -117, -117, 0, -117, 0, 0, 0, 0, 0, 0, 0, -117, 0, 0, 0, 0, 0, 0, -117, 0, 0, -117, 0, 0, 0, 0, -117, 0, -117,
-        // State 16
-        -61, -61, -61, -61, 0, -61, -61, 0, 0, -61, -61, -61, -61, -61, -61, 0, -61, 0, 0, 0, 0, 0, 0, 0, -61, 0, 0, 0, 0, 0, 0, -61, 0, 0, -61, 0, 0, -61, 0, -61, 0, -61,
-        // State 17
-        -116, -116, -116, -116, 0, -116, -116, 0, 0, -116, -116, -116, -116, -116, -116, 0, -116, 0, 0, 0, 0, 0, 0, 0, -116, 0, 0, 0, 0, 0, 0, -116, 0, 0, -116, 0, 0, 0, 0, -116, 0, -116,
-        // State 18
-        0, 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 19
-        47, -45, -45, -45, 0, -45, -45, 0, 0, 48, 49, 50, 51, 52, 0, 0, -45, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, 0, -45, 0, 0, -45, 0, 0, 0, 0, -45, 0, -45,
-        // State 20
-        -33, -33, -33, -33, 0, -33, -33, 0, 0, -33, -33, -33, -33, -33, 0, 0, -33, 0, 0, 0, 0, 0, 0, 0, -33, 0, 0, 0, 0, 0, 0, -33, 0, 0, -33, 0, 0, 0, 0, -33, 0, -33,
-        // State 21
-        0, 0, 0, -110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -110,
-        // State 22
-        0, 13, 14, -109, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, -109,
-        // State 23
-        -32, -32, -32, -32, 0, -32, -32, 0, 0, -32, -32, -32, -32, -32, 0, 0, -32, 0, 0, 0, 0, 0, 0, 0, -32, 0, 0, 0, 0, 0, 0, -32, 0, 0, -32, 0, 0, 0, 0, -32, 0, -32,
-        // State 24
-        0, -46, -46, -46, 0, -46, -46, 0, 0, 0, 0, 0, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, 0, -46, 0, 0, -46, 0, 0, 0, 0, -46, 0, -46,
-        // State 25
-        0, 0, 0, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -43,
-        // State 26
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 27
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 28
-        0, 13, 14, -109, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, -109,
-        // State 29
-        0, 0, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41,
-        // State 30
-        -119, -119, -119, -119, 0, -119, -119, 0, 0, -119, -119, -119, -119, -119, -119, 0, -119, 0, 0, 0, 0, 0, 0, 0, -119, 0, 0, 0, 0, 0, 0, -119, 0, 0, -119, 0, 0, 0, 0, -119, 0, -119,
-        // State 31
-        -53, -53, -53, -53, 0, -53, -53, 0, 0, -53, -53, -53, -53, -53, 59, 0, -53, 0, 0, 0, 0, 0, 0, 0, -53, 0, 0, 0, 0, 0, 0, -53, 0, 0, -53, 0, 0, 0, 0, -53, 0, -53,
-        // State 32
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 0, 62, 0, 0, 63, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 33
-        -120, -120, -120, -120, 0, -120, -120, 0, 0, -120, -120, -120, -120, -120, -120, 0, -120, 0, 0, 0, 0, 0, 0, 0, -120, 0, 0, 0, 0, 0, 0, -120, 0, 0, -120, 0, 0, 0, 0, -120, 0, -120,
-        // State 34
-        47, 0, 0, 0, 0, 0, 0, 0, 0, 48, 49, 50, 51, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 35
-        -33, 13, 14, 65, 0, 27, 28, 0, 0, -33, -33, -33, -33, -33, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 36
-        0, 0, 0, 66, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 37
-        0, 0, 0, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 38
-        -32, 13, 14, 0, 0, 27, 28, 0, 0, -32, -32, -32, -32, -32, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 39
-        -33, 13, 14, 0, 0, 27, 28, 0, 0, -33, -33, -33, -33, -33, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 68,
-        // State 40
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113,
-        // State 41
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -112,
-        // State 42
-        -32, 13, 14, 0, 0, 27, 28, 0, 0, -32, -32, -32, -32, -32, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, -111,
-        // State 43
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69,
-        // State 44
-        0, -115, -115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 0, -115, 0, 0, -115, 0, 0, 0, 0, -115, 0, 0,
-        // State 45
-        0, 13, 14, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, 0,
-        // State 46
-        0, -81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, 0, 0, 0, -81, 0, 0, -81, 0, 0, 0, 0, -81, 0, 0,
-        // State 47
-        0, -82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, 0, 0, 0, 0, 0, 0, 0, -82, 0, 0, 0, 0, 0, 0, -82, 0, 0, -82, 0, 0, 0, 0, -82, 0, 0,
-        // State 48
-        0, -84, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, 0, 0, 0, 0, 0, 0, 0, -84, 0, 0, 0, 0, 0, 0, -84, 0, 0, -84, 0, 0, 0, 0, -84, 0, 0,
-        // State 49
-        0, -80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, 0, 0, 0, 0, 0, 0, 0, -80, 0, 0, 0, 0, 0, 0, -80, 0, 0, -80, 0, 0, 0, 0, -80, 0, 0,
-        // State 50
-        0, -83, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, 0, 0, 0, 0, 0, 0, 0, -83, 0, 0, 0, 0, 0, 0, -83, 0, 0, -83, 0, 0, 0, 0, -83, 0, 0,
-        // State 51
-        0, -85, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, 0, 0, 0, 0, 0, 0, 0, -85, 0, 0, 0, 0, 0, 0, -85, 0, 0, -85, 0, 0, 0, 0, -85, 0, 0,
-        // State 52
-        0, 13, 14, -44, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, -44,
-        // State 53
-        0, -45, -45, -45, 0, -45, -45, 0, 0, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, 0, -45, 0, 0, -45, 0, 0, 0, 0, -45, 0, -45,
-        // State 54
-        0, -23, -23, -23, 0, -23, -23, 0, 0, 0, 0, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, 0, -23, 0, 0, -23, 0, 0, 0, 0, -23, 0, -23,
-        // State 55
-        0, -54, -54, -54, 0, -54, -54, 0, 0, 0, 0, 0, 0, 0, 0, 0, -54, 0, 0, 0, 0, 0, 0, 0, -54, 0, 0, 0, 0, 0, 0, -54, 0, 0, -54, 0, 0, 0, 0, -54, 0, -54,
-        // State 56
-        0, -55, -55, -55, 0, -55, -55, 0, 0, 0, 0, 0, 0, 0, 0, 0, -55, 0, 0, 0, 0, 0, 0, 0, -55, 0, 0, 0, 0, 0, 0, -55, 0, 0, -55, 0, 0, 0, 0, -55, 0, -55,
-        // State 57
-        0, 13, 14, -42, 0, 27, 28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 0, 0, 16, 0, 0, 0, 0, 0, 0, 17, 0, 0, 18, 0, 0, 0, 0, 19, 0, -42,
-        // State 58
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 0, 62, 0, 0, 63, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 59
-        -5, -5, -5, -5, 0, -5, -5, 0, 0, -5, -5, -5, -5, -5, -5, 0, -5, 0, 0, 0, 0, 0, 0, 0, -5, 0, 0, 0, 0, 0, 0, -5, 0, 0, -5, 0, 0, 0, 0, -5, 0, -5,
-        // State 60
-        -69, -69, -69, -69, 0, -69, -69, 0, 0, -69, -69, -69, -69, -69, -69, 0, -69, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, 0, 0, 0, -69, 0, 0, -69, 0, 0, 0, 0, -69, 0, -69,
-        // State 61
-        -71, -71, -71, -71, 0, -71, -71, 0, 0, -71, -71, -71, -71, -71, -71, 0, -71, 0, 0, 0, 0, 0, 0, 0, -71, 0, 0, 0, 0, 0, 0, -71, 0, 0, -71, 0, 0, 0, 0, -71, 0, -71,
-        // State 62
-        -68, -68, -68, -68, 0, -68, -68, 0, 0, -68, -68, -68, -68, -68, -68, 0, -68, 0, 0, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0, 0, 0, -68, 0, 0, -68, 0, 0, 0, 0, -68, 0, -68,
-        // State 63
-        -70, -70, -70, -70, 0, -70, -70, 0, 0, -70, -70, -70, -70, -70, -70, 0, -70, 0, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, 0, -70, 0, 0, -70, 0, 0, 0, 0, -70, 0, -70,
-        // State 64
-        -75, -75, -75, -75, 0, -75, -75, 0, 0, -75, -75, -75, -75, -75, -75, 0, -75, 0, 0, 0, 0, 0, 0, 0, -75, 0, 0, 0, 0, 0, 0, -75, 0, 0, -75, 0, 0, 0, 0, -75, 0, -75,
-        // State 65
-        -76, -76, -76, -76, 0, -76, -76, 0, 0, -76, -76, -76, -76, -76, -76, 0, -76, 0, 0, 0, 0, 0, 0, 0, -76, 0, 0, 0, 0, 0, 0, -76, 0, 0, -76, 0, 0, 0, 0, -76, 0, -76,
-        // State 66
-        -74, -74, -74, -74, 0, -74, -74, 0, 0, -74, -74, -74, -74, -74, -74, 0, -74, 0, 0, 0, 0, 0, 0, 0, -74, 0, 0, 0, 0, 0, 0, -74, 0, 0, -74, 0, 0, 0, 0, -74, 0, -74,
-        // State 67
-        -40, -40, -40, -40, 0, -40, -40, 0, 0, -40, -40, -40, -40, -40, -40, 0, -40, 0, 0, 0, 0, 0, 0, 0, -40, 0, 0, 0, 0, 0, 0, -40, 0, 0, -40, 0, 0, 0, 0, -40, 0, -40,
-        // State 68
-        -39, -39, -39, -39, 0, -39, -39, 0, 0, -39, -39, -39, -39, -39, -39, 0, -39, 0, 0, 0, 0, 0, 0, 0, -39, 0, 0, 0, 0, 0, 0, -39, 0, 0, -39, 0, 0, 0, 0, -39, 0, -39,
-        // State 69
-        0, 0, 0, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36,
-        // State 70
-        0, -24, -24, -24, 0, -24, -24, 0, 0, 0, 0, 0, 0, 0, 0, 0, -24, 0, 0, 0, 0, 0, 0, 0, -24, 0, 0, 0, 0, 0, 0, -24, 0, 0, -24, 0, 0, 0, 0, -24, 0, -24,
-        // State 71
-        -6, -6, -6, -6, 0, -6, -6, 0, 0, -6, -6, -6, -6, -6, -6, 0, -6, 0, 0, 0, 0, 0, 0, 0, -6, 0, 0, 0, 0, 0, 0, -6, 0, 0, -6, 0, 0, 0, 0, -6, 0, -6,
-    ];
-    const __EOF_ACTION: &'static [i8] = &[
-        // State 0
-        0,
-        // State 1
-        -35,
-        // State 2
-        0,
-        // State 3
-        -73,
-        // State 4
-        -121,
-        // State 5
-        0,
-        // State 6
-        -65,
-        // State 7
-        -72,
-        // State 8
-        -52,
-        // State 9
-        -64,
-        // State 10
-        -66,
-        // State 11
-        -67,
-        // State 12
-        0,
-        // State 13
-        0,
-        // State 14
-        -34,
-        // State 15
-        -117,
-        // State 16
-        -61,
-        // State 17
-        -116,
-        // State 18
-        0,
-        // State 19
-        -45,
-        // State 20
-        -33,
-        // State 21
-        -110,
-        // State 22
-        -109,
-        // State 23
-        -32,
-        // State 24
-        -46,
-        // State 25
-        -43,
-        // State 26
-        0,
-        // State 27
-        0,
-        // State 28
-        -109,
-        // State 29
-        -41,
-        // State 30
-        -119,
-        // State 31
-        -53,
-        // State 32
-        0,
-        // State 33
-        -120,
-        // State 34
-        0,
-        // State 35
-        0,
-        // State 36
-        0,
-        // State 37
-        0,
-        // State 38
-        0,
-        // State 39
-        0,
-        // State 40
-        0,
-        // State 41
-        0,
-        // State 42
-        0,
-        // State 43
-        0,
-        // State 44
-        0,
-        // State 45
-        0,
-        // State 46
-        0,
-        // State 47
-        0,
-        // State 48
-        0,
-        // State 49
-        0,
-        // State 50
-        0,
-        // State 51
-        0,
-        // State 52
-        -44,
-        // State 53
-        -45,
-        // State 54
-        -23,
-        // State 55
-        -54,
-        // State 56
-        -55,
-        // State 57
-        -42,
-        // State 58
-        0,
-        // State 59
-        -5,
-        // State 60
-        -69,
-        // State 61
-        -71,
-        // State 62
-        -68,
-        // State 63
-        -70,
-        // State 64
-        -75,
-        // State 65
-        -76,
-        // State 66
-        -74,
-        // State 67
-        -40,
-        // State 68
-        -39,
-        // State 69
-        -36,
-        // State 70
-        -24,
-        // State 71
-        -6,
-    ];
-    const __GOTO: &'static [i8] = &[
-        // State 0
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 0, 0, 4, 5, 0, 0, 0, 6, 0, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 1
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 2
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 21, 22, 0, 4, 0, 23, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 3
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 4
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 5
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 21, 22, 0, 4, 0, 29, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 6
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 7
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 8
-        0, 0, 0, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 9
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 10
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 11
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 12
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 13
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 2, 36, 37, 0, 4, 38, 0, 0, 0, 39, 0, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 14
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 15
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 16
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 17
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 18
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 35, 2, 40, 41, 0, 4, 42, 0, 0, 0, 43, 0, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 19
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0,
-        // State 20
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 21
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 22
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 53, 0, 0, 0, 0, 0, 54, 2, 21, 0, 0, 4, 0, 55, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 23
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 24
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 25
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 26
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 27
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 57, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 28
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, 0, 0, 0, 0, 54, 2, 21, 0, 0, 4, 0, 55, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 29
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 30
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 31
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 32
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 33
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 34
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0,
-        // State 35
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 21, 22, 0, 4, 0, 23, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 36
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 37
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 38
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 21, 22, 0, 4, 0, 29, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 39
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 21, 22, 0, 4, 0, 23, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 40
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 41
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 42
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 20, 2, 21, 22, 0, 4, 0, 29, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 43
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 44
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 45
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 2, 21, 0, 0, 4, 0, 0, 0, 0, 24, 0, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 46
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 47
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 48
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 49
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 50
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 51
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 52
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 2, 21, 0, 0, 4, 0, 71, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 53
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 54
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 55
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 56
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 57
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 2, 21, 0, 0, 4, 0, 71, 0, 0, 24, 25, 0, 0, 0, 7, 0, 8, 0, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10, 0, 11, 12, 0, 0, 0,
-        // State 58
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 59
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 60
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 61
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 62
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 63
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 64
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 65
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 66
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 67
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 68
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 69
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 70
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 71
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    ];
-    fn __expected_tokens(__state: usize) -> Vec<::std::string::String> {
-        const __TERMINAL: &'static [&'static str] = &[
-            r###""!=""###,
-            r###""$""###,
-            r###""(""###,
-            r###"")""###,
-            r###"",""###,
-            r###""-""###,
-            r###""--""###,
-            r###""->""###,
-            r###"":""###,
-            r###""<""###,
-            r###""<=""###,
-            r###""==""###,
-            r###"">""###,
-            r###"">=""###,
-            r###""???.""###,
-            r###""any""###,
-            r###""bare""###,
-            r###""block""###,
-            r###""boolean""###,
-            r###""bytes""###,
-            r###""command-name""###,
-            r###""date""###,
-            r###""decimal""###,
-            r###""dqmember""###,
-            r###""dqstring""###,
-            r###""end-params""###,
-            r###""function""###,
-            r###""int""###,
-            r###""list""###,
-            r###""member""###,
-            r###""newline""###,
-            r###""num""###,
-            r###""object""###,
-            r###""sqmember""###,
-            r###""sqstring""###,
-            r###""start-params""###,
-            r###""text""###,
-            r###""unit""###,
-            r###""variable""###,
-            r###""{""###,
-            r###""|""###,
-            r###""}""###,
-        ];
-        __ACTION[(__state * 42)..].iter().zip(__TERMINAL).filter_map(|(&state, terminal)| {
-            if state == 0 {
-                None
-            } else {
-                Some(terminal.to_string())
-            }
-        }).collect()
-    }
-    pub struct __StateMachine<'input>
-    where 
-    {
-        __phantom: ::std::marker::PhantomData<(&'input ())>,
-    }
-    impl<'input> __state_machine::ParserDefinition for __StateMachine<'input>
-    where 
-    {
-        type Location = usize;
-        type Error = ShellError;
-        type Token = SpannedToken<'input>;
-        type TokenIndex = usize;
-        type Symbol = __Symbol<'input>;
-        type Success = Expression;
-        type StateIndex = i8;
-        type Action = i8;
-        type ReduceIndex = i8;
-        type NonterminalIndex = usize;
-
-        #[inline]
-        fn start_location(&self) -> Self::Location {
-              Default::default()
-        }
-
-        #[inline]
-        fn start_state(&self) -> Self::StateIndex {
-              0
-        }
-
-        #[inline]
-        fn token_to_index(&self, token: &Self::Token) -> Option<usize> {
-            __token_to_integer(token, ::std::marker::PhantomData::<(&())>)
-        }
-
-        #[inline]
-        fn action(&self, state: i8, integer: usize) -> i8 {
-            __ACTION[(state as usize) * 42 + integer]
-        }
-
-        #[inline]
-        fn error_action(&self, state: i8) -> i8 {
-            __ACTION[(state as usize) * 42 + (42 - 1)]
-        }
-
-        #[inline]
-        fn eof_action(&self, state: i8) -> i8 {
-            __EOF_ACTION[state as usize]
-        }
-
-        #[inline]
-        fn goto(&self, state: i8, nt: usize) -> i8 {
-            __GOTO[(state as usize) * 62 + nt] - 1
-        }
-
-        fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol {
-            __token_to_symbol(token_index, token, ::std::marker::PhantomData::<(&())>)
-        }
-
-        fn expected_tokens(&self, state: i8) -> Vec<String> {
-            __expected_tokens(state as usize)
-        }
-
-        #[inline]
-        fn uses_error_recovery(&self) -> bool {
-            false
-        }
-
-        #[inline]
-        fn error_recovery_symbol(
-            &self,
-            recovery: __state_machine::ErrorRecovery<Self>,
-        ) -> Self::Symbol {
-            panic!("error recovery not enabled for this grammar")
-        }
-
-        fn reduce(
-            &mut self,
-            action: i8,
-            start_location: Option<&Self::Location>,
-            states: &mut Vec<i8>,
-            symbols: &mut Vec<__state_machine::SymbolTriple<Self>>,
-        ) -> Option<__state_machine::ParseResult<Self>> {
-            __reduce(
-                action,
-                start_location,
-                states,
-                symbols,
-                ::std::marker::PhantomData::<(&())>,
-            )
-        }
-
-        fn simulate_reduce(&self, action: i8) -> __state_machine::SimulatedReduce<Self> {
-            __simulate_reduce(action, ::std::marker::PhantomData::<(&())>)
-        }
-    }
-    fn __token_to_integer<
-        'input,
-    >(
-        __token: &SpannedToken<'input>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> Option<usize>
-    {
-        match *__token {
-            SpannedToken { token: Token::OpNeq, .. } if true => Some(0),
-            SpannedToken { token: Token::Dollar, .. } if true => Some(1),
-            SpannedToken { token: Token::OpenParen, .. } if true => Some(2),
-            SpannedToken { token: Token::CloseParen, .. } if true => Some(3),
-            SpannedToken { token: Token::Comma, .. } if true => Some(4),
-            SpannedToken { token: Token::Dash, .. } if true => Some(5),
-            SpannedToken { token: Token::DashDash, .. } if true => Some(6),
-            SpannedToken { token: Token::ReturnArrow, .. } if true => Some(7),
-            SpannedToken { token: Token::Colon, .. } if true => Some(8),
-            SpannedToken { token: Token::OpLt, .. } if true => Some(9),
-            SpannedToken { token: Token::OpLte, .. } if true => Some(10),
-            SpannedToken { token: Token::OpEq, .. } if true => Some(11),
-            SpannedToken { token: Token::OpGt, .. } if true => Some(12),
-            SpannedToken { token: Token::OpGte, .. } if true => Some(13),
-            SpannedToken { token: Token::PathDot, .. } if true => Some(14),
-            SpannedToken { token: Token::TyAny, .. } if true => Some(15),
-            SpannedToken { token: Token::Bare, .. } if true => Some(16),
-            SpannedToken { token: Token::TyBlock, .. } if true => Some(17),
-            SpannedToken { token: Token::TyBoolean, .. } if true => Some(18),
-            SpannedToken { token: Token::TyBytes, .. } if true => Some(19),
-            SpannedToken { token: Token::CommandName, .. } if true => Some(20),
-            SpannedToken { token: Token::TyDate, .. } if true => Some(21),
-            SpannedToken { token: Token::TyDecimal, .. } if true => Some(22),
-            SpannedToken { token: Token::SQMember, .. } if true => Some(23),
-            SpannedToken { token: Token::DQString, .. } if true => Some(24),
-            SpannedToken { token: Token::EndParamList, .. } if true => Some(25),
-            SpannedToken { token: Token::KeywordFunction, .. } if true => Some(26),
-            SpannedToken { token: Token::TyInt, .. } if true => Some(27),
-            SpannedToken { token: Token::TyList, .. } if true => Some(28),
-            SpannedToken { token: Token::Member, .. } if true => Some(29),
-            SpannedToken { token: Token::Newline, .. } if true => Some(30),
-            SpannedToken { token: Token::Num, .. } if true => Some(31),
-            SpannedToken { token: Token::TyObject, .. } if true => Some(32),
-            SpannedToken { token: Token::SQMember, .. } if true => Some(33),
-            SpannedToken { token: Token::SQString, .. } if true => Some(34),
-            SpannedToken { token: Token::StartParamList, .. } if true => Some(35),
-            SpannedToken { token: Token::TyText, .. } if true => Some(36),
-            SpannedToken { token: Token::Unit, .. } if true => Some(37),
-            SpannedToken { token: Token::Variable, .. } if true => Some(38),
-            SpannedToken { token: Token::OpenBrace, .. } if true => Some(39),
-            SpannedToken { token: Token::Pipe, .. } if true => Some(40),
-            SpannedToken { token: Token::CloseBrace, .. } if true => Some(41),
-            _ => None,
-        }
-    }
-    fn __token_to_symbol<
-        'input,
-    >(
-        __token_index: usize,
-        __token: SpannedToken<'input>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> __Symbol<'input>
-    {
-        match __token_index {
-            0 => match __token {
-                __tok @ SpannedToken { token: Token::OpNeq, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            1 => match __token {
-                __tok @ SpannedToken { token: Token::Dollar, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            2 => match __token {
-                __tok @ SpannedToken { token: Token::OpenParen, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            3 => match __token {
-                __tok @ SpannedToken { token: Token::CloseParen, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            4 => match __token {
-                __tok @ SpannedToken { token: Token::Comma, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            5 => match __token {
-                __tok @ SpannedToken { token: Token::Dash, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            6 => match __token {
-                __tok @ SpannedToken { token: Token::DashDash, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            7 => match __token {
-                __tok @ SpannedToken { token: Token::ReturnArrow, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            8 => match __token {
-                __tok @ SpannedToken { token: Token::Colon, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            9 => match __token {
-                __tok @ SpannedToken { token: Token::OpLt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            10 => match __token {
-                __tok @ SpannedToken { token: Token::OpLte, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            11 => match __token {
-                __tok @ SpannedToken { token: Token::OpEq, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            12 => match __token {
-                __tok @ SpannedToken { token: Token::OpGt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            13 => match __token {
-                __tok @ SpannedToken { token: Token::OpGte, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            14 => match __token {
-                __tok @ SpannedToken { token: Token::PathDot, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            15 => match __token {
-                __tok @ SpannedToken { token: Token::TyAny, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            16 => match __token {
-                __tok @ SpannedToken { token: Token::Bare, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            17 => match __token {
-                __tok @ SpannedToken { token: Token::TyBlock, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            18 => match __token {
-                __tok @ SpannedToken { token: Token::TyBoolean, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            19 => match __token {
-                __tok @ SpannedToken { token: Token::TyBytes, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            20 => match __token {
-                __tok @ SpannedToken { token: Token::CommandName, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            21 => match __token {
-                __tok @ SpannedToken { token: Token::TyDate, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            22 => match __token {
-                __tok @ SpannedToken { token: Token::TyDecimal, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            23 => match __token {
-                __tok @ SpannedToken { token: Token::SQMember, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            24 => match __token {
-                __tok @ SpannedToken { token: Token::DQString, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            25 => match __token {
-                __tok @ SpannedToken { token: Token::EndParamList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            26 => match __token {
-                __tok @ SpannedToken { token: Token::KeywordFunction, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            27 => match __token {
-                __tok @ SpannedToken { token: Token::TyInt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            28 => match __token {
-                __tok @ SpannedToken { token: Token::TyList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            29 => match __token {
-                __tok @ SpannedToken { token: Token::Member, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            30 => match __token {
-                __tok @ SpannedToken { token: Token::Newline, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            31 => match __token {
-                __tok @ SpannedToken { token: Token::Num, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            32 => match __token {
-                __tok @ SpannedToken { token: Token::TyObject, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            33 => match __token {
-                __tok @ SpannedToken { token: Token::SQMember, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            34 => match __token {
-                __tok @ SpannedToken { token: Token::SQString, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            35 => match __token {
-                __tok @ SpannedToken { token: Token::StartParamList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            36 => match __token {
-                __tok @ SpannedToken { token: Token::TyText, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            37 => match __token {
-                __tok @ SpannedToken { token: Token::Unit, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            38 => match __token {
-                __tok @ SpannedToken { token: Token::Variable, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            39 => match __token {
-                __tok @ SpannedToken { token: Token::OpenBrace, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            40 => match __token {
-                __tok @ SpannedToken { token: Token::Pipe, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            41 => match __token {
-                __tok @ SpannedToken { token: Token::CloseBrace, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            _ => unreachable!(),
-        }
-    }
-    fn __simulate_reduce<
-        'input,
-    >(
-        __reduce_index: i8,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> __state_machine::SimulatedReduce<__StateMachine<'input>>
-    {
-        match __reduce_index {
-            0 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 0,
-                }
-            }
-            1 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 1,
-                }
-            }
-            2 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 1,
-                }
-            }
-            3 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 2,
-                }
-            }
-            4 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 3,
-                }
-            }
-            5 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 3,
-                }
-            }
-            6 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 4,
-                }
-            }
-            7 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 5,
-                }
-            }
-            8 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 5,
-                }
-            }
-            9 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 6,
-                }
-            }
-            10 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 6,
-                }
-            }
-            11 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 7,
-                }
-            }
-            12 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 8,
-                }
-            }
-            13 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 8,
-                }
-            }
-            14 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 9,
-                }
-            }
-            15 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 9,
-                }
-            }
-            16 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 10,
-                }
-            }
-            17 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 11,
-                }
-            }
-            18 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 11,
-                }
-            }
-            19 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 12,
-                }
-            }
-            20 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 12,
-                }
-            }
-            21 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 13,
-                }
-            }
-            22 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 14,
-                }
-            }
-            23 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 14,
-                }
-            }
-            24 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 4,
-                    nonterminal_produced: 15,
-                }
-            }
-            25 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 16,
-                }
-            }
-            26 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 16,
-                }
-            }
-            27 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 4,
-                    nonterminal_produced: 17,
-                }
-            }
-            28 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 5,
-                    nonterminal_produced: 17,
-                }
-            }
-            29 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 18,
-                }
-            }
-            30 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 19,
-                }
-            }
-            31 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 20,
-                }
-            }
-            32 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 20,
-                }
-            }
-            33 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 21,
-                }
-            }
-            34 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 22,
-                }
-            }
-            35 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 23,
-                }
-            }
-            36 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 24,
-                }
-            }
-            37 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 24,
-                }
-            }
-            38 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 25,
-                }
-            }
-            39 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 25,
-                }
-            }
-            40 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 26,
-                }
-            }
-            41 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 26,
-                }
-            }
-            42 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 26,
-                }
-            }
-            43 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 26,
-                }
-            }
-            44 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 27,
-                }
-            }
-            45 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 27,
-                }
-            }
-            46 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 28,
-                }
-            }
-            47 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 28,
-                }
-            }
-            48 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 28,
-                }
-            }
-            49 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 28,
-                }
-            }
-            50 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 29,
-                }
-            }
-            51 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 30,
-                }
-            }
-            52 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 30,
-                }
-            }
-            53 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 31,
-                }
-            }
-            54 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 31,
-                }
-            }
-            55 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 32,
-                }
-            }
-            56 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 33,
-                }
-            }
-            57 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 33,
-                }
-            }
-            58 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 8,
-                    nonterminal_produced: 34,
-                }
-            }
-            59 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 6,
-                    nonterminal_produced: 34,
-                }
-            }
-            60 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 35,
-                }
-            }
-            61 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 36,
-                }
-            }
-            62 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 36,
-                }
-            }
-            63 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            64 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            65 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            66 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            67 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            68 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            69 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            70 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            71 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 39,
-                }
-            }
-            72 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 39,
-                }
-            }
-            73 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            74 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            75 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            76 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 40,
-                }
-            }
-            77 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 40,
-                }
-            }
-            78 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 41,
-                }
-            }
-            79 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            80 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            81 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            82 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            83 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            84 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            85 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 43,
-                }
-            }
-            86 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 43,
-                }
-            }
-            87 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 44,
-                }
-            }
-            88 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 45,
-                }
-            }
-            89 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 45,
-                }
-            }
-            90 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 45,
-                }
-            }
-            91 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 46,
-                }
-            }
-            92 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 47,
-                }
-            }
-            93 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 47,
-                }
-            }
-            94 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 48,
-                }
-            }
-            95 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 48,
-                }
-            }
-            96 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            97 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            98 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            99 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            100 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            101 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            102 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            103 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            104 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            105 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            106 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 50,
-                }
-            }
-            107 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 50,
-                }
-            }
-            108 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 51,
-                }
-            }
-            109 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 51,
-                }
-            }
-            110 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            111 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            112 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            113 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 53,
-                }
-            }
-            114 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 54,
-                }
-            }
-            115 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 55,
-                }
-            }
-            116 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 55,
-                }
-            }
-            117 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 56,
-                }
-            }
-            118 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 57,
-                }
-            }
-            119 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 58,
-                }
-            }
-            120 => __state_machine::SimulatedReduce::Accept,
-            121 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 60,
-                }
-            }
-            122 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 61,
-                }
-            }
-            _ => panic!("invalid reduction index {}", __reduce_index)
-        }
-    }
-    pub struct CallParser {
-        _priv: (),
-    }
-
-    impl CallParser {
-        pub fn new() -> CallParser {
-            CallParser {
-                _priv: (),
-            }
-        }
-
-        #[allow(dead_code)]
-        pub fn parse<
-            'input,
-            __TOKEN: __ToTriple<'input, >,
-            __TOKENS: IntoIterator<Item=__TOKEN>,
-        >(
-            &self,
-            __tokens0: __TOKENS,
-        ) -> Result<Expression, __lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>>
-        {
-            let __tokens = __tokens0.into_iter();
-            let mut __tokens = __tokens.map(|t| __ToTriple::to_triple(t));
-            let __r = __state_machine::Parser::drive(
-                __StateMachine {
-                    __phantom: ::std::marker::PhantomData::<(&())>,
-                },
-                __tokens,
-            );
-            __r
-        }
-    }
-    pub(crate) fn __reduce<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> Option<Result<Expression,__lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>>>
-    {
-        let (__pop_states, __nonterminal) = match __action {
-            0 => {
-                __reduce0(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            1 => {
-                __reduce1(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            2 => {
-                __reduce2(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            3 => {
-                __reduce3(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            4 => {
-                __reduce4(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            5 => {
-                __reduce5(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            6 => {
-                __reduce6(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            7 => {
-                __reduce7(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            8 => {
-                __reduce8(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            9 => {
-                __reduce9(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            10 => {
-                __reduce10(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            11 => {
-                __reduce11(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            12 => {
-                __reduce12(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            13 => {
-                __reduce13(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            14 => {
-                __reduce14(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            15 => {
-                __reduce15(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            16 => {
-                __reduce16(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            17 => {
-                __reduce17(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            18 => {
-                __reduce18(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            19 => {
-                __reduce19(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            20 => {
-                __reduce20(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            21 => {
-                __reduce21(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            22 => {
-                __reduce22(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            23 => {
-                __reduce23(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            24 => {
-                __reduce24(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            25 => {
-                __reduce25(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            26 => {
-                __reduce26(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            27 => {
-                __reduce27(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            28 => {
-                __reduce28(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            29 => {
-                __reduce29(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            30 => {
-                __reduce30(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            31 => {
-                __reduce31(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            32 => {
-                __reduce32(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            33 => {
-                __reduce33(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            34 => {
-                __reduce34(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            35 => {
-                __reduce35(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            36 => {
-                __reduce36(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            37 => {
-                __reduce37(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            38 => {
-                __reduce38(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            39 => {
-                __reduce39(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            40 => {
-                __reduce40(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            41 => {
-                __reduce41(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            42 => {
-                __reduce42(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            43 => {
-                __reduce43(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            44 => {
-                __reduce44(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            45 => {
-                __reduce45(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            46 => {
-                __reduce46(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            47 => {
-                __reduce47(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            48 => {
-                __reduce48(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            49 => {
-                __reduce49(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            50 => {
-                __reduce50(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            51 => {
-                __reduce51(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            52 => {
-                __reduce52(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            53 => {
-                __reduce53(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            54 => {
-                __reduce54(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            55 => {
-                __reduce55(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            56 => {
-                __reduce56(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            57 => {
-                __reduce57(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            58 => {
-                __reduce58(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            59 => {
-                __reduce59(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            60 => {
-                __reduce60(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            61 => {
-                __reduce61(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            62 => {
-                __reduce62(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            63 => {
-                __reduce63(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            64 => {
-                __reduce64(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            65 => {
-                __reduce65(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            66 => {
-                __reduce66(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            67 => {
-                __reduce67(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            68 => {
-                __reduce68(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            69 => {
-                __reduce69(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            70 => {
-                __reduce70(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            71 => {
-                __reduce71(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            72 => {
-                __reduce72(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            73 => {
-                __reduce73(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            74 => {
-                __reduce74(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            75 => {
-                __reduce75(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            76 => {
-                __reduce76(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            77 => {
-                __reduce77(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            78 => {
-                __reduce78(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            79 => {
-                __reduce79(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            80 => {
-                __reduce80(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            81 => {
-                __reduce81(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            82 => {
-                __reduce82(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            83 => {
-                __reduce83(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            84 => {
-                __reduce84(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            85 => {
-                __reduce85(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            86 => {
-                __reduce86(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            87 => {
-                __reduce87(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            88 => {
-                __reduce88(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            89 => {
-                __reduce89(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            90 => {
-                __reduce90(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            91 => {
-                __reduce91(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            92 => {
-                __reduce92(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            93 => {
-                __reduce93(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            94 => {
-                __reduce94(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            95 => {
-                __reduce95(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            96 => {
-                __reduce96(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            97 => {
-                __reduce97(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            98 => {
-                __reduce98(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            99 => {
-                __reduce99(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            100 => {
-                __reduce100(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            101 => {
-                __reduce101(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            102 => {
-                __reduce102(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            103 => {
-                __reduce103(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            104 => {
-                __reduce104(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            105 => {
-                __reduce105(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            106 => {
-                __reduce106(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            107 => {
-                __reduce107(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            108 => {
-                __reduce108(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            109 => {
-                __reduce109(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            110 => {
-                __reduce110(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            111 => {
-                __reduce111(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            112 => {
-                __reduce112(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            113 => {
-                __reduce113(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            114 => {
-                __reduce114(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            115 => {
-                __reduce115(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            116 => {
-                __reduce116(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            117 => {
-                __reduce117(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            118 => {
-                __reduce118(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            119 => {
-                __reduce119(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            120 => {
-                // __Call = Call => ActionFn(2);
-                let __sym0 = __pop_Variant6(__symbols);
-                let __start = __sym0.0.clone();
-                let __end = __sym0.2.clone();
-                let __nt = super::__action2::<>(__sym0);
-                return Some(Ok(__nt));
-            }
-            121 => {
-                __reduce121(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            122 => {
-                __reduce122(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            _ => panic!("invalid action code {}", __action)
-        };
-        let __states_len = __states.len();
-        __states.truncate(__states_len - __pop_states);
-        let __state = *__states.last().unwrap() as usize;
-        let __next_state = __GOTO[__state * 62 + __nonterminal] - 1;
-        __states.push(__next_state);
-        None
-    }
-    fn __pop_Variant21<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, (), usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant21(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant13<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Bare, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant13(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant6<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Expression, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant6(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant10<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, FormalParameter, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant10(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant18<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Function, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant18(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant8<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Item, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant8(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant20<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Module, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant20(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant22<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Operator, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant22(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant23<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ParameterIdentifier, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant23(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant25<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Pipeline, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant25(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant16<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Bare>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant16(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant14<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Block>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant14(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant27<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Operator>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant27(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant3<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<String>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant3(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant1<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Type>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant1(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant24<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Variable>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant24(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant0<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, SpannedToken<'input>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant0(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant26<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Type, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant26(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant15<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Vec<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant15(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant19<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, i64, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant19(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant12<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, usize, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant12(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant17<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::option::Option<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant17(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant2<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::option::Option<Spanned<Type>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant2(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant7<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Expression>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant7(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant11<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant11(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant9<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Item>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant9(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant4<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Spanned<String>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant4(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant5<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<SpannedToken<'input>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant5(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    pub(crate) fn __reduce0<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>) = "->", Type => ActionFn(95);
-        let __sym1 = __pop_Variant1(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action95::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant1(__nt), __end));
-        (2, 0)
-    }
-    pub(crate) fn __reduce1<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>)? = "->", Type => ActionFn(115);
-        let __sym1 = __pop_Variant1(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action115::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant2(__nt), __end));
-        (2, 1)
-    }
-    pub(crate) fn __reduce2<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>)? =  => ActionFn(94);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action94::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant2(__nt), __end));
-        (0, 1)
-    }
-    pub(crate) fn __reduce3<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>) = "???.", Member => ActionFn(83);
-        let __sym1 = __pop_Variant3(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action83::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (2, 2)
-    }
-    pub(crate) fn __reduce4<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>)+ = "???.", Member => ActionFn(118);
-        let __sym1 = __pop_Variant3(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action118::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant4(__nt), __end));
-        (2, 3)
-    }
-    pub(crate) fn __reduce5<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>)+ = ("???." <Member>)+, "???.", Member => ActionFn(119);
-        let __sym2 = __pop_Variant3(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant4(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action119::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant4(__nt), __end));
-        (3, 3)
-    }
-    pub(crate) fn __reduce6<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline") = "newline" => ActionFn(102);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action102::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant0(__nt), __end));
-        (1, 4)
-    }
-    pub(crate) fn __reduce7<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")* =  => ActionFn(90);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action90::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (0, 5)
-    }
-    pub(crate) fn __reduce8<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")* = ("newline")+ => ActionFn(91);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action91::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (1, 5)
-    }
-    pub(crate) fn __reduce9<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")+ = "newline" => ActionFn(120);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action120::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (1, 6)
-    }
-    pub(crate) fn __reduce10<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")+ = ("newline")+, "newline" => ActionFn(121);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action121::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (2, 6)
-    }
-    pub(crate) fn __reduce11<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>) = "|", PipelineElement => ActionFn(89);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action89::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 7)
-    }
-    pub(crate) fn __reduce12<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)* =  => ActionFn(87);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action87::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (0, 8)
-    }
-    pub(crate) fn __reduce13<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)* = ("|" <PipelineElement>)+ => ActionFn(88);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action88::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (1, 8)
-    }
-    pub(crate) fn __reduce14<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)+ = "|", PipelineElement => ActionFn(126);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action126::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (2, 9)
-    }
-    pub(crate) fn __reduce15<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)+ = ("|" <PipelineElement>)+, "|", PipelineElement => ActionFn(127);
-        let __sym2 = __pop_Variant6(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action127::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (3, 9)
-    }
-    pub(crate) fn __reduce16<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>) = ("newline")+, Item => ActionFn(99);
-        let __sym1 = __pop_Variant8(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action99::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (2, 10)
-    }
-    pub(crate) fn __reduce17<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)* =  => ActionFn(97);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action97::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (0, 11)
-    }
-    pub(crate) fn __reduce18<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)* = (("newline")+ <Item>)+ => ActionFn(98);
-        let __sym0 = __pop_Variant9(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action98::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (1, 11)
-    }
-    pub(crate) fn __reduce19<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)+ = ("newline")+, Item => ActionFn(130);
-        let __sym1 = __pop_Variant8(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action130::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (2, 12)
-    }
-    pub(crate) fn __reduce20<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)+ = (("newline")+ <Item>)+, ("newline")+, Item => ActionFn(131);
-        let __sym2 = __pop_Variant8(__symbols);
-        let __sym1 = __pop_Variant5(__symbols);
-        let __sym0 = __pop_Variant9(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action131::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (3, 12)
-    }
-    pub(crate) fn __reduce21<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>) = CallArgument => ActionFn(86);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action86::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 13)
-    }
-    pub(crate) fn __reduce22<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>)+ = CallArgument => ActionFn(134);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action134::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (1, 14)
-    }
-    pub(crate) fn __reduce23<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>)+ = (<CallArgument>)+, CallArgument => ActionFn(135);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action135::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (2, 14)
-    }
-    pub(crate) fn __reduce24<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines) = FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(110);
-        let __sym3 = __pop_Variant21(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant21(__symbols);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym3.2.clone();
-        let __nt = super::__action110::<>(__sym0, __sym1, __sym2, __sym3);
-        __symbols.push((__start, __Symbol::Variant10(__nt), __end));
-        (4, 15)
-    }
-    pub(crate) fn __reduce25<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)* =  => ActionFn(108);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action108::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (0, 16)
-    }
-    pub(crate) fn __reduce26<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)* = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ => ActionFn(109);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action109::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (1, 16)
-    }
-    pub(crate) fn __reduce27<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ = FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(136);
-        let __sym3 = __pop_Variant21(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant21(__symbols);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym3.2.clone();
-        let __nt = super::__action136::<>(__sym0, __sym1, __sym2, __sym3);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (4, 17)
-    }
-    pub(crate) fn __reduce28<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+, FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(137);
-        let __sym4 = __pop_Variant21(__symbols);
-        let __sym3 = __pop_Variant0(__symbols);
-        let __sym2 = __pop_Variant21(__symbols);
-        let __sym1 = __pop_Variant10(__symbols);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym4.2.clone();
-        let __nt = super::__action137::<>(__sym0, __sym1, __sym2, __sym3, __sym4);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (5, 17)
-    }
-    pub(crate) fn __reduce29<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // @L =  => ActionFn(103);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action103::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant12(__nt), __end));
-        (0, 18)
-    }
-    pub(crate) fn __reduce30<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // @R =  => ActionFn(96);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action96::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant12(__nt), __end));
-        (0, 19)
-    }
-    pub(crate) fn __reduce31<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ArgumentExpression = Expression => ActionFn(48);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action48::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 20)
-    }
-    pub(crate) fn __reduce32<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ArgumentExpression = BareExpression => ActionFn(49);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action49::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 20)
-    }
-    pub(crate) fn __reduce33<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Bare = "bare" => ActionFn(61);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action61::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant13(__nt), __end));
-        (1, 21)
-    }
-    pub(crate) fn __reduce34<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BareExpression = Bare => ActionFn(179);
-        let __sym0 = __pop_Variant13(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action179::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 22)
-    }
-    pub(crate) fn __reduce35<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Binary = ArgumentExpression, SpannedOperator, ArgumentExpression => ActionFn(180);
-        let __sym2 = __pop_Variant6(__symbols);
-        let __sym1 = __pop_Variant27(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action180::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 23)
-    }
-    pub(crate) fn __reduce36<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Block = "{", SingleExpression, "}" => ActionFn(181);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action181::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant14(__nt), __end));
-        (3, 24)
-    }
-    pub(crate) fn __reduce37<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Block = "{", BareExpression, "}" => ActionFn(182);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action182::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant14(__nt), __end));
-        (3, 24)
-    }
-    pub(crate) fn __reduce38<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BlockExpression = "{", SingleExpression, "}" => ActionFn(183);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action183::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 25)
-    }
-    pub(crate) fn __reduce39<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BlockExpression = "{", BareExpression, "}" => ActionFn(184);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action184::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 25)
-    }
-    pub(crate) fn __reduce40<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = Expression, SingleCallArgument => ActionFn(185);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action185::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 26)
-    }
-    pub(crate) fn __reduce41<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = Expression, CallArgument, (<CallArgument>)+ => ActionFn(186);
-        let __sym2 = __pop_Variant7(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action186::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 26)
-    }
-    pub(crate) fn __reduce42<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = BareExpression, SingleCallArgument => ActionFn(187);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action187::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 26)
-    }
-    pub(crate) fn __reduce43<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = BareExpression, CallArgument, (<CallArgument>)+ => ActionFn(188);
-        let __sym2 = __pop_Variant7(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action188::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 26)
-    }
-    pub(crate) fn __reduce44<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CallArgument = ArgumentExpression => ActionFn(50);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action50::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 27)
-    }
-    pub(crate) fn __reduce45<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CallArgument = Flag => ActionFn(51);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action51::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 27)
-    }
-    pub(crate) fn __reduce46<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = FormalParameter => ActionFn(218);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action218::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 28)
-    }
-    pub(crate) fn __reduce47<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> =  => ActionFn(219);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action219::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (0, 28)
-    }
-    pub(crate) fn __reduce48<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+, FormalParameter => ActionFn(220);
-        let __sym1 = __pop_Variant10(__symbols);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action220::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (2, 28)
-    }
-    pub(crate) fn __reduce49<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ => ActionFn(221);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action221::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 28)
-    }
-    pub(crate) fn __reduce50<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CommandName = "command-name" => ActionFn(189);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action189::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant16(__nt), __end));
-        (1, 29)
-    }
-    pub(crate) fn __reduce51<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Expression = MemberHeadExpression => ActionFn(46);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action46::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 30)
-    }
-    pub(crate) fn __reduce52<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Expression = MemberHeadExpression, ("???." <Member>)+ => ActionFn(190);
-        let __sym1 = __pop_Variant4(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action190::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 30)
-    }
-    pub(crate) fn __reduce53<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Flag = "-", Bare => ActionFn(191);
-        let __sym1 = __pop_Variant13(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action191::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 31)
-    }
-    pub(crate) fn __reduce54<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Flag = "--", Bare => ActionFn(192);
-        let __sym1 = __pop_Variant13(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action192::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 31)
-    }
-    pub(crate) fn __reduce55<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter = ParameterName, ":", Type => ActionFn(193);
-        let __sym2 = __pop_Variant1(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant23(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action193::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant10(__nt), __end));
-        (3, 32)
-    }
-    pub(crate) fn __reduce56<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter? = FormalParameter => ActionFn(106);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action106::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant17(__nt), __end));
-        (1, 33)
-    }
-    pub(crate) fn __reduce57<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter? =  => ActionFn(107);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action107::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant17(__nt), __end));
-        (0, 33)
-    }
-    pub(crate) fn __reduce58<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Function = "function", CommandName, "start-params", ParameterList, "end-params", "->", Type, Block => ActionFn(194);
-        let __sym7 = __pop_Variant14(__symbols);
-        let __sym6 = __pop_Variant1(__symbols);
-        let __sym5 = __pop_Variant0(__symbols);
-        let __sym4 = __pop_Variant0(__symbols);
-        let __sym3 = __pop_Variant15(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym7.2.clone();
-        let __nt = super::__action194::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6, __sym7);
-        __symbols.push((__start, __Symbol::Variant18(__nt), __end));
-        (8, 34)
-    }
-    pub(crate) fn __reduce59<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Function = "function", CommandName, "start-params", ParameterList, "end-params", Block => ActionFn(195);
-        let __sym5 = __pop_Variant14(__symbols);
-        let __sym4 = __pop_Variant0(__symbols);
-        let __sym3 = __pop_Variant15(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym5.2.clone();
-        let __nt = super::__action195::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
-        __symbols.push((__start, __Symbol::Variant18(__nt), __end));
-        (6, 34)
-    }
-    pub(crate) fn __reduce60<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Int = "num" => ActionFn(73);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action73::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant19(__nt), __end));
-        (1, 35)
-    }
-    pub(crate) fn __reduce61<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Item = Pipeline => ActionFn(196);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action196::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (1, 36)
-    }
-    pub(crate) fn __reduce62<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Item = Function => ActionFn(197);
-        let __sym0 = __pop_Variant18(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action197::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (1, 36)
-    }
-    pub(crate) fn __reduce63<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = String => ActionFn(28);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action28::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce64<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = Int => ActionFn(198);
-        let __sym0 = __pop_Variant19(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action198::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce65<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = UnitsNum => ActionFn(30);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action30::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce66<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = Var => ActionFn(31);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action31::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce67<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "member" => ActionFn(62);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action62::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce68<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "dqmember" => ActionFn(63);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action63::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce69<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "sqmember" => ActionFn(64);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action64::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce70<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "function" => ActionFn(65);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action65::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce71<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = LeafExpression => ActionFn(41);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action41::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 39)
-    }
-    pub(crate) fn __reduce72<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = BlockExpression => ActionFn(42);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action42::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 39)
-    }
-    pub(crate) fn __reduce73<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", Call, ")" => ActionFn(199);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action199::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce74<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", BareExpression, ")" => ActionFn(200);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action200::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce75<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", Binary, ")" => ActionFn(201);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action201::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce76<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Module = Item => ActionFn(202);
-        let __sym0 = __pop_Variant8(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action202::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (1, 40)
-    }
-    pub(crate) fn __reduce77<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Module = Item, (("newline")+ <Item>)+ => ActionFn(203);
-        let __sym1 = __pop_Variant9(__symbols);
-        let __sym0 = __pop_Variant8(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action203::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (2, 40)
-    }
-    pub(crate) fn __reduce78<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Newlines = ("newline")+ => ActionFn(59);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action59::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (1, 41)
-    }
-    pub(crate) fn __reduce79<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "==" => ActionFn(67);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action67::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce80<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "!=" => ActionFn(68);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action68::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce81<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "<" => ActionFn(69);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action69::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce82<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = ">" => ActionFn(70);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action70::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce83<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "<=" => ActionFn(71);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action71::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce84<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = ">=" => ActionFn(72);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action72::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce85<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // OptionalNewlines =  => ActionFn(122);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action122::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (0, 43)
-    }
-    pub(crate) fn __reduce86<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // OptionalNewlines = ("newline")+ => ActionFn(123);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action123::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (1, 43)
-    }
-    pub(crate) fn __reduce87<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterList = Comma<FormalParameter> => ActionFn(7);
-        let __sym0 = __pop_Variant15(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action7::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 44)
-    }
-    pub(crate) fn __reduce88<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = "-", SpannedBare => ActionFn(204);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action204::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (2, 45)
-    }
-    pub(crate) fn __reduce89<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = "--", SpannedBare => ActionFn(205);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action205::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (2, 45)
-    }
-    pub(crate) fn __reduce90<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = ParameterVariable => ActionFn(206);
-        let __sym0 = __pop_Variant24(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action206::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (1, 45)
-    }
-    pub(crate) fn __reduce91<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterVariable = "$", "variable" => ActionFn(207);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action207::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant24(__nt), __end));
-        (2, 46)
-    }
-    pub(crate) fn __reduce92<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Pipeline = PipelineElement => ActionFn(208);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action208::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 47)
-    }
-    pub(crate) fn __reduce93<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Pipeline = PipelineElement, ("|" <PipelineElement>)+ => ActionFn(209);
-        let __sym1 = __pop_Variant7(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action209::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (2, 47)
-    }
-    pub(crate) fn __reduce94<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // PipelineElement = BareExpression => ActionFn(210);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action210::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 48)
-    }
-    pub(crate) fn __reduce95<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // PipelineElement = SingleExpression => ActionFn(27);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action27::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 48)
-    }
-    pub(crate) fn __reduce96<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "any" => ActionFn(14);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action14::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce97<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "int" => ActionFn(15);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action15::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce98<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "decimal" => ActionFn(16);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action16::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce99<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "bytes" => ActionFn(17);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action17::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce100<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "text" => ActionFn(18);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action18::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce101<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "boolean" => ActionFn(19);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action19::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce102<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "date" => ActionFn(20);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action20::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce103<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "object" => ActionFn(21);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action21::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce104<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "list" => ActionFn(22);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action22::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce105<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "block" => ActionFn(23);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action23::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce106<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ReplLine = Pipeline => ActionFn(124);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action124::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 50)
-    }
-    pub(crate) fn __reduce107<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ReplLine = Pipeline, ("newline")+ => ActionFn(125);
-        let __sym1 = __pop_Variant5(__symbols);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action125::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (2, 50)
-    }
-    pub(crate) fn __reduce108<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleCallArgument = CallArgument => ActionFn(52);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action52::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 51)
-    }
-    pub(crate) fn __reduce109<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleCallArgument = Binary => ActionFn(53);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action53::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 51)
-    }
-    pub(crate) fn __reduce110<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Expression => ActionFn(54);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action54::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce111<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Call => ActionFn(55);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action55::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce112<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Binary => ActionFn(56);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action56::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce113<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SpannedBare = Bare => ActionFn(211);
-        let __sym0 = __pop_Variant13(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action211::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant16(__nt), __end));
-        (1, 53)
-    }
-    pub(crate) fn __reduce114<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SpannedOperator = Operator => ActionFn(212);
-        let __sym0 = __pop_Variant22(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action212::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant27(__nt), __end));
-        (1, 54)
-    }
-    pub(crate) fn __reduce115<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // String = "sqstring" => ActionFn(213);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action213::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 55)
-    }
-    pub(crate) fn __reduce116<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // String = "dqstring" => ActionFn(214);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action214::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 55)
-    }
-    pub(crate) fn __reduce117<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Type = RawType => ActionFn(215);
-        let __sym0 = __pop_Variant26(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action215::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant1(__nt), __end));
-        (1, 56)
-    }
-    pub(crate) fn __reduce118<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // UnitsNum = Int, "unit" => ActionFn(216);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant19(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action216::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 57)
-    }
-    pub(crate) fn __reduce119<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Var = "$", "variable" => ActionFn(217);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action217::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 58)
-    }
-    pub(crate) fn __reduce121<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // __Module = Module => ActionFn(0);
-        let __sym0 = __pop_Variant20(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action0::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (1, 60)
-    }
-    pub(crate) fn __reduce122<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // __ReplLine = ReplLine => ActionFn(1);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action1::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 61)
-    }
-}
-pub use self::__parse__Call::CallParser;
-
-#[cfg_attr(rustfmt, rustfmt_skip)]
-mod __parse__Module {
-    #![allow(non_snake_case, non_camel_case_types, unused_mut, unused_variables, unused_imports, unused_parens)]
-
-    use std::str::FromStr;
-    use crate::parser::ast::expression::*;
-    use crate::parser::ast::module::*;
-    use crate::parser::ast::parser_utils::*;
-    use crate::parser::ast::{ExpressionBuilder, ModuleBuilder};
-    use crate::prelude::*;
-    use crate::parser::lexer::{SpannedToken, Spanned, Span, Token};
-    use byte_unit::Byte;
-    #[allow(unused_extern_crates)]
-    extern crate lalrpop_util as __lalrpop_util;
-    #[allow(unused_imports)]
-    use self::__lalrpop_util::state_machine as __state_machine;
-    use super::__ToTriple;
-    #[allow(dead_code)]
-    pub enum __Symbol<'input>
-     {
-        Variant0(SpannedToken<'input>),
-        Variant1(Spanned<Type>),
-        Variant2(::std::option::Option<Spanned<Type>>),
-        Variant3(Spanned<String>),
-        Variant4(::std::vec::Vec<Spanned<String>>),
-        Variant5(::std::vec::Vec<SpannedToken<'input>>),
-        Variant6(Expression),
-        Variant7(::std::vec::Vec<Expression>),
-        Variant8(Item),
-        Variant9(::std::vec::Vec<Item>),
-        Variant10(FormalParameter),
-        Variant11(::std::vec::Vec<FormalParameter>),
-        Variant12(usize),
-        Variant13(Bare),
-        Variant14(Spanned<Block>),
-        Variant15(Vec<FormalParameter>),
-        Variant16(Spanned<Bare>),
-        Variant17(::std::option::Option<FormalParameter>),
-        Variant18(Function),
-        Variant19(i64),
-        Variant20(Module),
-        Variant21(()),
-        Variant22(Operator),
-        Variant23(ParameterIdentifier),
-        Variant24(Spanned<Variable>),
-        Variant25(Pipeline),
-        Variant26(Type),
-        Variant27(Spanned<Operator>),
-    }
-    const __ACTION: &'static [i16] = &[
-        // State 0
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 25, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 1
-        31, 0, 0, 0, 0, 0, 0, 0, 0, 32, 33, 34, 35, 36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 2
-        -35, -35, -35, -35, 0, -35, -35, 0, 0, -35, -35, -35, -35, -35, 0, 0, -35, 0, 0, 0, 0, 0, 0, 0, -35, 0, 0, 0, 0, 0, -35, -35, 0, 0, -35, 0, 0, 0, 0, -35, -35, -35,
-        // State 3
-        -33, 21, 22, 0, 0, 44, 45, 0, 0, -33, -33, -33, -33, -33, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, -95, 26, 0, 0, 27, 0, 0, 0, 0, 28, -95, 0,
-        // State 4
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113, -113,
-        // State 5
-        -73, -73, -73, -73, 0, -73, -73, 0, 0, -73, -73, -73, -73, -73, -73, 0, -73, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, 0, 0, -73, -73, 0, 0, -73, 0, 0, 0, 0, -73, -73, -73,
-        // State 6
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -112, 0, 0, 0, 0, 0, 0, 0, 0, 0, -112, -112,
-        // State 7
-        -32, 21, 22, 0, 0, 44, 45, 0, 0, -32, -32, -32, -32, -32, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, -111, 26, 0, 0, 27, 0, 0, 0, 0, 28, -111, -111,
-        // State 8
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 9
-        -65, -65, -65, -65, 0, -65, -65, 0, 0, -65, -65, -65, -65, -65, -65, 0, -65, 0, 0, 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, 0, -65, -65, 0, 0, -65, 0, 0, 48, 0, -65, -65, -65,
-        // State 10
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 11
-        -72, -72, -72, -72, 0, -72, -72, 0, 0, -72, -72, -72, -72, -72, -72, 0, -72, 0, 0, 0, 0, 0, 0, 0, -72, 0, 0, 0, 0, 0, -72, -72, 0, 0, -72, 0, 0, 0, 0, -72, -72, -72,
-        // State 12
-        -52, -52, -52, -52, 0, -52, -52, 0, 0, -52, -52, -52, -52, -52, 53, 0, -52, 0, 0, 0, 0, 0, 0, 0, -52, 0, 0, 0, 0, 0, -52, -52, 0, 0, -52, 0, 0, 0, 0, -52, -52, -52,
-        // State 13
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 14
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 15
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 55, 0,
-        // State 16
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -96, 0, 0, 0, 0, 0, 0, 0, 0, 0, -96, 0,
-        // State 17
-        -64, -64, -64, -64, 0, -64, -64, 0, 0, -64, -64, -64, -64, -64, -64, 0, -64, 0, 0, 0, 0, 0, 0, 0, -64, 0, 0, 0, 0, 0, -64, -64, 0, 0, -64, 0, 0, 0, 0, -64, -64, -64,
-        // State 18
-        -66, -66, -66, -66, 0, -66, -66, 0, 0, -66, -66, -66, -66, -66, -66, 0, -66, 0, 0, 0, 0, 0, 0, 0, -66, 0, 0, 0, 0, 0, -66, -66, 0, 0, -66, 0, 0, 0, 0, -66, -66, -66,
-        // State 19
-        -67, -67, -67, -67, 0, -67, -67, 0, 0, -67, -67, -67, -67, -67, -67, 0, -67, 0, 0, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0, 0, -67, -67, 0, 0, -67, 0, 0, 0, 0, -67, -67, -67,
-        // State 20
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 56, 0, 0, 0,
-        // State 21
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 22
-        -34, -34, -34, -34, 0, -34, -34, 0, -34, -34, -34, -34, -34, -34, 0, 0, -34, 0, 0, 0, 0, 0, 0, 0, -34, 0, 0, 0, 0, 0, -34, -34, 0, 0, -34, 0, 0, 0, 0, -34, -34, -34,
-        // State 23
-        -117, -117, -117, -117, 0, -117, -117, 0, 0, -117, -117, -117, -117, -117, -117, 0, -117, 0, 0, 0, 0, 0, 0, 0, -117, 0, 0, 0, 0, 0, -117, -117, 0, 0, -117, 0, 0, 0, 0, -117, -117, -117,
-        // State 24
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 62, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 25
-        -61, -61, -61, -61, 0, -61, -61, 0, 0, -61, -61, -61, -61, -61, -61, 0, -61, 0, 0, 0, 0, 0, 0, 0, -61, 0, 0, 0, 0, 0, -61, -61, 0, 0, -61, 0, 0, -61, 0, -61, -61, -61,
-        // State 26
-        -116, -116, -116, -116, 0, -116, -116, 0, 0, -116, -116, -116, -116, -116, -116, 0, -116, 0, 0, 0, 0, 0, 0, 0, -116, 0, 0, 0, 0, 0, -116, -116, 0, 0, -116, 0, 0, 0, 0, -116, -116, -116,
-        // State 27
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 28
-        0, -115, -115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 0, -115, 0, 0, -115, 0, 0, 0, 0, -115, 0, 0,
-        // State 29
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 30
-        0, -81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, 0, 0, 0, -81, 0, 0, -81, 0, 0, 0, 0, -81, 0, 0,
-        // State 31
-        0, -82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, 0, 0, 0, 0, 0, 0, 0, -82, 0, 0, 0, 0, 0, 0, -82, 0, 0, -82, 0, 0, 0, 0, -82, 0, 0,
-        // State 32
-        0, -84, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, 0, 0, 0, 0, 0, 0, 0, -84, 0, 0, 0, 0, 0, 0, -84, 0, 0, -84, 0, 0, 0, 0, -84, 0, 0,
-        // State 33
-        0, -80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, 0, 0, 0, 0, 0, 0, 0, -80, 0, 0, 0, 0, 0, 0, -80, 0, 0, -80, 0, 0, 0, 0, -80, 0, 0,
-        // State 34
-        0, -83, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, 0, 0, 0, 0, 0, 0, 0, -83, 0, 0, 0, 0, 0, 0, -83, 0, 0, -83, 0, 0, 0, 0, -83, 0, 0,
-        // State 35
-        0, -85, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, 0, 0, 0, 0, 0, 0, 0, -85, 0, 0, 0, 0, 0, 0, -85, 0, 0, -85, 0, 0, 0, 0, -85, 0, 0,
-        // State 36
-        31, -45, -45, -45, 0, -45, -45, 0, 0, 32, 33, 34, 35, 36, 0, 0, -45, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, -45, -45, 0, 0, -45, 0, 0, 0, 0, -45, -45, -45,
-        // State 37
-        -33, -33, -33, -33, 0, -33, -33, 0, 0, -33, -33, -33, -33, -33, 0, 0, -33, 0, 0, 0, 0, 0, 0, 0, -33, 0, 0, 0, 0, 0, -33, -33, 0, 0, -33, 0, 0, 0, 0, -33, -33, -33,
-        // State 38
-        0, 0, 0, -110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -110, 0, 0, 0, 0, 0, 0, 0, 0, 0, -110, -110,
-        // State 39
-        0, 21, 22, -109, 0, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, -109, 26, 0, 0, 27, 0, 0, 0, 0, 28, -109, -109,
-        // State 40
-        -32, -32, -32, -32, 0, -32, -32, 0, 0, -32, -32, -32, -32, -32, 0, 0, -32, 0, 0, 0, 0, 0, 0, 0, -32, 0, 0, 0, 0, 0, -32, -32, 0, 0, -32, 0, 0, 0, 0, -32, -32, -32,
-        // State 41
-        0, -46, -46, -46, 0, -46, -46, 0, 0, 0, 0, 0, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, -46, -46, 0, 0, -46, 0, 0, 0, 0, -46, -46, -46,
-        // State 42
-        0, 0, 0, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, -43, -43,
-        // State 43
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 44
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 45
-        0, 21, 22, -109, 0, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, -109, 26, 0, 0, 27, 0, 0, 0, 0, 28, -109, -109,
-        // State 46
-        0, 0, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41, -41,
-        // State 47
-        -119, -119, -119, -119, 0, -119, -119, 0, 0, -119, -119, -119, -119, -119, -119, 0, -119, 0, 0, 0, 0, 0, 0, 0, -119, 0, 0, 0, 0, 0, -119, -119, 0, 0, -119, 0, 0, 0, 0, -119, -119, -119,
-        // State 48
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 25, 0, 0, 0, 73, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 49
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 50
-        0, -10, -10, 0, -10, -10, -10, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, 0, 0, 0, 0, 0, 0, -10, -10, -10, 0, 0, 0, -10, -10, 0, 0, -10, 0, 0, 0, 0, -10, 0, 0,
-        // State 51
-        -53, -53, -53, -53, 0, -53, -53, 0, 0, -53, -53, -53, -53, -53, 75, 0, -53, 0, 0, 0, 0, 0, 0, 0, -53, 0, 0, 0, 0, 0, -53, -53, 0, 0, -53, 0, 0, 0, 0, -53, -53, -53,
-        // State 52
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 78, 0, 0, 79, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 53
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0,
-        // State 54
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 55
-        -120, -120, -120, -120, 0, -120, -120, 0, 0, -120, -120, -120, -120, -120, -120, 0, -120, 0, 0, 0, 0, 0, 0, 0, -120, 0, 0, 0, 0, 0, -120, -120, 0, 0, -120, 0, 0, 0, 0, -120, -120, -120,
-        // State 56
-        -33, 21, 22, 83, 0, 44, 45, 0, 0, -33, -33, -33, -33, -33, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 57
-        0, 0, 0, 84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 58
-        0, 0, 0, 85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 59
-        -32, 21, 22, 0, 0, 44, 45, 0, 0, -32, -32, -32, -32, -32, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 60
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 86, 0, 0, 0, 0, 0, 0,
-        // State 61
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -51, 0, 0, 0, 0, 0, 0,
-        // State 62
-        -33, 21, 22, 0, 0, 44, 45, 0, 0, -33, -33, -33, -33, -33, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 87,
-        // State 63
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 88,
-        // State 64
-        0, 0, 0, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, -36,
-        // State 65
-        0, 21, 22, -44, 0, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, -44, 26, 0, 0, 27, 0, 0, 0, 0, 28, -44, -44,
-        // State 66
-        0, -45, -45, -45, 0, -45, -45, 0, 0, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, -45, -45, 0, 0, -45, 0, 0, 0, 0, -45, -45, -45,
-        // State 67
-        0, -23, -23, -23, 0, -23, -23, 0, 0, 0, 0, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, -23, -23, 0, 0, -23, 0, 0, 0, 0, -23, -23, -23,
-        // State 68
-        0, -54, -54, -54, 0, -54, -54, 0, 0, 0, 0, 0, 0, 0, 0, 0, -54, 0, 0, 0, 0, 0, 0, 0, -54, 0, 0, 0, 0, 0, -54, -54, 0, 0, -54, 0, 0, 0, 0, -54, -54, -54,
-        // State 69
-        0, -55, -55, -55, 0, -55, -55, 0, 0, 0, 0, 0, 0, 0, 0, 0, -55, 0, 0, 0, 0, 0, 0, 0, -55, 0, 0, 0, 0, 0, -55, -55, 0, 0, -55, 0, 0, 0, 0, -55, -55, -55,
-        // State 70
-        0, 21, 22, -42, 0, 44, 45, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, -42, 26, 0, 0, 27, 0, 0, 0, 0, 28, -42, -42,
-        // State 71
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 72
-        0, -11, -11, 0, -11, -11, -11, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0, 0, 0, 0, 0, 0, 0, -11, -11, -11, 0, 0, 0, -11, -11, 0, 0, -11, 0, 0, 0, 0, -11, 0, 0,
-        // State 73
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 25, 0, 0, 0, 73, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 74
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 77, 0, 0, 78, 0, 0, 79, 0, 0, 0, 80, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 75
-        -5, -5, -5, -5, 0, -5, -5, 0, 0, -5, -5, -5, -5, -5, -5, 0, -5, 0, 0, 0, 0, 0, 0, 0, -5, 0, 0, 0, 0, 0, -5, -5, 0, 0, -5, 0, 0, 0, 0, -5, -5, -5,
-        // State 76
-        -69, -69, -69, -69, 0, -69, -69, 0, 0, -69, -69, -69, -69, -69, -69, 0, -69, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, 0, 0, -69, -69, 0, 0, -69, 0, 0, 0, 0, -69, -69, -69,
-        // State 77
-        -71, -71, -71, -71, 0, -71, -71, 0, 0, -71, -71, -71, -71, -71, -71, 0, -71, 0, 0, 0, 0, 0, 0, 0, -71, 0, 0, 0, 0, 0, -71, -71, 0, 0, -71, 0, 0, 0, 0, -71, -71, -71,
-        // State 78
-        -68, -68, -68, -68, 0, -68, -68, 0, 0, -68, -68, -68, -68, -68, -68, 0, -68, 0, 0, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0, 0, -68, -68, 0, 0, -68, 0, 0, 0, 0, -68, -68, -68,
-        // State 79
-        -70, -70, -70, -70, 0, -70, -70, 0, 0, -70, -70, -70, -70, -70, -70, 0, -70, 0, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, -70, -70, 0, 0, -70, 0, 0, 0, 0, -70, -70, -70,
-        // State 80
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 81
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15, 0,
-        // State 82
-        -75, -75, -75, -75, 0, -75, -75, 0, 0, -75, -75, -75, -75, -75, -75, 0, -75, 0, 0, 0, 0, 0, 0, 0, -75, 0, 0, 0, 0, 0, -75, -75, 0, 0, -75, 0, 0, 0, 0, -75, -75, -75,
-        // State 83
-        -76, -76, -76, -76, 0, -76, -76, 0, 0, -76, -76, -76, -76, -76, -76, 0, -76, 0, 0, 0, 0, 0, 0, 0, -76, 0, 0, 0, 0, 0, -76, -76, 0, 0, -76, 0, 0, 0, 0, -76, -76, -76,
-        // State 84
-        -74, -74, -74, -74, 0, -74, -74, 0, 0, -74, -74, -74, -74, -74, -74, 0, -74, 0, 0, 0, 0, 0, 0, 0, -74, 0, 0, 0, 0, 0, -74, -74, 0, 0, -74, 0, 0, 0, 0, -74, -74, -74,
-        // State 85
-        0, 99, 0, 0, 0, 100, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 86
-        -40, -40, -40, -40, 0, -40, -40, 0, 0, -40, -40, -40, -40, -40, -40, 0, -40, 0, 0, 0, 0, 0, 0, 0, -40, 0, 0, 0, 0, 0, -40, -40, 0, 0, -40, 0, 0, 0, 0, -40, -40, -40,
-        // State 87
-        -39, -39, -39, -39, 0, -39, -39, 0, 0, -39, -39, -39, -39, -39, -39, 0, -39, 0, 0, 0, 0, 0, 0, 0, -39, 0, 0, 0, 0, 0, -39, -39, 0, 0, -39, 0, 0, 0, 0, -39, -39, -39,
-        // State 88
-        0, -24, -24, -24, 0, -24, -24, 0, 0, 0, 0, 0, 0, 0, 0, 0, -24, 0, 0, 0, 0, 0, 0, 0, -24, 0, 0, 0, 0, 0, -24, -24, 0, 0, -24, 0, 0, 0, 0, -24, -24, -24,
-        // State 89
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 90
-        -6, -6, -6, -6, 0, -6, -6, 0, 0, -6, -6, -6, -6, -6, -6, 0, -6, 0, 0, 0, 0, 0, 0, 0, -6, 0, 0, 0, 0, 0, -6, -6, 0, 0, -6, 0, 0, 0, 0, -6, -6, -6,
-        // State 91
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, 0,
-        // State 92
-        0, 99, 0, 0, 0, 100, 101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 93
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -88, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 94
-        0, 0, 0, 0, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -47, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 95
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 96
-        0, 0, 0, 0, 0, 0, 0, 0, 106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 97
-        0, 0, 0, 0, 0, 0, 0, 0, -91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 98
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 107, 0, 0, 0,
-        // State 99
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 100
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 101
-        0, 0, 0, 0, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -49, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 102
-        0, -87, 0, 0, -87, -87, -87, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -87, 0, 0, 0, 0, 73, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 103
-        0, 0, 0, 0, 112, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 104
-        0, 0, 0, 0, 0, 0, 0, 114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 115, 0, 0,
-        // State 105
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 0, 119, 120, 121, 0, 122, 123, 0, 0, 0, 0, 124, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 0, 0,
-        // State 106
-        0, 0, 0, 0, 0, 0, 0, 0, -92, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 107
-        0, 0, 0, 0, 0, 0, 0, 0, -114, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 108
-        0, 0, 0, 0, 0, 0, 0, 0, -89, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 109
-        0, 0, 0, 0, 0, 0, 0, 0, -90, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 110
-        0, 0, 0, 0, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 111
-        0, -86, 0, 0, 0, -86, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 112
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -60, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 113
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 118, 0, 119, 120, 121, 0, 122, 123, 0, 0, 0, 0, 124, 125, 0, 0, 0, 126, 0, 0, 0, 127, 0, 0, 0, 0, 0,
-        // State 114
-        0, 21, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 0,
-        // State 115
-        0, 0, 0, 0, -118, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -118, 0, 0, 0, 0, -118, 0, 0, 0, 0, 0, 0, 0, 0, -118, 0, 0,
-        // State 116
-        0, 0, 0, 0, -56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -56, 0, 0, 0, 0, -56, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 117
-        0, 0, 0, 0, -97, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -97, 0, 0, 0, 0, -97, 0, 0, 0, 0, 0, 0, 0, 0, -97, 0, 0,
-        // State 118
-        0, 0, 0, 0, -106, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -106, 0, 0, 0, 0, -106, 0, 0, 0, 0, 0, 0, 0, 0, -106, 0, 0,
-        // State 119
-        0, 0, 0, 0, -102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -102, 0, 0, 0, 0, -102, 0, 0, 0, 0, 0, 0, 0, 0, -102, 0, 0,
-        // State 120
-        0, 0, 0, 0, -100, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -100, 0, 0, 0, 0, -100, 0, 0, 0, 0, 0, 0, 0, 0, -100, 0, 0,
-        // State 121
-        0, 0, 0, 0, -103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -103, 0, 0, 0, 0, -103, 0, 0, 0, 0, 0, 0, 0, 0, -103, 0, 0,
-        // State 122
-        0, 0, 0, 0, -99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -99, 0, 0, 0, 0, -99, 0, 0, 0, 0, 0, 0, 0, 0, -99, 0, 0,
-        // State 123
-        0, 0, 0, 0, -98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -98, 0, 0, 0, 0, -98, 0, 0, 0, 0, 0, 0, 0, 0, -98, 0, 0,
-        // State 124
-        0, 0, 0, 0, -105, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -105, 0, 0, 0, 0, -105, 0, 0, 0, 0, 0, 0, 0, 0, -105, 0, 0,
-        // State 125
-        0, 0, 0, 0, -104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -104, 0, 0, 0, 0, -104, 0, 0, 0, 0, 0, 0, 0, 0, -104, 0, 0,
-        // State 126
-        0, 0, 0, 0, -101, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -101, 0, 0, 0, 0, -101, 0, 0, 0, 0, 0, 0, 0, 0, -101, 0, 0,
-        // State 127
-        0, -86, 0, 0, 0, -86, -86, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -86, 0, 0, 0, 0, 51, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 128
-        0, -28, 0, 0, 0, -28, -28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -28, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 129
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 115, 0, 0,
-        // State 130
-        -33, 21, 22, 0, 0, 44, 45, 0, 0, -33, -33, -33, -33, -33, 0, 0, 23, 0, 0, 0, 0, 0, 0, 0, 24, 0, 0, 0, 0, 0, 0, 26, 0, 0, 27, 0, 0, 0, 0, 28, 0, 135,
-        // State 131
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 136,
-        // State 132
-        0, -29, 0, 0, 0, -29, -29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 133
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -59, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 134
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -38, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 135
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -37, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    ];
-    const __EOF_ACTION: &'static [i16] = &[
-        // State 0
-        0,
-        // State 1
-        0,
-        // State 2
-        -35,
-        // State 3
-        -95,
-        // State 4
-        -113,
-        // State 5
-        -73,
-        // State 6
-        -112,
-        // State 7
-        -111,
-        // State 8
-        -63,
-        // State 9
-        -65,
-        // State 10
-        -77,
-        // State 11
-        -72,
-        // State 12
-        -52,
-        // State 13
-        -122,
-        // State 14
-        -62,
-        // State 15
-        -93,
-        // State 16
-        -96,
-        // State 17
-        -64,
-        // State 18
-        -66,
-        // State 19
-        -67,
-        // State 20
-        0,
-        // State 21
-        0,
-        // State 22
-        -34,
-        // State 23
-        -117,
-        // State 24
-        0,
-        // State 25
-        -61,
-        // State 26
-        -116,
-        // State 27
-        0,
-        // State 28
-        0,
-        // State 29
-        0,
-        // State 30
-        0,
-        // State 31
-        0,
-        // State 32
-        0,
-        // State 33
-        0,
-        // State 34
-        0,
-        // State 35
-        0,
-        // State 36
-        -45,
-        // State 37
-        -33,
-        // State 38
-        -110,
-        // State 39
-        -109,
-        // State 40
-        -32,
-        // State 41
-        -46,
-        // State 42
-        -43,
-        // State 43
-        0,
-        // State 44
-        0,
-        // State 45
-        -109,
-        // State 46
-        -41,
-        // State 47
-        -119,
-        // State 48
-        0,
-        // State 49
-        -78,
-        // State 50
-        0,
-        // State 51
-        -53,
-        // State 52
-        0,
-        // State 53
-        -94,
-        // State 54
-        0,
-        // State 55
-        -120,
-        // State 56
-        0,
-        // State 57
-        0,
-        // State 58
-        0,
-        // State 59
-        0,
-        // State 60
-        0,
-        // State 61
-        0,
-        // State 62
-        0,
-        // State 63
-        0,
-        // State 64
-        -36,
-        // State 65
-        -44,
-        // State 66
-        -45,
-        // State 67
-        -23,
-        // State 68
-        -54,
-        // State 69
-        -55,
-        // State 70
-        -42,
-        // State 71
-        -20,
-        // State 72
-        0,
-        // State 73
-        0,
-        // State 74
-        0,
-        // State 75
-        -5,
-        // State 76
-        -69,
-        // State 77
-        -71,
-        // State 78
-        -68,
-        // State 79
-        -70,
-        // State 80
-        0,
-        // State 81
-        -15,
-        // State 82
-        -75,
-        // State 83
-        -76,
-        // State 84
-        -74,
-        // State 85
-        0,
-        // State 86
-        -40,
-        // State 87
-        -39,
-        // State 88
-        -24,
-        // State 89
-        -21,
-        // State 90
-        -6,
-        // State 91
-        -16,
-        // State 92
-        0,
-        // State 93
-        0,
-        // State 94
-        0,
-        // State 95
-        0,
-        // State 96
-        0,
-        // State 97
-        0,
-        // State 98
-        0,
-        // State 99
-        0,
-        // State 100
-        0,
-        // State 101
-        0,
-        // State 102
-        0,
-        // State 103
-        0,
-        // State 104
-        0,
-        // State 105
-        0,
-        // State 106
-        0,
-        // State 107
-        0,
-        // State 108
-        0,
-        // State 109
-        0,
-        // State 110
-        0,
-        // State 111
-        0,
-        // State 112
-        -60,
-        // State 113
-        0,
-        // State 114
-        0,
-        // State 115
-        0,
-        // State 116
-        0,
-        // State 117
-        0,
-        // State 118
-        0,
-        // State 119
-        0,
-        // State 120
-        0,
-        // State 121
-        0,
-        // State 122
-        0,
-        // State 123
-        0,
-        // State 124
-        0,
-        // State 125
-        0,
-        // State 126
-        0,
-        // State 127
-        0,
-        // State 128
-        0,
-        // State 129
-        0,
-        // State 130
-        0,
-        // State 131
-        0,
-        // State 132
-        0,
-        // State 133
-        -59,
-        // State 134
-        -38,
-        // State 135
-        -37,
-    ];
-    const __GOTO: &'static [i16] = &[
-        // State 0
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 9, 10, 11, 12, 0, 13, 14, 0, 0, 0, 0, 0, 0, 15, 16, 0, 0, 0, 17, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 1
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0,
-        // State 2
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 3
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 3, 38, 39, 0, 6, 0, 40, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 4
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 5
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 6
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 7
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 3, 38, 39, 0, 6, 0, 46, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 8
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 9
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 10
-        0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 11
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 12
-        0, 0, 0, 52, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 13
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 14
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 15
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 54, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 16
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 17
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 18
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 19
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 20
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 21
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 57, 58, 0, 6, 59, 0, 0, 0, 60, 0, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 22
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 23
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 24
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 25
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 26
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 27
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 63, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 28
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 29
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 3, 38, 0, 0, 6, 0, 0, 0, 0, 41, 0, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 30
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 31
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 32
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 33
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 34
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 35
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 36
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 29, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 30, 0, 0, 0, 0, 0, 0, 0,
-        // State 37
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 38
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 39
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 66, 0, 0, 0, 0, 0, 67, 3, 38, 0, 0, 6, 0, 68, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 40
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 41
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 42
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 43
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 69, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 44
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 70, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 45
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 71, 0, 0, 0, 0, 0, 67, 3, 38, 0, 0, 6, 0, 68, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 46
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 47
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 48
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 9, 10, 72, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 15, 16, 0, 0, 0, 17, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 49
-        0, 0, 0, 0, 0, 0, 74, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 50
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 51
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 52
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 53
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 54
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 82, 0, 0, 0, 17, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 55
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 56
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 3, 38, 39, 0, 6, 0, 40, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 57
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 58
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 59
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 3, 38, 39, 0, 6, 0, 46, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 47, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 60
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 61
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 62
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 3, 38, 39, 0, 6, 0, 40, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 63
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 64
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 65
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 3, 38, 0, 0, 6, 0, 89, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 66
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 67
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 68
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 69
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 70
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 3, 38, 0, 0, 6, 0, 89, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 71
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 72
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 73
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 9, 10, 90, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 15, 16, 0, 0, 0, 17, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 74
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 91, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 75
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 76
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 77
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 78
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 79
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 80
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 92, 0, 0, 0, 17, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 81
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 82
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 83
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 84
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 85
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 94, 0, 0, 0, 95, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 96, 97, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 86
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 87
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 88
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 89
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 90
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 91
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 92
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 102, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 97, 98, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 93
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 94
-        0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 104, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 95
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 96
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 97
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 98
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 99
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 109, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 100
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 108, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 110, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 101
-        0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 111, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 102
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 103
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 104
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 113, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 105
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 117, 0, 0, 0, 0, 0,
-        // State 106
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 107
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 108
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 109
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 110
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 111
-        0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 129, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 112
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 113
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 116, 0, 0, 0, 0, 0, 0, 130, 0, 0, 0, 0, 0,
-        // State 114
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 131, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 132, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 115
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 116
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 117
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 118
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 119
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 120
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 121
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 122
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 123
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 124
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 125
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 126
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 127
-        0, 0, 0, 0, 0, 0, 103, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 133, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 128
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 129
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 134, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 130
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 37, 3, 38, 39, 0, 6, 0, 40, 0, 0, 41, 42, 0, 0, 0, 10, 0, 12, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 43, 0, 0, 0, 18, 0, 19, 20, 0, 0, 0,
-        // State 131
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 132
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 133
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 134
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 135
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    ];
-    fn __expected_tokens(__state: usize) -> Vec<::std::string::String> {
-        const __TERMINAL: &'static [&'static str] = &[
-            r###""!=""###,
-            r###""$""###,
-            r###""(""###,
-            r###"")""###,
-            r###"",""###,
-            r###""-""###,
-            r###""--""###,
-            r###""->""###,
-            r###"":""###,
-            r###""<""###,
-            r###""<=""###,
-            r###""==""###,
-            r###"">""###,
-            r###"">=""###,
-            r###""???.""###,
-            r###""any""###,
-            r###""bare""###,
-            r###""block""###,
-            r###""boolean""###,
-            r###""bytes""###,
-            r###""command-name""###,
-            r###""date""###,
-            r###""decimal""###,
-            r###""dqmember""###,
-            r###""dqstring""###,
-            r###""end-params""###,
-            r###""function""###,
-            r###""int""###,
-            r###""list""###,
-            r###""member""###,
-            r###""newline""###,
-            r###""num""###,
-            r###""object""###,
-            r###""sqmember""###,
-            r###""sqstring""###,
-            r###""start-params""###,
-            r###""text""###,
-            r###""unit""###,
-            r###""variable""###,
-            r###""{""###,
-            r###""|""###,
-            r###""}""###,
-        ];
-        __ACTION[(__state * 42)..].iter().zip(__TERMINAL).filter_map(|(&state, terminal)| {
-            if state == 0 {
-                None
-            } else {
-                Some(terminal.to_string())
-            }
-        }).collect()
-    }
-    pub struct __StateMachine<'input>
-    where 
-    {
-        __phantom: ::std::marker::PhantomData<(&'input ())>,
-    }
-    impl<'input> __state_machine::ParserDefinition for __StateMachine<'input>
-    where 
-    {
-        type Location = usize;
-        type Error = ShellError;
-        type Token = SpannedToken<'input>;
-        type TokenIndex = usize;
-        type Symbol = __Symbol<'input>;
-        type Success = Module;
-        type StateIndex = i16;
-        type Action = i16;
-        type ReduceIndex = i16;
-        type NonterminalIndex = usize;
-
-        #[inline]
-        fn start_location(&self) -> Self::Location {
-              Default::default()
-        }
-
-        #[inline]
-        fn start_state(&self) -> Self::StateIndex {
-              0
-        }
-
-        #[inline]
-        fn token_to_index(&self, token: &Self::Token) -> Option<usize> {
-            __token_to_integer(token, ::std::marker::PhantomData::<(&())>)
-        }
-
-        #[inline]
-        fn action(&self, state: i16, integer: usize) -> i16 {
-            __ACTION[(state as usize) * 42 + integer]
-        }
-
-        #[inline]
-        fn error_action(&self, state: i16) -> i16 {
-            __ACTION[(state as usize) * 42 + (42 - 1)]
-        }
-
-        #[inline]
-        fn eof_action(&self, state: i16) -> i16 {
-            __EOF_ACTION[state as usize]
-        }
-
-        #[inline]
-        fn goto(&self, state: i16, nt: usize) -> i16 {
-            __GOTO[(state as usize) * 62 + nt] - 1
-        }
-
-        fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol {
-            __token_to_symbol(token_index, token, ::std::marker::PhantomData::<(&())>)
-        }
-
-        fn expected_tokens(&self, state: i16) -> Vec<String> {
-            __expected_tokens(state as usize)
-        }
-
-        #[inline]
-        fn uses_error_recovery(&self) -> bool {
-            false
-        }
-
-        #[inline]
-        fn error_recovery_symbol(
-            &self,
-            recovery: __state_machine::ErrorRecovery<Self>,
-        ) -> Self::Symbol {
-            panic!("error recovery not enabled for this grammar")
-        }
-
-        fn reduce(
-            &mut self,
-            action: i16,
-            start_location: Option<&Self::Location>,
-            states: &mut Vec<i16>,
-            symbols: &mut Vec<__state_machine::SymbolTriple<Self>>,
-        ) -> Option<__state_machine::ParseResult<Self>> {
-            __reduce(
-                action,
-                start_location,
-                states,
-                symbols,
-                ::std::marker::PhantomData::<(&())>,
-            )
-        }
-
-        fn simulate_reduce(&self, action: i16) -> __state_machine::SimulatedReduce<Self> {
-            __simulate_reduce(action, ::std::marker::PhantomData::<(&())>)
-        }
-    }
-    fn __token_to_integer<
-        'input,
-    >(
-        __token: &SpannedToken<'input>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> Option<usize>
-    {
-        match *__token {
-            SpannedToken { token: Token::OpNeq, .. } if true => Some(0),
-            SpannedToken { token: Token::Dollar, .. } if true => Some(1),
-            SpannedToken { token: Token::OpenParen, .. } if true => Some(2),
-            SpannedToken { token: Token::CloseParen, .. } if true => Some(3),
-            SpannedToken { token: Token::Comma, .. } if true => Some(4),
-            SpannedToken { token: Token::Dash, .. } if true => Some(5),
-            SpannedToken { token: Token::DashDash, .. } if true => Some(6),
-            SpannedToken { token: Token::ReturnArrow, .. } if true => Some(7),
-            SpannedToken { token: Token::Colon, .. } if true => Some(8),
-            SpannedToken { token: Token::OpLt, .. } if true => Some(9),
-            SpannedToken { token: Token::OpLte, .. } if true => Some(10),
-            SpannedToken { token: Token::OpEq, .. } if true => Some(11),
-            SpannedToken { token: Token::OpGt, .. } if true => Some(12),
-            SpannedToken { token: Token::OpGte, .. } if true => Some(13),
-            SpannedToken { token: Token::PathDot, .. } if true => Some(14),
-            SpannedToken { token: Token::TyAny, .. } if true => Some(15),
-            SpannedToken { token: Token::Bare, .. } if true => Some(16),
-            SpannedToken { token: Token::TyBlock, .. } if true => Some(17),
-            SpannedToken { token: Token::TyBoolean, .. } if true => Some(18),
-            SpannedToken { token: Token::TyBytes, .. } if true => Some(19),
-            SpannedToken { token: Token::CommandName, .. } if true => Some(20),
-            SpannedToken { token: Token::TyDate, .. } if true => Some(21),
-            SpannedToken { token: Token::TyDecimal, .. } if true => Some(22),
-            SpannedToken { token: Token::SQMember, .. } if true => Some(23),
-            SpannedToken { token: Token::DQString, .. } if true => Some(24),
-            SpannedToken { token: Token::EndParamList, .. } if true => Some(25),
-            SpannedToken { token: Token::KeywordFunction, .. } if true => Some(26),
-            SpannedToken { token: Token::TyInt, .. } if true => Some(27),
-            SpannedToken { token: Token::TyList, .. } if true => Some(28),
-            SpannedToken { token: Token::Member, .. } if true => Some(29),
-            SpannedToken { token: Token::Newline, .. } if true => Some(30),
-            SpannedToken { token: Token::Num, .. } if true => Some(31),
-            SpannedToken { token: Token::TyObject, .. } if true => Some(32),
-            SpannedToken { token: Token::SQMember, .. } if true => Some(33),
-            SpannedToken { token: Token::SQString, .. } if true => Some(34),
-            SpannedToken { token: Token::StartParamList, .. } if true => Some(35),
-            SpannedToken { token: Token::TyText, .. } if true => Some(36),
-            SpannedToken { token: Token::Unit, .. } if true => Some(37),
-            SpannedToken { token: Token::Variable, .. } if true => Some(38),
-            SpannedToken { token: Token::OpenBrace, .. } if true => Some(39),
-            SpannedToken { token: Token::Pipe, .. } if true => Some(40),
-            SpannedToken { token: Token::CloseBrace, .. } if true => Some(41),
-            _ => None,
-        }
-    }
-    fn __token_to_symbol<
-        'input,
-    >(
-        __token_index: usize,
-        __token: SpannedToken<'input>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> __Symbol<'input>
-    {
-        match __token_index {
-            0 => match __token {
-                __tok @ SpannedToken { token: Token::OpNeq, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            1 => match __token {
-                __tok @ SpannedToken { token: Token::Dollar, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            2 => match __token {
-                __tok @ SpannedToken { token: Token::OpenParen, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            3 => match __token {
-                __tok @ SpannedToken { token: Token::CloseParen, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            4 => match __token {
-                __tok @ SpannedToken { token: Token::Comma, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            5 => match __token {
-                __tok @ SpannedToken { token: Token::Dash, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            6 => match __token {
-                __tok @ SpannedToken { token: Token::DashDash, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            7 => match __token {
-                __tok @ SpannedToken { token: Token::ReturnArrow, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            8 => match __token {
-                __tok @ SpannedToken { token: Token::Colon, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            9 => match __token {
-                __tok @ SpannedToken { token: Token::OpLt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            10 => match __token {
-                __tok @ SpannedToken { token: Token::OpLte, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            11 => match __token {
-                __tok @ SpannedToken { token: Token::OpEq, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            12 => match __token {
-                __tok @ SpannedToken { token: Token::OpGt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            13 => match __token {
-                __tok @ SpannedToken { token: Token::OpGte, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            14 => match __token {
-                __tok @ SpannedToken { token: Token::PathDot, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            15 => match __token {
-                __tok @ SpannedToken { token: Token::TyAny, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            16 => match __token {
-                __tok @ SpannedToken { token: Token::Bare, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            17 => match __token {
-                __tok @ SpannedToken { token: Token::TyBlock, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            18 => match __token {
-                __tok @ SpannedToken { token: Token::TyBoolean, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            19 => match __token {
-                __tok @ SpannedToken { token: Token::TyBytes, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            20 => match __token {
-                __tok @ SpannedToken { token: Token::CommandName, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            21 => match __token {
-                __tok @ SpannedToken { token: Token::TyDate, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            22 => match __token {
-                __tok @ SpannedToken { token: Token::TyDecimal, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            23 => match __token {
-                __tok @ SpannedToken { token: Token::SQMember, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            24 => match __token {
-                __tok @ SpannedToken { token: Token::DQString, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            25 => match __token {
-                __tok @ SpannedToken { token: Token::EndParamList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            26 => match __token {
-                __tok @ SpannedToken { token: Token::KeywordFunction, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            27 => match __token {
-                __tok @ SpannedToken { token: Token::TyInt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            28 => match __token {
-                __tok @ SpannedToken { token: Token::TyList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            29 => match __token {
-                __tok @ SpannedToken { token: Token::Member, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            30 => match __token {
-                __tok @ SpannedToken { token: Token::Newline, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            31 => match __token {
-                __tok @ SpannedToken { token: Token::Num, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            32 => match __token {
-                __tok @ SpannedToken { token: Token::TyObject, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            33 => match __token {
-                __tok @ SpannedToken { token: Token::SQMember, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            34 => match __token {
-                __tok @ SpannedToken { token: Token::SQString, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            35 => match __token {
-                __tok @ SpannedToken { token: Token::StartParamList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            36 => match __token {
-                __tok @ SpannedToken { token: Token::TyText, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            37 => match __token {
-                __tok @ SpannedToken { token: Token::Unit, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            38 => match __token {
-                __tok @ SpannedToken { token: Token::Variable, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            39 => match __token {
-                __tok @ SpannedToken { token: Token::OpenBrace, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            40 => match __token {
-                __tok @ SpannedToken { token: Token::Pipe, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            41 => match __token {
-                __tok @ SpannedToken { token: Token::CloseBrace, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            _ => unreachable!(),
-        }
-    }
-    fn __simulate_reduce<
-        'input,
-    >(
-        __reduce_index: i16,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> __state_machine::SimulatedReduce<__StateMachine<'input>>
-    {
-        match __reduce_index {
-            0 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 0,
-                }
-            }
-            1 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 1,
-                }
-            }
-            2 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 1,
-                }
-            }
-            3 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 2,
-                }
-            }
-            4 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 3,
-                }
-            }
-            5 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 3,
-                }
-            }
-            6 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 4,
-                }
-            }
-            7 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 5,
-                }
-            }
-            8 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 5,
-                }
-            }
-            9 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 6,
-                }
-            }
-            10 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 6,
-                }
-            }
-            11 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 7,
-                }
-            }
-            12 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 8,
-                }
-            }
-            13 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 8,
-                }
-            }
-            14 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 9,
-                }
-            }
-            15 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 9,
-                }
-            }
-            16 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 10,
-                }
-            }
-            17 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 11,
-                }
-            }
-            18 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 11,
-                }
-            }
-            19 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 12,
-                }
-            }
-            20 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 12,
-                }
-            }
-            21 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 13,
-                }
-            }
-            22 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 14,
-                }
-            }
-            23 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 14,
-                }
-            }
-            24 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 4,
-                    nonterminal_produced: 15,
-                }
-            }
-            25 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 16,
-                }
-            }
-            26 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 16,
-                }
-            }
-            27 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 4,
-                    nonterminal_produced: 17,
-                }
-            }
-            28 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 5,
-                    nonterminal_produced: 17,
-                }
-            }
-            29 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 18,
-                }
-            }
-            30 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 19,
-                }
-            }
-            31 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 20,
-                }
-            }
-            32 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 20,
-                }
-            }
-            33 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 21,
-                }
-            }
-            34 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 22,
-                }
-            }
-            35 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 23,
-                }
-            }
-            36 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 24,
-                }
-            }
-            37 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 24,
-                }
-            }
-            38 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 25,
-                }
-            }
-            39 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 25,
-                }
-            }
-            40 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 26,
-                }
-            }
-            41 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 26,
-                }
-            }
-            42 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 26,
-                }
-            }
-            43 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 26,
-                }
-            }
-            44 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 27,
-                }
-            }
-            45 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 27,
-                }
-            }
-            46 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 28,
-                }
-            }
-            47 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 28,
-                }
-            }
-            48 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 28,
-                }
-            }
-            49 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 28,
-                }
-            }
-            50 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 29,
-                }
-            }
-            51 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 30,
-                }
-            }
-            52 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 30,
-                }
-            }
-            53 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 31,
-                }
-            }
-            54 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 31,
-                }
-            }
-            55 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 32,
-                }
-            }
-            56 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 33,
-                }
-            }
-            57 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 33,
-                }
-            }
-            58 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 8,
-                    nonterminal_produced: 34,
-                }
-            }
-            59 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 6,
-                    nonterminal_produced: 34,
-                }
-            }
-            60 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 35,
-                }
-            }
-            61 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 36,
-                }
-            }
-            62 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 36,
-                }
-            }
-            63 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            64 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            65 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            66 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            67 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            68 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            69 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            70 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            71 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 39,
-                }
-            }
-            72 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 39,
-                }
-            }
-            73 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            74 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            75 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            76 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 40,
-                }
-            }
-            77 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 40,
-                }
-            }
-            78 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 41,
-                }
-            }
-            79 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            80 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            81 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            82 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            83 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            84 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            85 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 43,
-                }
-            }
-            86 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 43,
-                }
-            }
-            87 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 44,
-                }
-            }
-            88 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 45,
-                }
-            }
-            89 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 45,
-                }
-            }
-            90 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 45,
-                }
-            }
-            91 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 46,
-                }
-            }
-            92 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 47,
-                }
-            }
-            93 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 47,
-                }
-            }
-            94 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 48,
-                }
-            }
-            95 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 48,
-                }
-            }
-            96 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            97 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            98 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            99 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            100 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            101 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            102 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            103 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            104 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            105 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            106 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 50,
-                }
-            }
-            107 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 50,
-                }
-            }
-            108 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 51,
-                }
-            }
-            109 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 51,
-                }
-            }
-            110 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            111 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            112 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            113 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 53,
-                }
-            }
-            114 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 54,
-                }
-            }
-            115 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 55,
-                }
-            }
-            116 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 55,
-                }
-            }
-            117 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 56,
-                }
-            }
-            118 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 57,
-                }
-            }
-            119 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 58,
-                }
-            }
-            120 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 59,
-                }
-            }
-            121 => __state_machine::SimulatedReduce::Accept,
-            122 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 61,
-                }
-            }
-            _ => panic!("invalid reduction index {}", __reduce_index)
-        }
-    }
-    pub struct ModuleParser {
-        _priv: (),
-    }
-
-    impl ModuleParser {
-        pub fn new() -> ModuleParser {
-            ModuleParser {
-                _priv: (),
-            }
-        }
-
-        #[allow(dead_code)]
-        pub fn parse<
-            'input,
-            __TOKEN: __ToTriple<'input, >,
-            __TOKENS: IntoIterator<Item=__TOKEN>,
-        >(
-            &self,
-            __tokens0: __TOKENS,
-        ) -> Result<Module, __lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>>
-        {
-            let __tokens = __tokens0.into_iter();
-            let mut __tokens = __tokens.map(|t| __ToTriple::to_triple(t));
-            let __r = __state_machine::Parser::drive(
-                __StateMachine {
-                    __phantom: ::std::marker::PhantomData::<(&())>,
-                },
-                __tokens,
-            );
-            __r
-        }
-    }
-    pub(crate) fn __reduce<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> Option<Result<Module,__lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>>>
-    {
-        let (__pop_states, __nonterminal) = match __action {
-            0 => {
-                __reduce0(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            1 => {
-                __reduce1(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            2 => {
-                __reduce2(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            3 => {
-                __reduce3(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            4 => {
-                __reduce4(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            5 => {
-                __reduce5(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            6 => {
-                __reduce6(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            7 => {
-                __reduce7(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            8 => {
-                __reduce8(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            9 => {
-                __reduce9(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            10 => {
-                __reduce10(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            11 => {
-                __reduce11(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            12 => {
-                __reduce12(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            13 => {
-                __reduce13(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            14 => {
-                __reduce14(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            15 => {
-                __reduce15(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            16 => {
-                __reduce16(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            17 => {
-                __reduce17(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            18 => {
-                __reduce18(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            19 => {
-                __reduce19(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            20 => {
-                __reduce20(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            21 => {
-                __reduce21(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            22 => {
-                __reduce22(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            23 => {
-                __reduce23(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            24 => {
-                __reduce24(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            25 => {
-                __reduce25(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            26 => {
-                __reduce26(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            27 => {
-                __reduce27(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            28 => {
-                __reduce28(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            29 => {
-                __reduce29(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            30 => {
-                __reduce30(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            31 => {
-                __reduce31(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            32 => {
-                __reduce32(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            33 => {
-                __reduce33(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            34 => {
-                __reduce34(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            35 => {
-                __reduce35(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            36 => {
-                __reduce36(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            37 => {
-                __reduce37(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            38 => {
-                __reduce38(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            39 => {
-                __reduce39(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            40 => {
-                __reduce40(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            41 => {
-                __reduce41(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            42 => {
-                __reduce42(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            43 => {
-                __reduce43(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            44 => {
-                __reduce44(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            45 => {
-                __reduce45(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            46 => {
-                __reduce46(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            47 => {
-                __reduce47(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            48 => {
-                __reduce48(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            49 => {
-                __reduce49(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            50 => {
-                __reduce50(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            51 => {
-                __reduce51(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            52 => {
-                __reduce52(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            53 => {
-                __reduce53(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            54 => {
-                __reduce54(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            55 => {
-                __reduce55(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            56 => {
-                __reduce56(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            57 => {
-                __reduce57(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            58 => {
-                __reduce58(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            59 => {
-                __reduce59(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            60 => {
-                __reduce60(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            61 => {
-                __reduce61(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            62 => {
-                __reduce62(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            63 => {
-                __reduce63(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            64 => {
-                __reduce64(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            65 => {
-                __reduce65(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            66 => {
-                __reduce66(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            67 => {
-                __reduce67(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            68 => {
-                __reduce68(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            69 => {
-                __reduce69(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            70 => {
-                __reduce70(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            71 => {
-                __reduce71(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            72 => {
-                __reduce72(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            73 => {
-                __reduce73(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            74 => {
-                __reduce74(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            75 => {
-                __reduce75(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            76 => {
-                __reduce76(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            77 => {
-                __reduce77(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            78 => {
-                __reduce78(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            79 => {
-                __reduce79(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            80 => {
-                __reduce80(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            81 => {
-                __reduce81(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            82 => {
-                __reduce82(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            83 => {
-                __reduce83(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            84 => {
-                __reduce84(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            85 => {
-                __reduce85(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            86 => {
-                __reduce86(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            87 => {
-                __reduce87(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            88 => {
-                __reduce88(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            89 => {
-                __reduce89(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            90 => {
-                __reduce90(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            91 => {
-                __reduce91(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            92 => {
-                __reduce92(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            93 => {
-                __reduce93(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            94 => {
-                __reduce94(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            95 => {
-                __reduce95(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            96 => {
-                __reduce96(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            97 => {
-                __reduce97(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            98 => {
-                __reduce98(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            99 => {
-                __reduce99(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            100 => {
-                __reduce100(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            101 => {
-                __reduce101(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            102 => {
-                __reduce102(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            103 => {
-                __reduce103(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            104 => {
-                __reduce104(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            105 => {
-                __reduce105(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            106 => {
-                __reduce106(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            107 => {
-                __reduce107(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            108 => {
-                __reduce108(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            109 => {
-                __reduce109(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            110 => {
-                __reduce110(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            111 => {
-                __reduce111(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            112 => {
-                __reduce112(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            113 => {
-                __reduce113(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            114 => {
-                __reduce114(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            115 => {
-                __reduce115(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            116 => {
-                __reduce116(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            117 => {
-                __reduce117(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            118 => {
-                __reduce118(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            119 => {
-                __reduce119(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            120 => {
-                __reduce120(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            121 => {
-                // __Module = Module => ActionFn(0);
-                let __sym0 = __pop_Variant20(__symbols);
-                let __start = __sym0.0.clone();
-                let __end = __sym0.2.clone();
-                let __nt = super::__action0::<>(__sym0);
-                return Some(Ok(__nt));
-            }
-            122 => {
-                __reduce122(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            _ => panic!("invalid action code {}", __action)
-        };
-        let __states_len = __states.len();
-        __states.truncate(__states_len - __pop_states);
-        let __state = *__states.last().unwrap() as usize;
-        let __next_state = __GOTO[__state * 62 + __nonterminal] - 1;
-        __states.push(__next_state);
-        None
-    }
-    fn __pop_Variant21<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, (), usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant21(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant13<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Bare, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant13(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant6<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Expression, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant6(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant10<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, FormalParameter, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant10(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant18<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Function, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant18(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant8<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Item, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant8(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant20<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Module, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant20(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant22<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Operator, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant22(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant23<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ParameterIdentifier, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant23(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant25<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Pipeline, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant25(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant16<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Bare>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant16(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant14<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Block>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant14(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant27<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Operator>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant27(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant3<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<String>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant3(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant1<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Type>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant1(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant24<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Variable>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant24(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant0<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, SpannedToken<'input>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant0(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant26<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Type, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant26(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant15<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Vec<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant15(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant19<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, i64, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant19(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant12<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, usize, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant12(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant17<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::option::Option<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant17(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant2<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::option::Option<Spanned<Type>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant2(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant7<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Expression>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant7(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant11<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant11(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant9<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Item>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant9(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant4<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Spanned<String>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant4(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant5<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<SpannedToken<'input>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant5(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    pub(crate) fn __reduce0<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>) = "->", Type => ActionFn(95);
-        let __sym1 = __pop_Variant1(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action95::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant1(__nt), __end));
-        (2, 0)
-    }
-    pub(crate) fn __reduce1<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>)? = "->", Type => ActionFn(115);
-        let __sym1 = __pop_Variant1(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action115::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant2(__nt), __end));
-        (2, 1)
-    }
-    pub(crate) fn __reduce2<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>)? =  => ActionFn(94);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action94::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant2(__nt), __end));
-        (0, 1)
-    }
-    pub(crate) fn __reduce3<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>) = "???.", Member => ActionFn(83);
-        let __sym1 = __pop_Variant3(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action83::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (2, 2)
-    }
-    pub(crate) fn __reduce4<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>)+ = "???.", Member => ActionFn(118);
-        let __sym1 = __pop_Variant3(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action118::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant4(__nt), __end));
-        (2, 3)
-    }
-    pub(crate) fn __reduce5<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>)+ = ("???." <Member>)+, "???.", Member => ActionFn(119);
-        let __sym2 = __pop_Variant3(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant4(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action119::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant4(__nt), __end));
-        (3, 3)
-    }
-    pub(crate) fn __reduce6<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline") = "newline" => ActionFn(102);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action102::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant0(__nt), __end));
-        (1, 4)
-    }
-    pub(crate) fn __reduce7<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")* =  => ActionFn(90);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action90::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (0, 5)
-    }
-    pub(crate) fn __reduce8<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")* = ("newline")+ => ActionFn(91);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action91::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (1, 5)
-    }
-    pub(crate) fn __reduce9<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")+ = "newline" => ActionFn(120);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action120::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (1, 6)
-    }
-    pub(crate) fn __reduce10<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")+ = ("newline")+, "newline" => ActionFn(121);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action121::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (2, 6)
-    }
-    pub(crate) fn __reduce11<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>) = "|", PipelineElement => ActionFn(89);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action89::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 7)
-    }
-    pub(crate) fn __reduce12<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)* =  => ActionFn(87);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action87::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (0, 8)
-    }
-    pub(crate) fn __reduce13<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)* = ("|" <PipelineElement>)+ => ActionFn(88);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action88::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (1, 8)
-    }
-    pub(crate) fn __reduce14<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)+ = "|", PipelineElement => ActionFn(126);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action126::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (2, 9)
-    }
-    pub(crate) fn __reduce15<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)+ = ("|" <PipelineElement>)+, "|", PipelineElement => ActionFn(127);
-        let __sym2 = __pop_Variant6(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action127::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (3, 9)
-    }
-    pub(crate) fn __reduce16<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>) = ("newline")+, Item => ActionFn(99);
-        let __sym1 = __pop_Variant8(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action99::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (2, 10)
-    }
-    pub(crate) fn __reduce17<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)* =  => ActionFn(97);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action97::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (0, 11)
-    }
-    pub(crate) fn __reduce18<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)* = (("newline")+ <Item>)+ => ActionFn(98);
-        let __sym0 = __pop_Variant9(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action98::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (1, 11)
-    }
-    pub(crate) fn __reduce19<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)+ = ("newline")+, Item => ActionFn(130);
-        let __sym1 = __pop_Variant8(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action130::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (2, 12)
-    }
-    pub(crate) fn __reduce20<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)+ = (("newline")+ <Item>)+, ("newline")+, Item => ActionFn(131);
-        let __sym2 = __pop_Variant8(__symbols);
-        let __sym1 = __pop_Variant5(__symbols);
-        let __sym0 = __pop_Variant9(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action131::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (3, 12)
-    }
-    pub(crate) fn __reduce21<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>) = CallArgument => ActionFn(86);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action86::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 13)
-    }
-    pub(crate) fn __reduce22<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>)+ = CallArgument => ActionFn(134);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action134::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (1, 14)
-    }
-    pub(crate) fn __reduce23<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>)+ = (<CallArgument>)+, CallArgument => ActionFn(135);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action135::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (2, 14)
-    }
-    pub(crate) fn __reduce24<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines) = FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(110);
-        let __sym3 = __pop_Variant21(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant21(__symbols);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym3.2.clone();
-        let __nt = super::__action110::<>(__sym0, __sym1, __sym2, __sym3);
-        __symbols.push((__start, __Symbol::Variant10(__nt), __end));
-        (4, 15)
-    }
-    pub(crate) fn __reduce25<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)* =  => ActionFn(108);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action108::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (0, 16)
-    }
-    pub(crate) fn __reduce26<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)* = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ => ActionFn(109);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action109::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (1, 16)
-    }
-    pub(crate) fn __reduce27<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ = FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(136);
-        let __sym3 = __pop_Variant21(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant21(__symbols);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym3.2.clone();
-        let __nt = super::__action136::<>(__sym0, __sym1, __sym2, __sym3);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (4, 17)
-    }
-    pub(crate) fn __reduce28<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+, FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(137);
-        let __sym4 = __pop_Variant21(__symbols);
-        let __sym3 = __pop_Variant0(__symbols);
-        let __sym2 = __pop_Variant21(__symbols);
-        let __sym1 = __pop_Variant10(__symbols);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym4.2.clone();
-        let __nt = super::__action137::<>(__sym0, __sym1, __sym2, __sym3, __sym4);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (5, 17)
-    }
-    pub(crate) fn __reduce29<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // @L =  => ActionFn(103);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action103::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant12(__nt), __end));
-        (0, 18)
-    }
-    pub(crate) fn __reduce30<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // @R =  => ActionFn(96);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action96::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant12(__nt), __end));
-        (0, 19)
-    }
-    pub(crate) fn __reduce31<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ArgumentExpression = Expression => ActionFn(48);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action48::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 20)
-    }
-    pub(crate) fn __reduce32<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ArgumentExpression = BareExpression => ActionFn(49);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action49::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 20)
-    }
-    pub(crate) fn __reduce33<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Bare = "bare" => ActionFn(61);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action61::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant13(__nt), __end));
-        (1, 21)
-    }
-    pub(crate) fn __reduce34<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BareExpression = Bare => ActionFn(179);
-        let __sym0 = __pop_Variant13(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action179::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 22)
-    }
-    pub(crate) fn __reduce35<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Binary = ArgumentExpression, SpannedOperator, ArgumentExpression => ActionFn(180);
-        let __sym2 = __pop_Variant6(__symbols);
-        let __sym1 = __pop_Variant27(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action180::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 23)
-    }
-    pub(crate) fn __reduce36<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Block = "{", SingleExpression, "}" => ActionFn(181);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action181::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant14(__nt), __end));
-        (3, 24)
-    }
-    pub(crate) fn __reduce37<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Block = "{", BareExpression, "}" => ActionFn(182);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action182::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant14(__nt), __end));
-        (3, 24)
-    }
-    pub(crate) fn __reduce38<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BlockExpression = "{", SingleExpression, "}" => ActionFn(183);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action183::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 25)
-    }
-    pub(crate) fn __reduce39<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BlockExpression = "{", BareExpression, "}" => ActionFn(184);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action184::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 25)
-    }
-    pub(crate) fn __reduce40<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = Expression, SingleCallArgument => ActionFn(185);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action185::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 26)
-    }
-    pub(crate) fn __reduce41<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = Expression, CallArgument, (<CallArgument>)+ => ActionFn(186);
-        let __sym2 = __pop_Variant7(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action186::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 26)
-    }
-    pub(crate) fn __reduce42<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = BareExpression, SingleCallArgument => ActionFn(187);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action187::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 26)
-    }
-    pub(crate) fn __reduce43<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = BareExpression, CallArgument, (<CallArgument>)+ => ActionFn(188);
-        let __sym2 = __pop_Variant7(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action188::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 26)
-    }
-    pub(crate) fn __reduce44<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CallArgument = ArgumentExpression => ActionFn(50);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action50::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 27)
-    }
-    pub(crate) fn __reduce45<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CallArgument = Flag => ActionFn(51);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action51::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 27)
-    }
-    pub(crate) fn __reduce46<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = FormalParameter => ActionFn(218);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action218::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 28)
-    }
-    pub(crate) fn __reduce47<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> =  => ActionFn(219);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action219::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (0, 28)
-    }
-    pub(crate) fn __reduce48<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+, FormalParameter => ActionFn(220);
-        let __sym1 = __pop_Variant10(__symbols);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action220::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (2, 28)
-    }
-    pub(crate) fn __reduce49<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ => ActionFn(221);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action221::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 28)
-    }
-    pub(crate) fn __reduce50<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CommandName = "command-name" => ActionFn(189);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action189::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant16(__nt), __end));
-        (1, 29)
-    }
-    pub(crate) fn __reduce51<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Expression = MemberHeadExpression => ActionFn(46);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action46::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 30)
-    }
-    pub(crate) fn __reduce52<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Expression = MemberHeadExpression, ("???." <Member>)+ => ActionFn(190);
-        let __sym1 = __pop_Variant4(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action190::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 30)
-    }
-    pub(crate) fn __reduce53<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Flag = "-", Bare => ActionFn(191);
-        let __sym1 = __pop_Variant13(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action191::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 31)
-    }
-    pub(crate) fn __reduce54<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Flag = "--", Bare => ActionFn(192);
-        let __sym1 = __pop_Variant13(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action192::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 31)
-    }
-    pub(crate) fn __reduce55<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter = ParameterName, ":", Type => ActionFn(193);
-        let __sym2 = __pop_Variant1(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant23(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action193::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant10(__nt), __end));
-        (3, 32)
-    }
-    pub(crate) fn __reduce56<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter? = FormalParameter => ActionFn(106);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action106::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant17(__nt), __end));
-        (1, 33)
-    }
-    pub(crate) fn __reduce57<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter? =  => ActionFn(107);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action107::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant17(__nt), __end));
-        (0, 33)
-    }
-    pub(crate) fn __reduce58<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Function = "function", CommandName, "start-params", ParameterList, "end-params", "->", Type, Block => ActionFn(194);
-        let __sym7 = __pop_Variant14(__symbols);
-        let __sym6 = __pop_Variant1(__symbols);
-        let __sym5 = __pop_Variant0(__symbols);
-        let __sym4 = __pop_Variant0(__symbols);
-        let __sym3 = __pop_Variant15(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym7.2.clone();
-        let __nt = super::__action194::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6, __sym7);
-        __symbols.push((__start, __Symbol::Variant18(__nt), __end));
-        (8, 34)
-    }
-    pub(crate) fn __reduce59<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Function = "function", CommandName, "start-params", ParameterList, "end-params", Block => ActionFn(195);
-        let __sym5 = __pop_Variant14(__symbols);
-        let __sym4 = __pop_Variant0(__symbols);
-        let __sym3 = __pop_Variant15(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym5.2.clone();
-        let __nt = super::__action195::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
-        __symbols.push((__start, __Symbol::Variant18(__nt), __end));
-        (6, 34)
-    }
-    pub(crate) fn __reduce60<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Int = "num" => ActionFn(73);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action73::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant19(__nt), __end));
-        (1, 35)
-    }
-    pub(crate) fn __reduce61<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Item = Pipeline => ActionFn(196);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action196::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (1, 36)
-    }
-    pub(crate) fn __reduce62<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Item = Function => ActionFn(197);
-        let __sym0 = __pop_Variant18(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action197::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (1, 36)
-    }
-    pub(crate) fn __reduce63<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = String => ActionFn(28);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action28::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce64<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = Int => ActionFn(198);
-        let __sym0 = __pop_Variant19(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action198::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce65<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = UnitsNum => ActionFn(30);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action30::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce66<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = Var => ActionFn(31);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action31::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce67<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "member" => ActionFn(62);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action62::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce68<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "dqmember" => ActionFn(63);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action63::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce69<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "sqmember" => ActionFn(64);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action64::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce70<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "function" => ActionFn(65);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action65::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce71<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = LeafExpression => ActionFn(41);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action41::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 39)
-    }
-    pub(crate) fn __reduce72<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = BlockExpression => ActionFn(42);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action42::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 39)
-    }
-    pub(crate) fn __reduce73<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", Call, ")" => ActionFn(199);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action199::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce74<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", BareExpression, ")" => ActionFn(200);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action200::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce75<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", Binary, ")" => ActionFn(201);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action201::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce76<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Module = Item => ActionFn(202);
-        let __sym0 = __pop_Variant8(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action202::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (1, 40)
-    }
-    pub(crate) fn __reduce77<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Module = Item, (("newline")+ <Item>)+ => ActionFn(203);
-        let __sym1 = __pop_Variant9(__symbols);
-        let __sym0 = __pop_Variant8(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action203::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (2, 40)
-    }
-    pub(crate) fn __reduce78<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Newlines = ("newline")+ => ActionFn(59);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action59::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (1, 41)
-    }
-    pub(crate) fn __reduce79<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "==" => ActionFn(67);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action67::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce80<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "!=" => ActionFn(68);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action68::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce81<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "<" => ActionFn(69);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action69::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce82<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = ">" => ActionFn(70);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action70::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce83<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "<=" => ActionFn(71);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action71::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce84<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = ">=" => ActionFn(72);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action72::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce85<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // OptionalNewlines =  => ActionFn(122);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action122::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (0, 43)
-    }
-    pub(crate) fn __reduce86<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // OptionalNewlines = ("newline")+ => ActionFn(123);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action123::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (1, 43)
-    }
-    pub(crate) fn __reduce87<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterList = Comma<FormalParameter> => ActionFn(7);
-        let __sym0 = __pop_Variant15(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action7::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 44)
-    }
-    pub(crate) fn __reduce88<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = "-", SpannedBare => ActionFn(204);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action204::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (2, 45)
-    }
-    pub(crate) fn __reduce89<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = "--", SpannedBare => ActionFn(205);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action205::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (2, 45)
-    }
-    pub(crate) fn __reduce90<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = ParameterVariable => ActionFn(206);
-        let __sym0 = __pop_Variant24(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action206::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (1, 45)
-    }
-    pub(crate) fn __reduce91<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterVariable = "$", "variable" => ActionFn(207);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action207::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant24(__nt), __end));
-        (2, 46)
-    }
-    pub(crate) fn __reduce92<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Pipeline = PipelineElement => ActionFn(208);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action208::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 47)
-    }
-    pub(crate) fn __reduce93<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Pipeline = PipelineElement, ("|" <PipelineElement>)+ => ActionFn(209);
-        let __sym1 = __pop_Variant7(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action209::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (2, 47)
-    }
-    pub(crate) fn __reduce94<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // PipelineElement = BareExpression => ActionFn(210);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action210::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 48)
-    }
-    pub(crate) fn __reduce95<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // PipelineElement = SingleExpression => ActionFn(27);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action27::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 48)
-    }
-    pub(crate) fn __reduce96<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "any" => ActionFn(14);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action14::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce97<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "int" => ActionFn(15);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action15::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce98<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "decimal" => ActionFn(16);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action16::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce99<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "bytes" => ActionFn(17);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action17::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce100<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "text" => ActionFn(18);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action18::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce101<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "boolean" => ActionFn(19);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action19::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce102<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "date" => ActionFn(20);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action20::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce103<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "object" => ActionFn(21);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action21::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce104<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "list" => ActionFn(22);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action22::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce105<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "block" => ActionFn(23);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action23::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce106<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ReplLine = Pipeline => ActionFn(124);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action124::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 50)
-    }
-    pub(crate) fn __reduce107<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ReplLine = Pipeline, ("newline")+ => ActionFn(125);
-        let __sym1 = __pop_Variant5(__symbols);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action125::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (2, 50)
-    }
-    pub(crate) fn __reduce108<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleCallArgument = CallArgument => ActionFn(52);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action52::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 51)
-    }
-    pub(crate) fn __reduce109<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleCallArgument = Binary => ActionFn(53);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action53::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 51)
-    }
-    pub(crate) fn __reduce110<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Expression => ActionFn(54);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action54::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce111<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Call => ActionFn(55);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action55::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce112<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Binary => ActionFn(56);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action56::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce113<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SpannedBare = Bare => ActionFn(211);
-        let __sym0 = __pop_Variant13(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action211::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant16(__nt), __end));
-        (1, 53)
-    }
-    pub(crate) fn __reduce114<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SpannedOperator = Operator => ActionFn(212);
-        let __sym0 = __pop_Variant22(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action212::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant27(__nt), __end));
-        (1, 54)
-    }
-    pub(crate) fn __reduce115<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // String = "sqstring" => ActionFn(213);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action213::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 55)
-    }
-    pub(crate) fn __reduce116<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // String = "dqstring" => ActionFn(214);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action214::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 55)
-    }
-    pub(crate) fn __reduce117<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Type = RawType => ActionFn(215);
-        let __sym0 = __pop_Variant26(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action215::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant1(__nt), __end));
-        (1, 56)
-    }
-    pub(crate) fn __reduce118<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // UnitsNum = Int, "unit" => ActionFn(216);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant19(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action216::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 57)
-    }
-    pub(crate) fn __reduce119<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Var = "$", "variable" => ActionFn(217);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action217::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 58)
-    }
-    pub(crate) fn __reduce120<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // __Call = Call => ActionFn(2);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action2::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 59)
-    }
-    pub(crate) fn __reduce122<
-        'input,
-    >(
-        __action: i16,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i16>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // __ReplLine = ReplLine => ActionFn(1);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action1::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 61)
-    }
-}
-pub use self::__parse__Module::ModuleParser;
-
-#[cfg_attr(rustfmt, rustfmt_skip)]
-mod __parse__ReplLine {
-    #![allow(non_snake_case, non_camel_case_types, unused_mut, unused_variables, unused_imports, unused_parens)]
-
-    use std::str::FromStr;
-    use crate::parser::ast::expression::*;
-    use crate::parser::ast::module::*;
-    use crate::parser::ast::parser_utils::*;
-    use crate::parser::ast::{ExpressionBuilder, ModuleBuilder};
-    use crate::prelude::*;
-    use crate::parser::lexer::{SpannedToken, Spanned, Span, Token};
-    use byte_unit::Byte;
-    #[allow(unused_extern_crates)]
-    extern crate lalrpop_util as __lalrpop_util;
-    #[allow(unused_imports)]
-    use self::__lalrpop_util::state_machine as __state_machine;
-    use super::__ToTriple;
-    #[allow(dead_code)]
-    pub enum __Symbol<'input>
-     {
-        Variant0(SpannedToken<'input>),
-        Variant1(Spanned<Type>),
-        Variant2(::std::option::Option<Spanned<Type>>),
-        Variant3(Spanned<String>),
-        Variant4(::std::vec::Vec<Spanned<String>>),
-        Variant5(::std::vec::Vec<SpannedToken<'input>>),
-        Variant6(Expression),
-        Variant7(::std::vec::Vec<Expression>),
-        Variant8(Item),
-        Variant9(::std::vec::Vec<Item>),
-        Variant10(FormalParameter),
-        Variant11(::std::vec::Vec<FormalParameter>),
-        Variant12(usize),
-        Variant13(Bare),
-        Variant14(Spanned<Block>),
-        Variant15(Vec<FormalParameter>),
-        Variant16(Spanned<Bare>),
-        Variant17(::std::option::Option<FormalParameter>),
-        Variant18(Function),
-        Variant19(i64),
-        Variant20(Module),
-        Variant21(()),
-        Variant22(Operator),
-        Variant23(ParameterIdentifier),
-        Variant24(Spanned<Variable>),
-        Variant25(Pipeline),
-        Variant26(Type),
-        Variant27(Spanned<Operator>),
-    }
-    const __ACTION: &'static [i8] = &[
-        // State 0
-        0, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 1
-        28, 0, 0, 0, 0, 0, 0, 0, 0, 29, 30, 31, 32, 33, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 2
-        -35, -35, -35, -35, 0, -35, -35, 0, 0, -35, -35, -35, -35, -35, 0, 0, -35, 0, 0, 0, 0, 0, 0, 0, -35, 0, 0, 0, 0, 0, -35, -35, 0, 0, -35, 0, 0, 0, 0, -35, -35, -35,
-        // State 3
-        -33, 19, 20, 0, 0, 41, 42, 0, 0, -33, -33, -33, -33, -33, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, -95, 23, 0, 0, 24, 0, 0, 0, 0, 25, -95, 0,
-        // State 4
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113, 0, 0, 0, 0, 0, 0, 0, 0, 0, -113, -113,
-        // State 5
-        -73, -73, -73, -73, 0, -73, -73, 0, 0, -73, -73, -73, -73, -73, -73, 0, -73, 0, 0, 0, 0, 0, 0, 0, -73, 0, 0, 0, 0, 0, -73, -73, 0, 0, -73, 0, 0, 0, 0, -73, -73, -73,
-        // State 6
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -112, 0, 0, 0, 0, 0, 0, 0, 0, 0, -112, -112,
-        // State 7
-        -32, 19, 20, 0, 0, 41, 42, 0, 0, -32, -32, -32, -32, -32, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, -111, 23, 0, 0, 24, 0, 0, 0, 0, 25, -111, -111,
-        // State 8
-        -65, -65, -65, -65, 0, -65, -65, 0, 0, -65, -65, -65, -65, -65, -65, 0, -65, 0, 0, 0, 0, 0, 0, 0, -65, 0, 0, 0, 0, 0, -65, -65, 0, 0, -65, 0, 0, 45, 0, -65, -65, -65,
-        // State 9
-        -72, -72, -72, -72, 0, -72, -72, 0, 0, -72, -72, -72, -72, -72, -72, 0, -72, 0, 0, 0, 0, 0, 0, 0, -72, 0, 0, 0, 0, 0, -72, -72, 0, 0, -72, 0, 0, 0, 0, -72, -72, -72,
-        // State 10
-        -52, -52, -52, -52, 0, -52, -52, 0, 0, -52, -52, -52, -52, -52, 47, 0, -52, 0, 0, 0, 0, 0, 0, 0, -52, 0, 0, 0, 0, 0, -52, -52, 0, 0, -52, 0, 0, 0, 0, -52, -52, -52,
-        // State 11
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 49, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 12
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -93, 0, 0, 0, 0, 0, 0, 0, 0, 0, 51, 0,
-        // State 13
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 14
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -96, 0, 0, 0, 0, 0, 0, 0, 0, 0, -96, 0,
-        // State 15
-        -64, -64, -64, -64, 0, -64, -64, 0, 0, -64, -64, -64, -64, -64, -64, 0, -64, 0, 0, 0, 0, 0, 0, 0, -64, 0, 0, 0, 0, 0, -64, -64, 0, 0, -64, 0, 0, 0, 0, -64, -64, -64,
-        // State 16
-        -66, -66, -66, -66, 0, -66, -66, 0, 0, -66, -66, -66, -66, -66, -66, 0, -66, 0, 0, 0, 0, 0, 0, 0, -66, 0, 0, 0, 0, 0, -66, -66, 0, 0, -66, 0, 0, 0, 0, -66, -66, -66,
-        // State 17
-        -67, -67, -67, -67, 0, -67, -67, 0, 0, -67, -67, -67, -67, -67, -67, 0, -67, 0, 0, 0, 0, 0, 0, 0, -67, 0, 0, 0, 0, 0, -67, -67, 0, 0, -67, 0, 0, 0, 0, -67, -67, -67,
-        // State 18
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 52, 0, 0, 0,
-        // State 19
-        0, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 20
-        -34, -34, -34, -34, 0, -34, -34, 0, 0, -34, -34, -34, -34, -34, 0, 0, -34, 0, 0, 0, 0, 0, 0, 0, -34, 0, 0, 0, 0, 0, -34, -34, 0, 0, -34, 0, 0, 0, 0, -34, -34, -34,
-        // State 21
-        -117, -117, -117, -117, 0, -117, -117, 0, 0, -117, -117, -117, -117, -117, -117, 0, -117, 0, 0, 0, 0, 0, 0, 0, -117, 0, 0, 0, 0, 0, -117, -117, 0, 0, -117, 0, 0, 0, 0, -117, -117, -117,
-        // State 22
-        -61, -61, -61, -61, 0, -61, -61, 0, 0, -61, -61, -61, -61, -61, -61, 0, -61, 0, 0, 0, 0, 0, 0, 0, -61, 0, 0, 0, 0, 0, -61, -61, 0, 0, -61, 0, 0, -61, 0, -61, -61, -61,
-        // State 23
-        -116, -116, -116, -116, 0, -116, -116, 0, 0, -116, -116, -116, -116, -116, -116, 0, -116, 0, 0, 0, 0, 0, 0, 0, -116, 0, 0, 0, 0, 0, -116, -116, 0, 0, -116, 0, 0, 0, 0, -116, -116, -116,
-        // State 24
-        0, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 25
-        0, -115, -115, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 0, 0, -115, 0, 0, 0, 0, 0, 0, -115, 0, 0, -115, 0, 0, 0, 0, -115, 0, 0,
-        // State 26
-        0, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 27
-        0, -81, -81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, 0, 0, 0, 0, -81, 0, 0, 0, 0, 0, 0, -81, 0, 0, -81, 0, 0, 0, 0, -81, 0, 0,
-        // State 28
-        0, -82, -82, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -82, 0, 0, 0, 0, 0, 0, 0, -82, 0, 0, 0, 0, 0, 0, -82, 0, 0, -82, 0, 0, 0, 0, -82, 0, 0,
-        // State 29
-        0, -84, -84, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -84, 0, 0, 0, 0, 0, 0, 0, -84, 0, 0, 0, 0, 0, 0, -84, 0, 0, -84, 0, 0, 0, 0, -84, 0, 0,
-        // State 30
-        0, -80, -80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -80, 0, 0, 0, 0, 0, 0, 0, -80, 0, 0, 0, 0, 0, 0, -80, 0, 0, -80, 0, 0, 0, 0, -80, 0, 0,
-        // State 31
-        0, -83, -83, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -83, 0, 0, 0, 0, 0, 0, 0, -83, 0, 0, 0, 0, 0, 0, -83, 0, 0, -83, 0, 0, 0, 0, -83, 0, 0,
-        // State 32
-        0, -85, -85, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -85, 0, 0, 0, 0, 0, 0, 0, -85, 0, 0, 0, 0, 0, 0, -85, 0, 0, -85, 0, 0, 0, 0, -85, 0, 0,
-        // State 33
-        28, -45, -45, -45, 0, -45, -45, 0, 0, 29, 30, 31, 32, 33, 0, 0, -45, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, -45, -45, 0, 0, -45, 0, 0, 0, 0, -45, -45, -45,
-        // State 34
-        -33, -33, -33, -33, 0, -33, -33, 0, 0, -33, -33, -33, -33, -33, 0, 0, -33, 0, 0, 0, 0, 0, 0, 0, -33, 0, 0, 0, 0, 0, -33, -33, 0, 0, -33, 0, 0, 0, 0, -33, -33, -33,
-        // State 35
-        0, 0, 0, -110, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -110, 0, 0, 0, 0, 0, 0, 0, 0, 0, -110, -110,
-        // State 36
-        0, 19, 20, -109, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, -109, 23, 0, 0, 24, 0, 0, 0, 0, 25, -109, -109,
-        // State 37
-        -32, -32, -32, -32, 0, -32, -32, 0, 0, -32, -32, -32, -32, -32, 0, 0, -32, 0, 0, 0, 0, 0, 0, 0, -32, 0, 0, 0, 0, 0, -32, -32, 0, 0, -32, 0, 0, 0, 0, -32, -32, -32,
-        // State 38
-        0, -46, -46, -46, 0, -46, -46, 0, 0, 0, 0, 0, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, 0, 0, -46, 0, 0, 0, 0, 0, -46, -46, 0, 0, -46, 0, 0, 0, 0, -46, -46, -46,
-        // State 39
-        0, 0, 0, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -43, 0, 0, 0, 0, 0, 0, 0, 0, 0, -43, -43,
-        // State 40
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 41
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 42
-        0, 19, 20, -109, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, -109, 23, 0, 0, 24, 0, 0, 0, 0, 25, -109, -109,
-        // State 43
-        0, 0, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41, 0, 0, 0, 0, 0, 0, 0, 0, 0, -41, -41,
-        // State 44
-        -119, -119, -119, -119, 0, -119, -119, 0, 0, -119, -119, -119, -119, -119, -119, 0, -119, 0, 0, 0, 0, 0, 0, 0, -119, 0, 0, 0, 0, 0, -119, -119, 0, 0, -119, 0, 0, 0, 0, -119, -119, -119,
-        // State 45
-        -53, -53, -53, -53, 0, -53, -53, 0, 0, -53, -53, -53, -53, -53, 66, 0, -53, 0, 0, 0, 0, 0, 0, 0, -53, 0, 0, 0, 0, 0, -53, -53, 0, 0, -53, 0, 0, 0, 0, -53, -53, -53,
-        // State 46
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 0, 0, 69, 0, 0, 70, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 47
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 72, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 48
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 49
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -94, 0, 0, 0, 0, 0, 0, 0, 0, 0, 73, 0,
-        // State 50
-        0, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 51
-        -120, -120, -120, -120, 0, -120, -120, 0, 0, -120, -120, -120, -120, -120, -120, 0, -120, 0, 0, 0, 0, 0, 0, 0, -120, 0, 0, 0, 0, 0, -120, -120, 0, 0, -120, 0, 0, 0, 0, -120, -120, -120,
-        // State 52
-        -33, 19, 20, 75, 0, 41, 42, 0, 0, -33, -33, -33, -33, -33, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 53
-        0, 0, 0, 76, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 54
-        0, 0, 0, 77, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 55
-        -32, 19, 20, 0, 0, 41, 42, 0, 0, -32, -32, -32, -32, -32, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 56
-        -33, 19, 20, 0, 0, 41, 42, 0, 0, -33, -33, -33, -33, -33, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 78,
-        // State 57
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 79,
-        // State 58
-        0, 0, 0, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, 0, 0, 0, 0, 0, 0, 0, 0, 0, -36, -36,
-        // State 59
-        0, 19, 20, -44, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, -44, 23, 0, 0, 24, 0, 0, 0, 0, 25, -44, -44,
-        // State 60
-        0, -45, -45, -45, 0, -45, -45, 0, 0, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, 0, 0, -45, 0, 0, 0, 0, 0, -45, -45, 0, 0, -45, 0, 0, 0, 0, -45, -45, -45,
-        // State 61
-        0, -23, -23, -23, 0, -23, -23, 0, 0, 0, 0, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, 0, 0, -23, 0, 0, 0, 0, 0, -23, -23, 0, 0, -23, 0, 0, 0, 0, -23, -23, -23,
-        // State 62
-        0, -54, -54, -54, 0, -54, -54, 0, 0, 0, 0, 0, 0, 0, 0, 0, -54, 0, 0, 0, 0, 0, 0, 0, -54, 0, 0, 0, 0, 0, -54, -54, 0, 0, -54, 0, 0, 0, 0, -54, -54, -54,
-        // State 63
-        0, -55, -55, -55, 0, -55, -55, 0, 0, 0, 0, 0, 0, 0, 0, 0, -55, 0, 0, 0, 0, 0, 0, 0, -55, 0, 0, 0, 0, 0, -55, -55, 0, 0, -55, 0, 0, 0, 0, -55, -55, -55,
-        // State 64
-        0, 19, 20, -42, 0, 41, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, -42, 23, 0, 0, 24, 0, 0, 0, 0, 25, -42, -42,
-        // State 65
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 68, 0, 0, 69, 0, 0, 70, 0, 0, 0, 71, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 66
-        -5, -5, -5, -5, 0, -5, -5, 0, 0, -5, -5, -5, -5, -5, -5, 0, -5, 0, 0, 0, 0, 0, 0, 0, -5, 0, 0, 0, 0, 0, -5, -5, 0, 0, -5, 0, 0, 0, 0, -5, -5, -5,
-        // State 67
-        -69, -69, -69, -69, 0, -69, -69, 0, 0, -69, -69, -69, -69, -69, -69, 0, -69, 0, 0, 0, 0, 0, 0, 0, -69, 0, 0, 0, 0, 0, -69, -69, 0, 0, -69, 0, 0, 0, 0, -69, -69, -69,
-        // State 68
-        -71, -71, -71, -71, 0, -71, -71, 0, 0, -71, -71, -71, -71, -71, -71, 0, -71, 0, 0, 0, 0, 0, 0, 0, -71, 0, 0, 0, 0, 0, -71, -71, 0, 0, -71, 0, 0, 0, 0, -71, -71, -71,
-        // State 69
-        -68, -68, -68, -68, 0, -68, -68, 0, 0, -68, -68, -68, -68, -68, -68, 0, -68, 0, 0, 0, 0, 0, 0, 0, -68, 0, 0, 0, 0, 0, -68, -68, 0, 0, -68, 0, 0, 0, 0, -68, -68, -68,
-        // State 70
-        -70, -70, -70, -70, 0, -70, -70, 0, 0, -70, -70, -70, -70, -70, -70, 0, -70, 0, 0, 0, 0, 0, 0, 0, -70, 0, 0, 0, 0, 0, -70, -70, 0, 0, -70, 0, 0, 0, 0, -70, -70, -70,
-        // State 71
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 72
-        0, 19, 20, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 21, 0, 0, 0, 0, 0, 0, 0, 22, 0, 0, 0, 0, 0, 0, 23, 0, 0, 24, 0, 0, 0, 0, 25, 0, 0,
-        // State 73
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15, 0, 0, 0, 0, 0, 0, 0, 0, 0, -15, 0,
-        // State 74
-        -75, -75, -75, -75, 0, -75, -75, 0, 0, -75, -75, -75, -75, -75, -75, 0, -75, 0, 0, 0, 0, 0, 0, 0, -75, 0, 0, 0, 0, 0, -75, -75, 0, 0, -75, 0, 0, 0, 0, -75, -75, -75,
-        // State 75
-        -76, -76, -76, -76, 0, -76, -76, 0, 0, -76, -76, -76, -76, -76, -76, 0, -76, 0, 0, 0, 0, 0, 0, 0, -76, 0, 0, 0, 0, 0, -76, -76, 0, 0, -76, 0, 0, 0, 0, -76, -76, -76,
-        // State 76
-        -74, -74, -74, -74, 0, -74, -74, 0, 0, -74, -74, -74, -74, -74, -74, 0, -74, 0, 0, 0, 0, 0, 0, 0, -74, 0, 0, 0, 0, 0, -74, -74, 0, 0, -74, 0, 0, 0, 0, -74, -74, -74,
-        // State 77
-        -40, -40, -40, -40, 0, -40, -40, 0, 0, -40, -40, -40, -40, -40, -40, 0, -40, 0, 0, 0, 0, 0, 0, 0, -40, 0, 0, 0, 0, 0, -40, -40, 0, 0, -40, 0, 0, 0, 0, -40, -40, -40,
-        // State 78
-        -39, -39, -39, -39, 0, -39, -39, 0, 0, -39, -39, -39, -39, -39, -39, 0, -39, 0, 0, 0, 0, 0, 0, 0, -39, 0, 0, 0, 0, 0, -39, -39, 0, 0, -39, 0, 0, 0, 0, -39, -39, -39,
-        // State 79
-        0, -24, -24, -24, 0, -24, -24, 0, 0, 0, 0, 0, 0, 0, 0, 0, -24, 0, 0, 0, 0, 0, 0, 0, -24, 0, 0, 0, 0, 0, -24, -24, 0, 0, -24, 0, 0, 0, 0, -24, -24, -24,
-        // State 80
-        -6, -6, -6, -6, 0, -6, -6, 0, 0, -6, -6, -6, -6, -6, -6, 0, -6, 0, 0, 0, 0, 0, 0, 0, -6, 0, 0, 0, 0, 0, -6, -6, 0, 0, -6, 0, 0, 0, 0, -6, -6, -6,
-        // State 81
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, 0, 0, 0, 0, 0, 0, 0, 0, 0, -16, 0,
-    ];
-    const __EOF_ACTION: &'static [i8] = &[
-        // State 0
-        0,
-        // State 1
-        0,
-        // State 2
-        -35,
-        // State 3
-        -95,
-        // State 4
-        -113,
-        // State 5
-        -73,
-        // State 6
-        -112,
-        // State 7
-        -111,
-        // State 8
-        -65,
-        // State 9
-        -72,
-        // State 10
-        -52,
-        // State 11
-        -107,
-        // State 12
-        -93,
-        // State 13
-        -123,
-        // State 14
-        -96,
-        // State 15
-        -64,
-        // State 16
-        -66,
-        // State 17
-        -67,
-        // State 18
-        0,
-        // State 19
-        0,
-        // State 20
-        -34,
-        // State 21
-        -117,
-        // State 22
-        -61,
-        // State 23
-        -116,
-        // State 24
-        0,
-        // State 25
-        0,
-        // State 26
-        0,
-        // State 27
-        0,
-        // State 28
-        0,
-        // State 29
-        0,
-        // State 30
-        0,
-        // State 31
-        0,
-        // State 32
-        0,
-        // State 33
-        -45,
-        // State 34
-        -33,
-        // State 35
-        -110,
-        // State 36
-        -109,
-        // State 37
-        -32,
-        // State 38
-        -46,
-        // State 39
-        -43,
-        // State 40
-        0,
-        // State 41
-        0,
-        // State 42
-        -109,
-        // State 43
-        -41,
-        // State 44
-        -119,
-        // State 45
-        -53,
-        // State 46
-        0,
-        // State 47
-        -108,
-        // State 48
-        -10,
-        // State 49
-        -94,
-        // State 50
-        0,
-        // State 51
-        -120,
-        // State 52
-        0,
-        // State 53
-        0,
-        // State 54
-        0,
-        // State 55
-        0,
-        // State 56
-        0,
-        // State 57
-        0,
-        // State 58
-        -36,
-        // State 59
-        -44,
-        // State 60
-        -45,
-        // State 61
-        -23,
-        // State 62
-        -54,
-        // State 63
-        -55,
-        // State 64
-        -42,
-        // State 65
-        0,
-        // State 66
-        -5,
-        // State 67
-        -69,
-        // State 68
-        -71,
-        // State 69
-        -68,
-        // State 70
-        -70,
-        // State 71
-        -11,
-        // State 72
-        0,
-        // State 73
-        -15,
-        // State 74
-        -75,
-        // State 75
-        -76,
-        // State 76
-        -74,
-        // State 77
-        -40,
-        // State 78
-        -39,
-        // State 79
-        -24,
-        // State 80
-        -6,
-        // State 81
-        -16,
-    ];
-    const __GOTO: &'static [i8] = &[
-        // State 0
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 12, 13, 0, 14, 0, 15, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 1
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 0, 0, 0, 0,
-        // State 2
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 3
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 3, 35, 36, 0, 6, 0, 37, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 4
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 5
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 6
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 7
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 3, 35, 36, 0, 6, 0, 43, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 8
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 9
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 10
-        0, 0, 0, 46, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 11
-        0, 0, 0, 0, 0, 0, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 12
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 13
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 14
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 15
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 16
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 17
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 18
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 19
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 53, 54, 0, 6, 55, 0, 0, 0, 56, 0, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 20
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 21
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 22
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 23
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 24
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 57, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 25
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 26
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 59, 3, 35, 0, 0, 6, 0, 0, 0, 0, 38, 0, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 27
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 28
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 29
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 30
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 31
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 32
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 33
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 26, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 27, 0, 0, 0, 0, 0, 0, 0,
-        // State 34
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 35
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 36
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 60, 0, 0, 0, 0, 0, 61, 3, 35, 0, 0, 6, 0, 62, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 37
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 38
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 39
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 40
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 41
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 42
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 65, 0, 0, 0, 0, 0, 61, 3, 35, 0, 0, 6, 0, 62, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 43
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 44
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 45
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 46
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 67, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 47
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 48
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 49
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 50
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 74, 0, 0, 0, 15, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 51
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 52
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 3, 35, 36, 0, 6, 0, 37, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 53
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 54
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 55
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 3, 35, 36, 0, 6, 0, 43, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 44, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 56
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 34, 3, 35, 36, 0, 6, 0, 37, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 40, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 57
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 58
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 59
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 3, 35, 0, 0, 6, 0, 80, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 60
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 61
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 62
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 63
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 64
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 61, 3, 35, 0, 0, 6, 0, 80, 0, 0, 38, 39, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 65
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 81, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 66
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 67
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 68
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 69
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 70
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 71
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 72
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 4, 5, 0, 6, 7, 0, 0, 0, 8, 0, 0, 0, 0, 9, 0, 10, 0, 11, 0, 0, 0, 0, 0, 0, 0, 0, 82, 0, 0, 0, 15, 0, 0, 16, 0, 17, 18, 0, 0, 0,
-        // State 73
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 74
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 75
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 76
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 77
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 78
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 79
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 80
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-        // State 81
-        0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
-    ];
-    fn __expected_tokens(__state: usize) -> Vec<::std::string::String> {
-        const __TERMINAL: &'static [&'static str] = &[
-            r###""!=""###,
-            r###""$""###,
-            r###""(""###,
-            r###"")""###,
-            r###"",""###,
-            r###""-""###,
-            r###""--""###,
-            r###""->""###,
-            r###"":""###,
-            r###""<""###,
-            r###""<=""###,
-            r###""==""###,
-            r###"">""###,
-            r###"">=""###,
-            r###""???.""###,
-            r###""any""###,
-            r###""bare""###,
-            r###""block""###,
-            r###""boolean""###,
-            r###""bytes""###,
-            r###""command-name""###,
-            r###""date""###,
-            r###""decimal""###,
-            r###""dqmember""###,
-            r###""dqstring""###,
-            r###""end-params""###,
-            r###""function""###,
-            r###""int""###,
-            r###""list""###,
-            r###""member""###,
-            r###""newline""###,
-            r###""num""###,
-            r###""object""###,
-            r###""sqmember""###,
-            r###""sqstring""###,
-            r###""start-params""###,
-            r###""text""###,
-            r###""unit""###,
-            r###""variable""###,
-            r###""{""###,
-            r###""|""###,
-            r###""}""###,
-        ];
-        __ACTION[(__state * 42)..].iter().zip(__TERMINAL).filter_map(|(&state, terminal)| {
-            if state == 0 {
-                None
-            } else {
-                Some(terminal.to_string())
-            }
-        }).collect()
-    }
-    pub struct __StateMachine<'input>
-    where 
-    {
-        __phantom: ::std::marker::PhantomData<(&'input ())>,
-    }
-    impl<'input> __state_machine::ParserDefinition for __StateMachine<'input>
-    where 
-    {
-        type Location = usize;
-        type Error = ShellError;
-        type Token = SpannedToken<'input>;
-        type TokenIndex = usize;
-        type Symbol = __Symbol<'input>;
-        type Success = Pipeline;
-        type StateIndex = i8;
-        type Action = i8;
-        type ReduceIndex = i8;
-        type NonterminalIndex = usize;
-
-        #[inline]
-        fn start_location(&self) -> Self::Location {
-              Default::default()
-        }
-
-        #[inline]
-        fn start_state(&self) -> Self::StateIndex {
-              0
-        }
-
-        #[inline]
-        fn token_to_index(&self, token: &Self::Token) -> Option<usize> {
-            __token_to_integer(token, ::std::marker::PhantomData::<(&())>)
-        }
-
-        #[inline]
-        fn action(&self, state: i8, integer: usize) -> i8 {
-            __ACTION[(state as usize) * 42 + integer]
-        }
-
-        #[inline]
-        fn error_action(&self, state: i8) -> i8 {
-            __ACTION[(state as usize) * 42 + (42 - 1)]
-        }
-
-        #[inline]
-        fn eof_action(&self, state: i8) -> i8 {
-            __EOF_ACTION[state as usize]
-        }
-
-        #[inline]
-        fn goto(&self, state: i8, nt: usize) -> i8 {
-            __GOTO[(state as usize) * 62 + nt] - 1
-        }
-
-        fn token_to_symbol(&self, token_index: usize, token: Self::Token) -> Self::Symbol {
-            __token_to_symbol(token_index, token, ::std::marker::PhantomData::<(&())>)
-        }
-
-        fn expected_tokens(&self, state: i8) -> Vec<String> {
-            __expected_tokens(state as usize)
-        }
-
-        #[inline]
-        fn uses_error_recovery(&self) -> bool {
-            false
-        }
-
-        #[inline]
-        fn error_recovery_symbol(
-            &self,
-            recovery: __state_machine::ErrorRecovery<Self>,
-        ) -> Self::Symbol {
-            panic!("error recovery not enabled for this grammar")
-        }
-
-        fn reduce(
-            &mut self,
-            action: i8,
-            start_location: Option<&Self::Location>,
-            states: &mut Vec<i8>,
-            symbols: &mut Vec<__state_machine::SymbolTriple<Self>>,
-        ) -> Option<__state_machine::ParseResult<Self>> {
-            __reduce(
-                action,
-                start_location,
-                states,
-                symbols,
-                ::std::marker::PhantomData::<(&())>,
-            )
-        }
-
-        fn simulate_reduce(&self, action: i8) -> __state_machine::SimulatedReduce<Self> {
-            __simulate_reduce(action, ::std::marker::PhantomData::<(&())>)
-        }
-    }
-    fn __token_to_integer<
-        'input,
-    >(
-        __token: &SpannedToken<'input>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> Option<usize>
-    {
-        match *__token {
-            SpannedToken { token: Token::OpNeq, .. } if true => Some(0),
-            SpannedToken { token: Token::Dollar, .. } if true => Some(1),
-            SpannedToken { token: Token::OpenParen, .. } if true => Some(2),
-            SpannedToken { token: Token::CloseParen, .. } if true => Some(3),
-            SpannedToken { token: Token::Comma, .. } if true => Some(4),
-            SpannedToken { token: Token::Dash, .. } if true => Some(5),
-            SpannedToken { token: Token::DashDash, .. } if true => Some(6),
-            SpannedToken { token: Token::ReturnArrow, .. } if true => Some(7),
-            SpannedToken { token: Token::Colon, .. } if true => Some(8),
-            SpannedToken { token: Token::OpLt, .. } if true => Some(9),
-            SpannedToken { token: Token::OpLte, .. } if true => Some(10),
-            SpannedToken { token: Token::OpEq, .. } if true => Some(11),
-            SpannedToken { token: Token::OpGt, .. } if true => Some(12),
-            SpannedToken { token: Token::OpGte, .. } if true => Some(13),
-            SpannedToken { token: Token::PathDot, .. } if true => Some(14),
-            SpannedToken { token: Token::TyAny, .. } if true => Some(15),
-            SpannedToken { token: Token::Bare, .. } if true => Some(16),
-            SpannedToken { token: Token::TyBlock, .. } if true => Some(17),
-            SpannedToken { token: Token::TyBoolean, .. } if true => Some(18),
-            SpannedToken { token: Token::TyBytes, .. } if true => Some(19),
-            SpannedToken { token: Token::CommandName, .. } if true => Some(20),
-            SpannedToken { token: Token::TyDate, .. } if true => Some(21),
-            SpannedToken { token: Token::TyDecimal, .. } if true => Some(22),
-            SpannedToken { token: Token::SQMember, .. } if true => Some(23),
-            SpannedToken { token: Token::DQString, .. } if true => Some(24),
-            SpannedToken { token: Token::EndParamList, .. } if true => Some(25),
-            SpannedToken { token: Token::KeywordFunction, .. } if true => Some(26),
-            SpannedToken { token: Token::TyInt, .. } if true => Some(27),
-            SpannedToken { token: Token::TyList, .. } if true => Some(28),
-            SpannedToken { token: Token::Member, .. } if true => Some(29),
-            SpannedToken { token: Token::Newline, .. } if true => Some(30),
-            SpannedToken { token: Token::Num, .. } if true => Some(31),
-            SpannedToken { token: Token::TyObject, .. } if true => Some(32),
-            SpannedToken { token: Token::SQMember, .. } if true => Some(33),
-            SpannedToken { token: Token::SQString, .. } if true => Some(34),
-            SpannedToken { token: Token::StartParamList, .. } if true => Some(35),
-            SpannedToken { token: Token::TyText, .. } if true => Some(36),
-            SpannedToken { token: Token::Unit, .. } if true => Some(37),
-            SpannedToken { token: Token::Variable, .. } if true => Some(38),
-            SpannedToken { token: Token::OpenBrace, .. } if true => Some(39),
-            SpannedToken { token: Token::Pipe, .. } if true => Some(40),
-            SpannedToken { token: Token::CloseBrace, .. } if true => Some(41),
-            _ => None,
-        }
-    }
-    fn __token_to_symbol<
-        'input,
-    >(
-        __token_index: usize,
-        __token: SpannedToken<'input>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> __Symbol<'input>
-    {
-        match __token_index {
-            0 => match __token {
-                __tok @ SpannedToken { token: Token::OpNeq, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            1 => match __token {
-                __tok @ SpannedToken { token: Token::Dollar, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            2 => match __token {
-                __tok @ SpannedToken { token: Token::OpenParen, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            3 => match __token {
-                __tok @ SpannedToken { token: Token::CloseParen, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            4 => match __token {
-                __tok @ SpannedToken { token: Token::Comma, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            5 => match __token {
-                __tok @ SpannedToken { token: Token::Dash, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            6 => match __token {
-                __tok @ SpannedToken { token: Token::DashDash, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            7 => match __token {
-                __tok @ SpannedToken { token: Token::ReturnArrow, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            8 => match __token {
-                __tok @ SpannedToken { token: Token::Colon, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            9 => match __token {
-                __tok @ SpannedToken { token: Token::OpLt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            10 => match __token {
-                __tok @ SpannedToken { token: Token::OpLte, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            11 => match __token {
-                __tok @ SpannedToken { token: Token::OpEq, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            12 => match __token {
-                __tok @ SpannedToken { token: Token::OpGt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            13 => match __token {
-                __tok @ SpannedToken { token: Token::OpGte, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            14 => match __token {
-                __tok @ SpannedToken { token: Token::PathDot, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            15 => match __token {
-                __tok @ SpannedToken { token: Token::TyAny, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            16 => match __token {
-                __tok @ SpannedToken { token: Token::Bare, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            17 => match __token {
-                __tok @ SpannedToken { token: Token::TyBlock, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            18 => match __token {
-                __tok @ SpannedToken { token: Token::TyBoolean, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            19 => match __token {
-                __tok @ SpannedToken { token: Token::TyBytes, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            20 => match __token {
-                __tok @ SpannedToken { token: Token::CommandName, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            21 => match __token {
-                __tok @ SpannedToken { token: Token::TyDate, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            22 => match __token {
-                __tok @ SpannedToken { token: Token::TyDecimal, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            23 => match __token {
-                __tok @ SpannedToken { token: Token::SQMember, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            24 => match __token {
-                __tok @ SpannedToken { token: Token::DQString, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            25 => match __token {
-                __tok @ SpannedToken { token: Token::EndParamList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            26 => match __token {
-                __tok @ SpannedToken { token: Token::KeywordFunction, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            27 => match __token {
-                __tok @ SpannedToken { token: Token::TyInt, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            28 => match __token {
-                __tok @ SpannedToken { token: Token::TyList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            29 => match __token {
-                __tok @ SpannedToken { token: Token::Member, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            30 => match __token {
-                __tok @ SpannedToken { token: Token::Newline, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            31 => match __token {
-                __tok @ SpannedToken { token: Token::Num, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            32 => match __token {
-                __tok @ SpannedToken { token: Token::TyObject, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            33 => match __token {
-                __tok @ SpannedToken { token: Token::SQMember, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            34 => match __token {
-                __tok @ SpannedToken { token: Token::SQString, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            35 => match __token {
-                __tok @ SpannedToken { token: Token::StartParamList, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            36 => match __token {
-                __tok @ SpannedToken { token: Token::TyText, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            37 => match __token {
-                __tok @ SpannedToken { token: Token::Unit, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            38 => match __token {
-                __tok @ SpannedToken { token: Token::Variable, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            39 => match __token {
-                __tok @ SpannedToken { token: Token::OpenBrace, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            40 => match __token {
-                __tok @ SpannedToken { token: Token::Pipe, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            41 => match __token {
-                __tok @ SpannedToken { token: Token::CloseBrace, .. } => __Symbol::Variant0((__tok)),
-                _ => unreachable!(),
-            },
-            _ => unreachable!(),
-        }
-    }
-    fn __simulate_reduce<
-        'input,
-    >(
-        __reduce_index: i8,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> __state_machine::SimulatedReduce<__StateMachine<'input>>
-    {
-        match __reduce_index {
-            0 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 0,
-                }
-            }
-            1 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 1,
-                }
-            }
-            2 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 1,
-                }
-            }
-            3 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 2,
-                }
-            }
-            4 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 3,
-                }
-            }
-            5 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 3,
-                }
-            }
-            6 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 4,
-                }
-            }
-            7 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 5,
-                }
-            }
-            8 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 5,
-                }
-            }
-            9 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 6,
-                }
-            }
-            10 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 6,
-                }
-            }
-            11 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 7,
-                }
-            }
-            12 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 8,
-                }
-            }
-            13 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 8,
-                }
-            }
-            14 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 9,
-                }
-            }
-            15 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 9,
-                }
-            }
-            16 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 10,
-                }
-            }
-            17 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 11,
-                }
-            }
-            18 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 11,
-                }
-            }
-            19 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 12,
-                }
-            }
-            20 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 12,
-                }
-            }
-            21 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 13,
-                }
-            }
-            22 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 14,
-                }
-            }
-            23 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 14,
-                }
-            }
-            24 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 4,
-                    nonterminal_produced: 15,
-                }
-            }
-            25 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 16,
-                }
-            }
-            26 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 16,
-                }
-            }
-            27 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 4,
-                    nonterminal_produced: 17,
-                }
-            }
-            28 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 5,
-                    nonterminal_produced: 17,
-                }
-            }
-            29 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 18,
-                }
-            }
-            30 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 19,
-                }
-            }
-            31 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 20,
-                }
-            }
-            32 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 20,
-                }
-            }
-            33 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 21,
-                }
-            }
-            34 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 22,
-                }
-            }
-            35 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 23,
-                }
-            }
-            36 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 24,
-                }
-            }
-            37 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 24,
-                }
-            }
-            38 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 25,
-                }
-            }
-            39 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 25,
-                }
-            }
-            40 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 26,
-                }
-            }
-            41 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 26,
-                }
-            }
-            42 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 26,
-                }
-            }
-            43 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 26,
-                }
-            }
-            44 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 27,
-                }
-            }
-            45 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 27,
-                }
-            }
-            46 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 28,
-                }
-            }
-            47 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 28,
-                }
-            }
-            48 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 28,
-                }
-            }
-            49 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 28,
-                }
-            }
-            50 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 29,
-                }
-            }
-            51 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 30,
-                }
-            }
-            52 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 30,
-                }
-            }
-            53 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 31,
-                }
-            }
-            54 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 31,
-                }
-            }
-            55 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 32,
-                }
-            }
-            56 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 33,
-                }
-            }
-            57 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 33,
-                }
-            }
-            58 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 8,
-                    nonterminal_produced: 34,
-                }
-            }
-            59 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 6,
-                    nonterminal_produced: 34,
-                }
-            }
-            60 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 35,
-                }
-            }
-            61 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 36,
-                }
-            }
-            62 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 36,
-                }
-            }
-            63 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            64 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            65 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            66 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 37,
-                }
-            }
-            67 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            68 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            69 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            70 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 38,
-                }
-            }
-            71 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 39,
-                }
-            }
-            72 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 39,
-                }
-            }
-            73 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            74 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            75 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 3,
-                    nonterminal_produced: 39,
-                }
-            }
-            76 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 40,
-                }
-            }
-            77 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 40,
-                }
-            }
-            78 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 41,
-                }
-            }
-            79 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            80 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            81 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            82 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            83 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            84 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 42,
-                }
-            }
-            85 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 0,
-                    nonterminal_produced: 43,
-                }
-            }
-            86 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 43,
-                }
-            }
-            87 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 44,
-                }
-            }
-            88 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 45,
-                }
-            }
-            89 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 45,
-                }
-            }
-            90 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 45,
-                }
-            }
-            91 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 46,
-                }
-            }
-            92 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 47,
-                }
-            }
-            93 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 47,
-                }
-            }
-            94 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 48,
-                }
-            }
-            95 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 48,
-                }
-            }
-            96 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            97 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            98 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            99 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            100 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            101 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            102 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            103 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            104 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            105 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 49,
-                }
-            }
-            106 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 50,
-                }
-            }
-            107 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 50,
-                }
-            }
-            108 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 51,
-                }
-            }
-            109 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 51,
-                }
-            }
-            110 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            111 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            112 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 52,
-                }
-            }
-            113 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 53,
-                }
-            }
-            114 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 54,
-                }
-            }
-            115 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 55,
-                }
-            }
-            116 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 55,
-                }
-            }
-            117 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 56,
-                }
-            }
-            118 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 57,
-                }
-            }
-            119 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 2,
-                    nonterminal_produced: 58,
-                }
-            }
-            120 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 59,
-                }
-            }
-            121 => {
-                __state_machine::SimulatedReduce::Reduce {
-                    states_to_pop: 1,
-                    nonterminal_produced: 60,
-                }
-            }
-            122 => __state_machine::SimulatedReduce::Accept,
-            _ => panic!("invalid reduction index {}", __reduce_index)
-        }
-    }
-    pub struct ReplLineParser {
-        _priv: (),
-    }
-
-    impl ReplLineParser {
-        pub fn new() -> ReplLineParser {
-            ReplLineParser {
-                _priv: (),
-            }
-        }
-
-        #[allow(dead_code)]
-        pub fn parse<
-            'input,
-            __TOKEN: __ToTriple<'input, >,
-            __TOKENS: IntoIterator<Item=__TOKEN>,
-        >(
-            &self,
-            __tokens0: __TOKENS,
-        ) -> Result<Pipeline, __lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>>
-        {
-            let __tokens = __tokens0.into_iter();
-            let mut __tokens = __tokens.map(|t| __ToTriple::to_triple(t));
-            let __r = __state_machine::Parser::drive(
-                __StateMachine {
-                    __phantom: ::std::marker::PhantomData::<(&())>,
-                },
-                __tokens,
-            );
-            __r
-        }
-    }
-    pub(crate) fn __reduce<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> Option<Result<Pipeline,__lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>>>
-    {
-        let (__pop_states, __nonterminal) = match __action {
-            0 => {
-                __reduce0(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            1 => {
-                __reduce1(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            2 => {
-                __reduce2(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            3 => {
-                __reduce3(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            4 => {
-                __reduce4(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            5 => {
-                __reduce5(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            6 => {
-                __reduce6(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            7 => {
-                __reduce7(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            8 => {
-                __reduce8(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            9 => {
-                __reduce9(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            10 => {
-                __reduce10(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            11 => {
-                __reduce11(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            12 => {
-                __reduce12(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            13 => {
-                __reduce13(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            14 => {
-                __reduce14(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            15 => {
-                __reduce15(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            16 => {
-                __reduce16(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            17 => {
-                __reduce17(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            18 => {
-                __reduce18(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            19 => {
-                __reduce19(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            20 => {
-                __reduce20(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            21 => {
-                __reduce21(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            22 => {
-                __reduce22(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            23 => {
-                __reduce23(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            24 => {
-                __reduce24(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            25 => {
-                __reduce25(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            26 => {
-                __reduce26(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            27 => {
-                __reduce27(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            28 => {
-                __reduce28(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            29 => {
-                __reduce29(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            30 => {
-                __reduce30(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            31 => {
-                __reduce31(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            32 => {
-                __reduce32(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            33 => {
-                __reduce33(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            34 => {
-                __reduce34(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            35 => {
-                __reduce35(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            36 => {
-                __reduce36(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            37 => {
-                __reduce37(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            38 => {
-                __reduce38(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            39 => {
-                __reduce39(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            40 => {
-                __reduce40(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            41 => {
-                __reduce41(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            42 => {
-                __reduce42(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            43 => {
-                __reduce43(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            44 => {
-                __reduce44(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            45 => {
-                __reduce45(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            46 => {
-                __reduce46(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            47 => {
-                __reduce47(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            48 => {
-                __reduce48(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            49 => {
-                __reduce49(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            50 => {
-                __reduce50(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            51 => {
-                __reduce51(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            52 => {
-                __reduce52(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            53 => {
-                __reduce53(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            54 => {
-                __reduce54(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            55 => {
-                __reduce55(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            56 => {
-                __reduce56(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            57 => {
-                __reduce57(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            58 => {
-                __reduce58(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            59 => {
-                __reduce59(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            60 => {
-                __reduce60(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            61 => {
-                __reduce61(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            62 => {
-                __reduce62(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            63 => {
-                __reduce63(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            64 => {
-                __reduce64(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            65 => {
-                __reduce65(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            66 => {
-                __reduce66(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            67 => {
-                __reduce67(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            68 => {
-                __reduce68(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            69 => {
-                __reduce69(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            70 => {
-                __reduce70(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            71 => {
-                __reduce71(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            72 => {
-                __reduce72(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            73 => {
-                __reduce73(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            74 => {
-                __reduce74(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            75 => {
-                __reduce75(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            76 => {
-                __reduce76(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            77 => {
-                __reduce77(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            78 => {
-                __reduce78(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            79 => {
-                __reduce79(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            80 => {
-                __reduce80(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            81 => {
-                __reduce81(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            82 => {
-                __reduce82(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            83 => {
-                __reduce83(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            84 => {
-                __reduce84(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            85 => {
-                __reduce85(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            86 => {
-                __reduce86(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            87 => {
-                __reduce87(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            88 => {
-                __reduce88(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            89 => {
-                __reduce89(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            90 => {
-                __reduce90(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            91 => {
-                __reduce91(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            92 => {
-                __reduce92(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            93 => {
-                __reduce93(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            94 => {
-                __reduce94(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            95 => {
-                __reduce95(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            96 => {
-                __reduce96(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            97 => {
-                __reduce97(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            98 => {
-                __reduce98(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            99 => {
-                __reduce99(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            100 => {
-                __reduce100(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            101 => {
-                __reduce101(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            102 => {
-                __reduce102(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            103 => {
-                __reduce103(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            104 => {
-                __reduce104(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            105 => {
-                __reduce105(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            106 => {
-                __reduce106(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            107 => {
-                __reduce107(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            108 => {
-                __reduce108(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            109 => {
-                __reduce109(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            110 => {
-                __reduce110(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            111 => {
-                __reduce111(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            112 => {
-                __reduce112(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            113 => {
-                __reduce113(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            114 => {
-                __reduce114(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            115 => {
-                __reduce115(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            116 => {
-                __reduce116(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            117 => {
-                __reduce117(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            118 => {
-                __reduce118(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            119 => {
-                __reduce119(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            120 => {
-                __reduce120(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            121 => {
-                __reduce121(__action, __lookahead_start, __states, __symbols, ::std::marker::PhantomData::<(&())>)
-            }
-            122 => {
-                // __ReplLine = ReplLine => ActionFn(1);
-                let __sym0 = __pop_Variant25(__symbols);
-                let __start = __sym0.0.clone();
-                let __end = __sym0.2.clone();
-                let __nt = super::__action1::<>(__sym0);
-                return Some(Ok(__nt));
-            }
-            _ => panic!("invalid action code {}", __action)
-        };
-        let __states_len = __states.len();
-        __states.truncate(__states_len - __pop_states);
-        let __state = *__states.last().unwrap() as usize;
-        let __next_state = __GOTO[__state * 62 + __nonterminal] - 1;
-        __states.push(__next_state);
-        None
-    }
-    fn __pop_Variant21<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, (), usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant21(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant13<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Bare, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant13(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant6<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Expression, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant6(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant10<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, FormalParameter, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant10(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant18<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Function, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant18(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant8<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Item, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant8(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant20<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Module, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant20(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant22<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Operator, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant22(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant23<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ParameterIdentifier, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant23(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant25<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Pipeline, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant25(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant16<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Bare>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant16(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant14<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Block>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant14(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant27<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Operator>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant27(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant3<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<String>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant3(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant1<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Type>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant1(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant24<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Spanned<Variable>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant24(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant0<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, SpannedToken<'input>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant0(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant26<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Type, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant26(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant15<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, Vec<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant15(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant19<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, i64, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant19(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant12<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, usize, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant12(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant17<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::option::Option<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant17(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant2<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::option::Option<Spanned<Type>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant2(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant7<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Expression>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant7(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant11<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<FormalParameter>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant11(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant9<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Item>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant9(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant4<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<Spanned<String>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant4(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    fn __pop_Variant5<
-      'input,
-    >(
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>
-    ) -> (usize, ::std::vec::Vec<SpannedToken<'input>>, usize)
-     {
-        match __symbols.pop().unwrap() {
-            (__l, __Symbol::Variant5(__v), __r) => (__l, __v, __r),
-            _ => panic!("symbol type mismatch")
-        }
-    }
-    pub(crate) fn __reduce0<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>) = "->", Type => ActionFn(95);
-        let __sym1 = __pop_Variant1(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action95::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant1(__nt), __end));
-        (2, 0)
-    }
-    pub(crate) fn __reduce1<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>)? = "->", Type => ActionFn(115);
-        let __sym1 = __pop_Variant1(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action115::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant2(__nt), __end));
-        (2, 1)
-    }
-    pub(crate) fn __reduce2<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("->" <Type>)? =  => ActionFn(94);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action94::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant2(__nt), __end));
-        (0, 1)
-    }
-    pub(crate) fn __reduce3<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>) = "???.", Member => ActionFn(83);
-        let __sym1 = __pop_Variant3(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action83::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (2, 2)
-    }
-    pub(crate) fn __reduce4<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>)+ = "???.", Member => ActionFn(118);
-        let __sym1 = __pop_Variant3(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action118::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant4(__nt), __end));
-        (2, 3)
-    }
-    pub(crate) fn __reduce5<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("???." <Member>)+ = ("???." <Member>)+, "???.", Member => ActionFn(119);
-        let __sym2 = __pop_Variant3(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant4(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action119::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant4(__nt), __end));
-        (3, 3)
-    }
-    pub(crate) fn __reduce6<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline") = "newline" => ActionFn(102);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action102::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant0(__nt), __end));
-        (1, 4)
-    }
-    pub(crate) fn __reduce7<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")* =  => ActionFn(90);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action90::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (0, 5)
-    }
-    pub(crate) fn __reduce8<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")* = ("newline")+ => ActionFn(91);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action91::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (1, 5)
-    }
-    pub(crate) fn __reduce9<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")+ = "newline" => ActionFn(120);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action120::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (1, 6)
-    }
-    pub(crate) fn __reduce10<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("newline")+ = ("newline")+, "newline" => ActionFn(121);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action121::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant5(__nt), __end));
-        (2, 6)
-    }
-    pub(crate) fn __reduce11<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>) = "|", PipelineElement => ActionFn(89);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action89::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 7)
-    }
-    pub(crate) fn __reduce12<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)* =  => ActionFn(87);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action87::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (0, 8)
-    }
-    pub(crate) fn __reduce13<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)* = ("|" <PipelineElement>)+ => ActionFn(88);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action88::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (1, 8)
-    }
-    pub(crate) fn __reduce14<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)+ = "|", PipelineElement => ActionFn(126);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action126::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (2, 9)
-    }
-    pub(crate) fn __reduce15<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ("|" <PipelineElement>)+ = ("|" <PipelineElement>)+, "|", PipelineElement => ActionFn(127);
-        let __sym2 = __pop_Variant6(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action127::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (3, 9)
-    }
-    pub(crate) fn __reduce16<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>) = ("newline")+, Item => ActionFn(99);
-        let __sym1 = __pop_Variant8(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action99::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (2, 10)
-    }
-    pub(crate) fn __reduce17<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)* =  => ActionFn(97);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action97::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (0, 11)
-    }
-    pub(crate) fn __reduce18<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)* = (("newline")+ <Item>)+ => ActionFn(98);
-        let __sym0 = __pop_Variant9(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action98::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (1, 11)
-    }
-    pub(crate) fn __reduce19<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)+ = ("newline")+, Item => ActionFn(130);
-        let __sym1 = __pop_Variant8(__symbols);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action130::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (2, 12)
-    }
-    pub(crate) fn __reduce20<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (("newline")+ <Item>)+ = (("newline")+ <Item>)+, ("newline")+, Item => ActionFn(131);
-        let __sym2 = __pop_Variant8(__symbols);
-        let __sym1 = __pop_Variant5(__symbols);
-        let __sym0 = __pop_Variant9(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action131::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant9(__nt), __end));
-        (3, 12)
-    }
-    pub(crate) fn __reduce21<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>) = CallArgument => ActionFn(86);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action86::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 13)
-    }
-    pub(crate) fn __reduce22<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>)+ = CallArgument => ActionFn(134);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action134::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (1, 14)
-    }
-    pub(crate) fn __reduce23<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<CallArgument>)+ = (<CallArgument>)+, CallArgument => ActionFn(135);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant7(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action135::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant7(__nt), __end));
-        (2, 14)
-    }
-    pub(crate) fn __reduce24<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines) = FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(110);
-        let __sym3 = __pop_Variant21(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant21(__symbols);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym3.2.clone();
-        let __nt = super::__action110::<>(__sym0, __sym1, __sym2, __sym3);
-        __symbols.push((__start, __Symbol::Variant10(__nt), __end));
-        (4, 15)
-    }
-    pub(crate) fn __reduce25<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)* =  => ActionFn(108);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action108::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (0, 16)
-    }
-    pub(crate) fn __reduce26<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)* = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ => ActionFn(109);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action109::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (1, 16)
-    }
-    pub(crate) fn __reduce27<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ = FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(136);
-        let __sym3 = __pop_Variant21(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant21(__symbols);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym3.2.clone();
-        let __nt = super::__action136::<>(__sym0, __sym1, __sym2, __sym3);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (4, 17)
-    }
-    pub(crate) fn __reduce28<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+, FormalParameter, OptionalNewlines, ",", OptionalNewlines => ActionFn(137);
-        let __sym4 = __pop_Variant21(__symbols);
-        let __sym3 = __pop_Variant0(__symbols);
-        let __sym2 = __pop_Variant21(__symbols);
-        let __sym1 = __pop_Variant10(__symbols);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym4.2.clone();
-        let __nt = super::__action137::<>(__sym0, __sym1, __sym2, __sym3, __sym4);
-        __symbols.push((__start, __Symbol::Variant11(__nt), __end));
-        (5, 17)
-    }
-    pub(crate) fn __reduce29<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // @L =  => ActionFn(103);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action103::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant12(__nt), __end));
-        (0, 18)
-    }
-    pub(crate) fn __reduce30<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // @R =  => ActionFn(96);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action96::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant12(__nt), __end));
-        (0, 19)
-    }
-    pub(crate) fn __reduce31<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ArgumentExpression = Expression => ActionFn(48);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action48::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 20)
-    }
-    pub(crate) fn __reduce32<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ArgumentExpression = BareExpression => ActionFn(49);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action49::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 20)
-    }
-    pub(crate) fn __reduce33<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Bare = "bare" => ActionFn(61);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action61::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant13(__nt), __end));
-        (1, 21)
-    }
-    pub(crate) fn __reduce34<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BareExpression = Bare => ActionFn(179);
-        let __sym0 = __pop_Variant13(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action179::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 22)
-    }
-    pub(crate) fn __reduce35<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Binary = ArgumentExpression, SpannedOperator, ArgumentExpression => ActionFn(180);
-        let __sym2 = __pop_Variant6(__symbols);
-        let __sym1 = __pop_Variant27(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action180::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 23)
-    }
-    pub(crate) fn __reduce36<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Block = "{", SingleExpression, "}" => ActionFn(181);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action181::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant14(__nt), __end));
-        (3, 24)
-    }
-    pub(crate) fn __reduce37<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Block = "{", BareExpression, "}" => ActionFn(182);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action182::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant14(__nt), __end));
-        (3, 24)
-    }
-    pub(crate) fn __reduce38<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BlockExpression = "{", SingleExpression, "}" => ActionFn(183);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action183::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 25)
-    }
-    pub(crate) fn __reduce39<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // BlockExpression = "{", BareExpression, "}" => ActionFn(184);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action184::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 25)
-    }
-    pub(crate) fn __reduce40<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = Expression, SingleCallArgument => ActionFn(185);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action185::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 26)
-    }
-    pub(crate) fn __reduce41<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = Expression, CallArgument, (<CallArgument>)+ => ActionFn(186);
-        let __sym2 = __pop_Variant7(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action186::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 26)
-    }
-    pub(crate) fn __reduce42<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = BareExpression, SingleCallArgument => ActionFn(187);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action187::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 26)
-    }
-    pub(crate) fn __reduce43<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Call = BareExpression, CallArgument, (<CallArgument>)+ => ActionFn(188);
-        let __sym2 = __pop_Variant7(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action188::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 26)
-    }
-    pub(crate) fn __reduce44<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CallArgument = ArgumentExpression => ActionFn(50);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action50::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 27)
-    }
-    pub(crate) fn __reduce45<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CallArgument = Flag => ActionFn(51);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action51::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 27)
-    }
-    pub(crate) fn __reduce46<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = FormalParameter => ActionFn(218);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action218::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 28)
-    }
-    pub(crate) fn __reduce47<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> =  => ActionFn(219);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action219::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (0, 28)
-    }
-    pub(crate) fn __reduce48<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+, FormalParameter => ActionFn(220);
-        let __sym1 = __pop_Variant10(__symbols);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action220::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (2, 28)
-    }
-    pub(crate) fn __reduce49<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Comma<FormalParameter> = (<FormalParameter> OptionalNewlines "," OptionalNewlines)+ => ActionFn(221);
-        let __sym0 = __pop_Variant11(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action221::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 28)
-    }
-    pub(crate) fn __reduce50<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // CommandName = "command-name" => ActionFn(189);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action189::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant16(__nt), __end));
-        (1, 29)
-    }
-    pub(crate) fn __reduce51<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Expression = MemberHeadExpression => ActionFn(46);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action46::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 30)
-    }
-    pub(crate) fn __reduce52<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Expression = MemberHeadExpression, ("???." <Member>)+ => ActionFn(190);
-        let __sym1 = __pop_Variant4(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action190::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 30)
-    }
-    pub(crate) fn __reduce53<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Flag = "-", Bare => ActionFn(191);
-        let __sym1 = __pop_Variant13(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action191::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 31)
-    }
-    pub(crate) fn __reduce54<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Flag = "--", Bare => ActionFn(192);
-        let __sym1 = __pop_Variant13(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action192::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 31)
-    }
-    pub(crate) fn __reduce55<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter = ParameterName, ":", Type => ActionFn(193);
-        let __sym2 = __pop_Variant1(__symbols);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant23(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action193::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant10(__nt), __end));
-        (3, 32)
-    }
-    pub(crate) fn __reduce56<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter? = FormalParameter => ActionFn(106);
-        let __sym0 = __pop_Variant10(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action106::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant17(__nt), __end));
-        (1, 33)
-    }
-    pub(crate) fn __reduce57<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // FormalParameter? =  => ActionFn(107);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action107::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant17(__nt), __end));
-        (0, 33)
-    }
-    pub(crate) fn __reduce58<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Function = "function", CommandName, "start-params", ParameterList, "end-params", "->", Type, Block => ActionFn(194);
-        let __sym7 = __pop_Variant14(__symbols);
-        let __sym6 = __pop_Variant1(__symbols);
-        let __sym5 = __pop_Variant0(__symbols);
-        let __sym4 = __pop_Variant0(__symbols);
-        let __sym3 = __pop_Variant15(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym7.2.clone();
-        let __nt = super::__action194::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5, __sym6, __sym7);
-        __symbols.push((__start, __Symbol::Variant18(__nt), __end));
-        (8, 34)
-    }
-    pub(crate) fn __reduce59<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Function = "function", CommandName, "start-params", ParameterList, "end-params", Block => ActionFn(195);
-        let __sym5 = __pop_Variant14(__symbols);
-        let __sym4 = __pop_Variant0(__symbols);
-        let __sym3 = __pop_Variant15(__symbols);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym5.2.clone();
-        let __nt = super::__action195::<>(__sym0, __sym1, __sym2, __sym3, __sym4, __sym5);
-        __symbols.push((__start, __Symbol::Variant18(__nt), __end));
-        (6, 34)
-    }
-    pub(crate) fn __reduce60<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Int = "num" => ActionFn(73);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action73::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant19(__nt), __end));
-        (1, 35)
-    }
-    pub(crate) fn __reduce61<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Item = Pipeline => ActionFn(196);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action196::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (1, 36)
-    }
-    pub(crate) fn __reduce62<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Item = Function => ActionFn(197);
-        let __sym0 = __pop_Variant18(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action197::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant8(__nt), __end));
-        (1, 36)
-    }
-    pub(crate) fn __reduce63<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = String => ActionFn(28);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action28::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce64<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = Int => ActionFn(198);
-        let __sym0 = __pop_Variant19(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action198::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce65<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = UnitsNum => ActionFn(30);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action30::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce66<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // LeafExpression = Var => ActionFn(31);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action31::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 37)
-    }
-    pub(crate) fn __reduce67<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "member" => ActionFn(62);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action62::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce68<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "dqmember" => ActionFn(63);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action63::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce69<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "sqmember" => ActionFn(64);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action64::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce70<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Member = "function" => ActionFn(65);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action65::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant3(__nt), __end));
-        (1, 38)
-    }
-    pub(crate) fn __reduce71<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = LeafExpression => ActionFn(41);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action41::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 39)
-    }
-    pub(crate) fn __reduce72<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = BlockExpression => ActionFn(42);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action42::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 39)
-    }
-    pub(crate) fn __reduce73<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", Call, ")" => ActionFn(199);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action199::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce74<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", BareExpression, ")" => ActionFn(200);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action200::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce75<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // MemberHeadExpression = "(", Binary, ")" => ActionFn(201);
-        let __sym2 = __pop_Variant0(__symbols);
-        let __sym1 = __pop_Variant6(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym2.2.clone();
-        let __nt = super::__action201::<>(__sym0, __sym1, __sym2);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (3, 39)
-    }
-    pub(crate) fn __reduce76<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Module = Item => ActionFn(202);
-        let __sym0 = __pop_Variant8(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action202::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (1, 40)
-    }
-    pub(crate) fn __reduce77<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Module = Item, (("newline")+ <Item>)+ => ActionFn(203);
-        let __sym1 = __pop_Variant9(__symbols);
-        let __sym0 = __pop_Variant8(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action203::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (2, 40)
-    }
-    pub(crate) fn __reduce78<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Newlines = ("newline")+ => ActionFn(59);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action59::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (1, 41)
-    }
-    pub(crate) fn __reduce79<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "==" => ActionFn(67);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action67::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce80<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "!=" => ActionFn(68);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action68::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce81<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "<" => ActionFn(69);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action69::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce82<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = ">" => ActionFn(70);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action70::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce83<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = "<=" => ActionFn(71);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action71::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce84<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Operator = ">=" => ActionFn(72);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action72::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant22(__nt), __end));
-        (1, 42)
-    }
-    pub(crate) fn __reduce85<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // OptionalNewlines =  => ActionFn(122);
-        let __start = __symbols.last().map(|s| s.2.clone()).unwrap_or_default();
-        let __end = __lookahead_start.cloned().unwrap_or_else(|| __start.clone());
-        let __nt = super::__action122::<>(&__start, &__end);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (0, 43)
-    }
-    pub(crate) fn __reduce86<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // OptionalNewlines = ("newline")+ => ActionFn(123);
-        let __sym0 = __pop_Variant5(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action123::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant21(__nt), __end));
-        (1, 43)
-    }
-    pub(crate) fn __reduce87<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterList = Comma<FormalParameter> => ActionFn(7);
-        let __sym0 = __pop_Variant15(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action7::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant15(__nt), __end));
-        (1, 44)
-    }
-    pub(crate) fn __reduce88<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = "-", SpannedBare => ActionFn(204);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action204::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (2, 45)
-    }
-    pub(crate) fn __reduce89<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = "--", SpannedBare => ActionFn(205);
-        let __sym1 = __pop_Variant16(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action205::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (2, 45)
-    }
-    pub(crate) fn __reduce90<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterName = ParameterVariable => ActionFn(206);
-        let __sym0 = __pop_Variant24(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action206::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant23(__nt), __end));
-        (1, 45)
-    }
-    pub(crate) fn __reduce91<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ParameterVariable = "$", "variable" => ActionFn(207);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action207::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant24(__nt), __end));
-        (2, 46)
-    }
-    pub(crate) fn __reduce92<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Pipeline = PipelineElement => ActionFn(208);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action208::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 47)
-    }
-    pub(crate) fn __reduce93<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Pipeline = PipelineElement, ("|" <PipelineElement>)+ => ActionFn(209);
-        let __sym1 = __pop_Variant7(__symbols);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action209::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (2, 47)
-    }
-    pub(crate) fn __reduce94<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // PipelineElement = BareExpression => ActionFn(210);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action210::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 48)
-    }
-    pub(crate) fn __reduce95<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // PipelineElement = SingleExpression => ActionFn(27);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action27::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 48)
-    }
-    pub(crate) fn __reduce96<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "any" => ActionFn(14);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action14::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce97<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "int" => ActionFn(15);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action15::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce98<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "decimal" => ActionFn(16);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action16::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce99<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "bytes" => ActionFn(17);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action17::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce100<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "text" => ActionFn(18);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action18::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce101<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "boolean" => ActionFn(19);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action19::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce102<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "date" => ActionFn(20);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action20::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce103<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "object" => ActionFn(21);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action21::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce104<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "list" => ActionFn(22);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action22::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce105<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // RawType = "block" => ActionFn(23);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action23::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant26(__nt), __end));
-        (1, 49)
-    }
-    pub(crate) fn __reduce106<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ReplLine = Pipeline => ActionFn(124);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action124::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (1, 50)
-    }
-    pub(crate) fn __reduce107<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // ReplLine = Pipeline, ("newline")+ => ActionFn(125);
-        let __sym1 = __pop_Variant5(__symbols);
-        let __sym0 = __pop_Variant25(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action125::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant25(__nt), __end));
-        (2, 50)
-    }
-    pub(crate) fn __reduce108<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleCallArgument = CallArgument => ActionFn(52);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action52::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 51)
-    }
-    pub(crate) fn __reduce109<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleCallArgument = Binary => ActionFn(53);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action53::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 51)
-    }
-    pub(crate) fn __reduce110<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Expression => ActionFn(54);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action54::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce111<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Call => ActionFn(55);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action55::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce112<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SingleExpression = Binary => ActionFn(56);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action56::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 52)
-    }
-    pub(crate) fn __reduce113<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SpannedBare = Bare => ActionFn(211);
-        let __sym0 = __pop_Variant13(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action211::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant16(__nt), __end));
-        (1, 53)
-    }
-    pub(crate) fn __reduce114<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // SpannedOperator = Operator => ActionFn(212);
-        let __sym0 = __pop_Variant22(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action212::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant27(__nt), __end));
-        (1, 54)
-    }
-    pub(crate) fn __reduce115<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // String = "sqstring" => ActionFn(213);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action213::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 55)
-    }
-    pub(crate) fn __reduce116<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // String = "dqstring" => ActionFn(214);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action214::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 55)
-    }
-    pub(crate) fn __reduce117<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Type = RawType => ActionFn(215);
-        let __sym0 = __pop_Variant26(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action215::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant1(__nt), __end));
-        (1, 56)
-    }
-    pub(crate) fn __reduce118<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // UnitsNum = Int, "unit" => ActionFn(216);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant19(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action216::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 57)
-    }
-    pub(crate) fn __reduce119<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // Var = "$", "variable" => ActionFn(217);
-        let __sym1 = __pop_Variant0(__symbols);
-        let __sym0 = __pop_Variant0(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym1.2.clone();
-        let __nt = super::__action217::<>(__sym0, __sym1);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (2, 58)
-    }
-    pub(crate) fn __reduce120<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // __Call = Call => ActionFn(2);
-        let __sym0 = __pop_Variant6(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action2::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant6(__nt), __end));
-        (1, 59)
-    }
-    pub(crate) fn __reduce121<
-        'input,
-    >(
-        __action: i8,
-        __lookahead_start: Option<&usize>,
-        __states: &mut ::std::vec::Vec<i8>,
-        __symbols: &mut ::std::vec::Vec<(usize,__Symbol<'input>,usize)>,
-        _: ::std::marker::PhantomData<(&'input ())>,
-    ) -> (usize, usize)
-    {
-        // __Module = Module => ActionFn(0);
-        let __sym0 = __pop_Variant20(__symbols);
-        let __start = __sym0.0.clone();
-        let __end = __sym0.2.clone();
-        let __nt = super::__action0::<>(__sym0);
-        __symbols.push((__start, __Symbol::Variant20(__nt), __end));
-        (1, 60)
-    }
-}
-pub use self::__parse__ReplLine::ReplLineParser;
-
-fn __action0<
-    'input,
->(
-    (_, __0, _): (usize, Module, usize),
-) -> Module
-{
-    (__0)
-}
-
-fn __action1<
-    'input,
->(
-    (_, __0, _): (usize, Pipeline, usize),
-) -> Pipeline
-{
-    (__0)
-}
-
-fn __action2<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action3<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, first, _): (usize, Item, usize),
-    (_, items, _): (usize, ::std::vec::Vec<Item>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Module
-{
-    ModuleBuilder::spanned_items(concat(first, items), l, r)
-}
-
-fn __action4<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, pipeline, _): (usize, Pipeline, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Item
-{
-    Spanned::from_item(RawItem::Expression(pipeline), Span::from((l, r)))
-}
-
-fn __action5<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, function, _): (usize, Function, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Item
-{
-    Spanned::from_item(RawItem::Function(function), Span::from((l, r)))
-}
-
-fn __action6<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, bare, _): (usize, Spanned<Bare>, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, params, _): (usize, Vec<FormalParameter>, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, ret, _): (usize, ::std::option::Option<Spanned<Type>>, usize),
-    (_, block, _): (usize, Spanned<Block>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Function
-{
-    {
-        ModuleBuilder::spanned_function((bare, params, ret, block), l, r)
-    }
-}
-
-fn __action7<
-    'input,
->(
-    (_, params, _): (usize, Vec<FormalParameter>, usize),
-) -> Vec<FormalParameter>
-{
-    params
-}
-
-fn __action8<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, name, _): (usize, ParameterIdentifier, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, ty, _): (usize, Spanned<Type>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> FormalParameter
-{
-    ModuleBuilder::spanned_formal_parameter((name, ty), l, r)
-}
-
-fn __action9<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, b, _): (usize, Spanned<Bare>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> ParameterIdentifier
-{
-    ParameterIdentifier::shorthand(b.map(|b| b.to_string()), (l, r))
-}
-
-fn __action10<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, b, _): (usize, Spanned<Bare>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> ParameterIdentifier
-{
-    ParameterIdentifier::flag(b.map(|b| b.to_string()), (l, r))
-}
-
-fn __action11<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, var, _): (usize, Spanned<Variable>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> ParameterIdentifier
-{
-    ParameterIdentifier::var(var, (l, r))
-}
-
-fn __action12<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, v, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Spanned<Variable>
-{
-    Spanned::from_item(ast::Variable::from_string(v.as_slice()), (l, r))
-}
-
-fn __action13<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, ty, _): (usize, Type, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Spanned<Type>
-{
-    Spanned::from_item(ty, (l, r))
-}
-
-fn __action14<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Any
-}
-
-fn __action15<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Int
-}
-
-fn __action16<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Decimal
-}
-
-fn __action17<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Bytes
-}
-
-fn __action18<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Text
-}
-
-fn __action19<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Boolean
-}
-
-fn __action20<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Date
-}
-
-fn __action21<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Object
-}
-
-fn __action22<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::List
-}
-
-fn __action23<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Type
-{
-    Type::Block
-}
-
-fn __action24<
-    'input,
->(
-    (_, __0, _): (usize, Pipeline, usize),
-    (_, _, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-) -> Pipeline
-{
-    (__0)
-}
-
-fn __action25<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, first, _): (usize, Expression, usize),
-    (_, rest, _): (usize, ::std::vec::Vec<Expression>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Pipeline
-{
-    Pipeline::from_parts(first, rest, l, r)
-}
-
-fn __action26<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, bare, _): (usize, Expression, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_call((bare, vec![]), l, r)
-}
-
-fn __action27<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    __0
-}
-
-fn __action28<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action29<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, int, _): (usize, i64, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_int(int, l, r)
-}
-
-fn __action30<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action31<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action32<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, rest, _): (usize, Expression, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_call((expr, vec![rest]), l, r)
-}
-
-fn __action33<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, first, _): (usize, Expression, usize),
-    (_, rest, _): (usize, ::std::vec::Vec<Expression>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_call((expr, { let mut rest = rest; let mut v = vec![first]; v.append(&mut rest); v }), l, r)
-}
-
-fn __action34<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, rest, _): (usize, Expression, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_call((expr, vec![rest]), l, r)
-}
-
-fn __action35<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, first, _): (usize, Expression, usize),
-    (_, rest, _): (usize, ::std::vec::Vec<Expression>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_call((expr, { let mut v = vec![first]; let mut rest = rest; v.append(&mut rest); v }), l, r)
-}
-
-fn __action36<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, left, _): (usize, Expression, usize),
-    (_, op, _): (usize, Spanned<Operator>, usize),
-    (_, right, _): (usize, Expression, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_binary((left, op, right), l, r)
-}
-
-fn __action37<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Spanned<Block>
-{
-    ExpressionBuilder::spanned_raw_block(expr, l, r)
-}
-
-fn __action38<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, bare, _): (usize, Expression, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Spanned<Block>
-{
-    {
-        let call = ExpressionBuilder::spanned_call(bare.clone(), bare.span.start, bare.span.end);
-        ExpressionBuilder::spanned_raw_block(call, l, r)
-    }
-}
-
-fn __action39<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_block(expr, l, r)
-}
-
-fn __action40<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, bare, _): (usize, Expression, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    {
-        let call = ExpressionBuilder::spanned_call(bare.clone(), bare.span.start, bare.span.end);
-        ExpressionBuilder::spanned_block(call, l, r)
-    }
-}
-
-fn __action41<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    __0
-}
-
-fn __action42<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    __0
-}
-
-fn __action43<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_call(expr, l, r)
-}
-
-fn __action44<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_call((expr, vec![]), l, r)
-}
-
-fn __action45<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_parens(expr, l, r)
-}
-
-fn __action46<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    __0
-}
-
-fn __action47<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, expr, _): (usize, Expression, usize),
-    (_, rest, _): (usize, ::std::vec::Vec<Spanned<String>>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_path((expr, rest), l, r)
-}
-
-fn __action48<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action49<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action50<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action51<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action52<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action53<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action54<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action55<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action56<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action57<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, bare, _): (usize, Bare, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_bare(bare, l, r)
-}
-
-fn __action58<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, op, _): (usize, Operator, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Spanned<Operator>
-{
-    Spanned::from_item(op, Span::from((l, r)))
-}
-
-fn __action59<
-    'input,
->(
-    (_, __0, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-) -> ()
-{
-    ()
-}
-
-fn __action60<
-    'input,
->(
-    (_, __0, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-) -> ()
-{
-    ()
-}
-
-fn __action61<
-    'input,
->(
-    (_, head, _): (usize, SpannedToken<'input>, usize),
-) -> Bare
-{
-    Bare::from_string(head.as_slice())
-}
-
-fn __action62<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Spanned<String>
-{
-    __0.to_spanned_string()
-}
-
-fn __action63<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Spanned<String>
-{
-    __0.to_spanned_string()
-}
-
-fn __action64<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Spanned<String>
-{
-    __0.to_spanned_string()
-}
-
-fn __action65<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Spanned<String>
-{
-    __0.to_spanned_string()
-}
-
-fn __action66<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, name, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Spanned<Bare>
-{
-    Spanned::from_item(Bare::from_string(name.as_slice()), (l, r))
-}
-
-fn __action67<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Operator
-{
-    Operator::Equal
-}
-
-fn __action68<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Operator
-{
-    Operator::NotEqual
-}
-
-fn __action69<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Operator
-{
-    Operator::LessThan
-}
-
-fn __action70<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Operator
-{
-    Operator::GreaterThan
-}
-
-fn __action71<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Operator
-{
-    Operator::LessThanOrEqual
-}
-
-fn __action72<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> Operator
-{
-    Operator::GreaterThanOrEqual
-}
-
-fn __action73<
-    'input,
->(
-    (_, n, _): (usize, SpannedToken<'input>, usize),
-) -> i64
-{
-    i64::from_str(n.as_slice()).unwrap()
-}
-
-fn __action74<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, num, _): (usize, i64, usize),
-    (_, unit, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_unit((num, Unit::from_str(unit.as_slice()).unwrap()), l, r)
-}
-
-fn __action75<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, s, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_string(&s.as_slice()[1..(s.as_slice().len() - 1)], l, r)
-}
-
-fn __action76<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, s, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_string(&s.as_slice()[1..(s.as_slice().len() - 1)], l, r)
-}
-
-fn __action77<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, b, _): (usize, Bare, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_shorthand(b.to_string(), l, r)
-}
-
-fn __action78<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, b, _): (usize, Bare, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_flag(b.to_string(), l, r)
-}
-
-fn __action79<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, v, _): (usize, SpannedToken<'input>, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Expression
-{
-    ExpressionBuilder::spanned_var(v.as_slice(), l, r)
-}
-
-fn __action80<
-    'input,
->(
-    (_, l, _): (usize, usize, usize),
-    (_, bare, _): (usize, Bare, usize),
-    (_, r, _): (usize, usize, usize),
-) -> Spanned<Bare>
-{
-    Spanned::from_item(bare, (l, r))
-}
-
-fn __action81<
-    'input,
->(
-    (_, __0, _): (usize, Spanned<String>, usize),
-) -> ::std::vec::Vec<Spanned<String>>
-{
-    vec![__0]
-}
-
-fn __action82<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<Spanned<String>>, usize),
-    (_, e, _): (usize, Spanned<String>, usize),
-) -> ::std::vec::Vec<Spanned<String>>
-{
-    { let mut v = v; v.push(e); v }
-}
-
-fn __action83<
-    'input,
->(
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, __0, _): (usize, Spanned<String>, usize),
-) -> Spanned<String>
-{
-    (__0)
-}
-
-fn __action84<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    vec![__0]
-}
-
-fn __action85<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<Expression>, usize),
-    (_, e, _): (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    { let mut v = v; v.push(e); v }
-}
-
-fn __action86<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action87<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> ::std::vec::Vec<Expression>
-{
-    vec![]
-}
-
-fn __action88<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<Expression>, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    v
-}
-
-fn __action89<
-    'input,
->(
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, __0, _): (usize, Expression, usize),
-) -> Expression
-{
-    (__0)
-}
-
-fn __action90<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> ::std::vec::Vec<SpannedToken<'input>>
-{
-    vec![]
-}
-
-fn __action91<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-) -> ::std::vec::Vec<SpannedToken<'input>>
-{
-    v
-}
-
-fn __action92<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<FormalParameter>, usize),
-    (_, e, _): (usize, ::std::option::Option<FormalParameter>, usize),
-) -> Vec<FormalParameter>
-{
-    match e { // (2)
-        None => v,
-        Some(e) => {
-            let mut v = v;
-            v.push(e);
-            v
-        }
-    }
-}
-
-fn __action93<
-    'input,
->(
-    (_, __0, _): (usize, Spanned<Type>, usize),
-) -> ::std::option::Option<Spanned<Type>>
-{
-    Some(__0)
-}
-
-fn __action94<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> ::std::option::Option<Spanned<Type>>
-{
-    None
-}
-
-fn __action95<
-    'input,
->(
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, __0, _): (usize, Spanned<Type>, usize),
-) -> Spanned<Type>
-{
-    (__0)
-}
-
-fn __action96<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> usize
-{
-    __lookbehind.clone()
-}
-
-fn __action97<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> ::std::vec::Vec<Item>
-{
-    vec![]
-}
-
-fn __action98<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<Item>, usize),
-) -> ::std::vec::Vec<Item>
-{
-    v
-}
-
-fn __action99<
-    'input,
->(
-    (_, _, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-    (_, __0, _): (usize, Item, usize),
-) -> Item
-{
-    (__0)
-}
-
-fn __action100<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> ::std::vec::Vec<SpannedToken<'input>>
-{
-    vec![__0]
-}
-
-fn __action101<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-    (_, e, _): (usize, SpannedToken<'input>, usize),
-) -> ::std::vec::Vec<SpannedToken<'input>>
-{
-    { let mut v = v; v.push(e); v }
-}
-
-fn __action102<
-    'input,
->(
-    (_, __0, _): (usize, SpannedToken<'input>, usize),
-) -> SpannedToken<'input>
-{
-    (__0)
-}
-
-fn __action103<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> usize
-{
-    __lookahead.clone()
-}
-
-fn __action104<
-    'input,
->(
-    (_, __0, _): (usize, Item, usize),
-) -> ::std::vec::Vec<Item>
-{
-    vec![__0]
-}
-
-fn __action105<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<Item>, usize),
-    (_, e, _): (usize, Item, usize),
-) -> ::std::vec::Vec<Item>
-{
-    { let mut v = v; v.push(e); v }
-}
-
-fn __action106<
-    'input,
->(
-    (_, __0, _): (usize, FormalParameter, usize),
-) -> ::std::option::Option<FormalParameter>
-{
-    Some(__0)
-}
-
-fn __action107<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> ::std::option::Option<FormalParameter>
-{
-    None
-}
-
-fn __action108<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> ::std::vec::Vec<FormalParameter>
-{
-    vec![]
-}
-
-fn __action109<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<FormalParameter>, usize),
-) -> ::std::vec::Vec<FormalParameter>
-{
-    v
-}
-
-fn __action110<
-    'input,
->(
-    (_, __0, _): (usize, FormalParameter, usize),
-    (_, _, _): (usize, (), usize),
-    (_, _, _): (usize, SpannedToken<'input>, usize),
-    (_, _, _): (usize, (), usize),
-) -> FormalParameter
-{
-    (__0)
-}
-
-fn __action111<
-    'input,
->(
-    (_, __0, _): (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    vec![__0]
-}
-
-fn __action112<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<Expression>, usize),
-    (_, e, _): (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    { let mut v = v; v.push(e); v }
-}
-
-fn __action113<
-    'input,
->(
-    (_, __0, _): (usize, FormalParameter, usize),
-) -> ::std::vec::Vec<FormalParameter>
-{
-    vec![__0]
-}
-
-fn __action114<
-    'input,
->(
-    (_, v, _): (usize, ::std::vec::Vec<FormalParameter>, usize),
-    (_, e, _): (usize, FormalParameter, usize),
-) -> ::std::vec::Vec<FormalParameter>
-{
-    { let mut v = v; v.push(e); v }
-}
-
-fn __action115<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Type>, usize),
-) -> ::std::option::Option<Spanned<Type>>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action95(
-        __0,
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action93(
-        __temp0,
-    )
-}
-
-fn __action116<
-    'input,
->(
-    __0: (usize, usize, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, Spanned<Bare>, usize),
-    __3: (usize, SpannedToken<'input>, usize),
-    __4: (usize, Vec<FormalParameter>, usize),
-    __5: (usize, SpannedToken<'input>, usize),
-    __6: (usize, SpannedToken<'input>, usize),
-    __7: (usize, Spanned<Type>, usize),
-    __8: (usize, Spanned<Block>, usize),
-    __9: (usize, usize, usize),
-) -> Function
-{
-    let __start0 = __6.0.clone();
-    let __end0 = __7.2.clone();
-    let __temp0 = __action115(
-        __6,
-        __7,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action6(
-        __0,
-        __1,
-        __2,
-        __3,
-        __4,
-        __5,
-        __temp0,
-        __8,
-        __9,
-    )
-}
-
-fn __action117<
-    'input,
->(
-    __0: (usize, usize, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, Spanned<Bare>, usize),
-    __3: (usize, SpannedToken<'input>, usize),
-    __4: (usize, Vec<FormalParameter>, usize),
-    __5: (usize, SpannedToken<'input>, usize),
-    __6: (usize, Spanned<Block>, usize),
-    __7: (usize, usize, usize),
-) -> Function
-{
-    let __start0 = __5.2.clone();
-    let __end0 = __6.0.clone();
-    let __temp0 = __action94(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action6(
-        __0,
-        __1,
-        __2,
-        __3,
-        __4,
-        __5,
-        __temp0,
-        __6,
-        __7,
-    )
-}
-
-fn __action118<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<String>, usize),
-) -> ::std::vec::Vec<Spanned<String>>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action83(
-        __0,
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action81(
-        __temp0,
-    )
-}
-
-fn __action119<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<Spanned<String>>, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, Spanned<String>, usize),
-) -> ::std::vec::Vec<Spanned<String>>
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action83(
-        __1,
-        __2,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action82(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action120<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-) -> ::std::vec::Vec<SpannedToken<'input>>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action102(
-        __0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action100(
-        __temp0,
-    )
-}
-
-fn __action121<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-) -> ::std::vec::Vec<SpannedToken<'input>>
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action102(
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action101(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action122<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> ()
-{
-    let __start0 = __lookbehind.clone();
-    let __end0 = __lookahead.clone();
-    let __temp0 = __action90(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action60(
-        __temp0,
-    )
-}
-
-fn __action123<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-) -> ()
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action91(
-        __0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action60(
-        __temp0,
-    )
-}
-
-fn __action124<
-    'input,
->(
-    __0: (usize, Pipeline, usize),
-) -> Pipeline
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action90(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action24(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action125<
-    'input,
->(
-    __0: (usize, Pipeline, usize),
-    __1: (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-) -> Pipeline
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action91(
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action24(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action126<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action89(
-        __0,
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action111(
-        __temp0,
-    )
-}
-
-fn __action127<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<Expression>, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action89(
-        __1,
-        __2,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action112(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action128<
-    'input,
->(
-    __0: (usize, usize, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, usize, usize),
-) -> Pipeline
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __2.0.clone();
-    let __temp0 = __action87(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action25(
-        __0,
-        __1,
-        __temp0,
-        __2,
-    )
-}
-
-fn __action129<
-    'input,
->(
-    __0: (usize, usize, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, ::std::vec::Vec<Expression>, usize),
-    __3: (usize, usize, usize),
-) -> Pipeline
-{
-    let __start0 = __2.0.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action88(
-        __2,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action25(
-        __0,
-        __1,
-        __temp0,
-        __3,
-    )
-}
-
-fn __action130<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-    __1: (usize, Item, usize),
-) -> ::std::vec::Vec<Item>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action99(
-        __0,
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action104(
-        __temp0,
-    )
-}
-
-fn __action131<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<Item>, usize),
-    __1: (usize, ::std::vec::Vec<SpannedToken<'input>>, usize),
-    __2: (usize, Item, usize),
-) -> ::std::vec::Vec<Item>
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action99(
-        __1,
-        __2,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action105(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action132<
-    'input,
->(
-    __0: (usize, usize, usize),
-    __1: (usize, Item, usize),
-    __2: (usize, usize, usize),
-) -> Module
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __2.0.clone();
-    let __temp0 = __action97(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action3(
-        __0,
-        __1,
-        __temp0,
-        __2,
-    )
-}
-
-fn __action133<
-    'input,
->(
-    __0: (usize, usize, usize),
-    __1: (usize, Item, usize),
-    __2: (usize, ::std::vec::Vec<Item>, usize),
-    __3: (usize, usize, usize),
-) -> Module
-{
-    let __start0 = __2.0.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action98(
-        __2,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action3(
-        __0,
-        __1,
-        __temp0,
-        __3,
-    )
-}
-
-fn __action134<
-    'input,
->(
-    __0: (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action86(
-        __0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action84(
-        __temp0,
-    )
-}
-
-fn __action135<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<Expression>, usize),
-    __1: (usize, Expression, usize),
-) -> ::std::vec::Vec<Expression>
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action86(
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action85(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action136<
-    'input,
->(
-    __0: (usize, FormalParameter, usize),
-    __1: (usize, (), usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, (), usize),
-) -> ::std::vec::Vec<FormalParameter>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __3.2.clone();
-    let __temp0 = __action110(
-        __0,
-        __1,
-        __2,
-        __3,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action113(
-        __temp0,
-    )
-}
-
-fn __action137<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<FormalParameter>, usize),
-    __1: (usize, FormalParameter, usize),
-    __2: (usize, (), usize),
-    __3: (usize, SpannedToken<'input>, usize),
-    __4: (usize, (), usize),
-) -> ::std::vec::Vec<FormalParameter>
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __4.2.clone();
-    let __temp0 = __action110(
-        __1,
-        __2,
-        __3,
-        __4,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action114(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action138<
-    'input,
->(
-    __0: (usize, ::std::option::Option<FormalParameter>, usize),
-) -> Vec<FormalParameter>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action108(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action92(
-        __temp0,
-        __0,
-    )
-}
-
-fn __action139<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<FormalParameter>, usize),
-    __1: (usize, ::std::option::Option<FormalParameter>, usize),
-) -> Vec<FormalParameter>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action109(
-        __0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action92(
-        __temp0,
-        __1,
-    )
-}
-
-fn __action140<
-    'input,
->(
-    __0: (usize, Bare, usize),
-    __1: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action57(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action141<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Spanned<Operator>, usize),
-    __2: (usize, Expression, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action36(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action142<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, usize, usize),
-) -> Spanned<Block>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action37(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action143<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, usize, usize),
-) -> Spanned<Block>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action38(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action144<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action39(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action145<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action40(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action146<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action32(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action147<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, ::std::vec::Vec<Expression>, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action33(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action148<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action34(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action149<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, ::std::vec::Vec<Expression>, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action35(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action150<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, usize, usize),
-) -> Spanned<Bare>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action66(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action151<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, ::std::vec::Vec<Spanned<String>>, usize),
-    __2: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action47(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action152<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Bare, usize),
-    __2: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action77(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action153<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Bare, usize),
-    __2: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action78(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action154<
-    'input,
->(
-    __0: (usize, ParameterIdentifier, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, Spanned<Type>, usize),
-    __3: (usize, usize, usize),
-) -> FormalParameter
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action8(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action155<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, Vec<FormalParameter>, usize),
-    __4: (usize, SpannedToken<'input>, usize),
-    __5: (usize, SpannedToken<'input>, usize),
-    __6: (usize, Spanned<Type>, usize),
-    __7: (usize, Spanned<Block>, usize),
-    __8: (usize, usize, usize),
-) -> Function
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action116(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-        __4,
-        __5,
-        __6,
-        __7,
-        __8,
-    )
-}
-
-fn __action156<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, Vec<FormalParameter>, usize),
-    __4: (usize, SpannedToken<'input>, usize),
-    __5: (usize, Spanned<Block>, usize),
-    __6: (usize, usize, usize),
-) -> Function
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action117(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-        __4,
-        __5,
-        __6,
-    )
-}
-
-fn __action157<
-    'input,
->(
-    __0: (usize, Pipeline, usize),
-    __1: (usize, usize, usize),
-) -> Item
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action4(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action158<
-    'input,
->(
-    __0: (usize, Function, usize),
-    __1: (usize, usize, usize),
-) -> Item
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action5(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action159<
-    'input,
->(
-    __0: (usize, i64, usize),
-    __1: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action29(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action160<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action43(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action161<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action44(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action162<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action45(
-        __temp0,
-        __0,
-        __1,
-        __2,
-        __3,
-    )
-}
-
-fn __action163<
-    'input,
->(
-    __0: (usize, Item, usize),
-    __1: (usize, usize, usize),
-) -> Module
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action132(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action164<
-    'input,
->(
-    __0: (usize, Item, usize),
-    __1: (usize, ::std::vec::Vec<Item>, usize),
-    __2: (usize, usize, usize),
-) -> Module
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action133(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action165<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-    __2: (usize, usize, usize),
-) -> ParameterIdentifier
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action9(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action166<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-    __2: (usize, usize, usize),
-) -> ParameterIdentifier
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action10(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action167<
-    'input,
->(
-    __0: (usize, Spanned<Variable>, usize),
-    __1: (usize, usize, usize),
-) -> ParameterIdentifier
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action11(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action168<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, usize, usize),
-) -> Spanned<Variable>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action12(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action169<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, usize, usize),
-) -> Pipeline
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action128(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action170<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, ::std::vec::Vec<Expression>, usize),
-    __2: (usize, usize, usize),
-) -> Pipeline
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action129(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action171<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action26(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action172<
-    'input,
->(
-    __0: (usize, Bare, usize),
-    __1: (usize, usize, usize),
-) -> Spanned<Bare>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action80(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action173<
-    'input,
->(
-    __0: (usize, Operator, usize),
-    __1: (usize, usize, usize),
-) -> Spanned<Operator>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action58(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action174<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action75(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action175<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action76(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action176<
-    'input,
->(
-    __0: (usize, Type, usize),
-    __1: (usize, usize, usize),
-) -> Spanned<Type>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action13(
-        __temp0,
-        __0,
-        __1,
-    )
-}
-
-fn __action177<
-    'input,
->(
-    __0: (usize, i64, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action74(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action178<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, usize, usize),
-) -> Expression
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.0.clone();
-    let __temp0 = __action103(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action79(
-        __temp0,
-        __0,
-        __1,
-        __2,
-    )
-}
-
-fn __action179<
-    'input,
->(
-    __0: (usize, Bare, usize),
-) -> Expression
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action140(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action180<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Spanned<Operator>, usize),
-    __2: (usize, Expression, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action141(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action181<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-) -> Spanned<Block>
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action142(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action182<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-) -> Spanned<Block>
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action143(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action183<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action144(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action184<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action145(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action185<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-) -> Expression
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action146(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action186<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, ::std::vec::Vec<Expression>, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action147(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action187<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-) -> Expression
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action148(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action188<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, ::std::vec::Vec<Expression>, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action149(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action189<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-) -> Spanned<Bare>
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action150(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action190<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, ::std::vec::Vec<Spanned<String>>, usize),
-) -> Expression
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action151(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action191<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Bare, usize),
-) -> Expression
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action152(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action192<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Bare, usize),
-) -> Expression
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action153(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action193<
-    'input,
->(
-    __0: (usize, ParameterIdentifier, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-    __2: (usize, Spanned<Type>, usize),
-) -> FormalParameter
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action154(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action194<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, Vec<FormalParameter>, usize),
-    __4: (usize, SpannedToken<'input>, usize),
-    __5: (usize, SpannedToken<'input>, usize),
-    __6: (usize, Spanned<Type>, usize),
-    __7: (usize, Spanned<Block>, usize),
-) -> Function
-{
-    let __start0 = __7.2.clone();
-    let __end0 = __7.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action155(
-        __0,
-        __1,
-        __2,
-        __3,
-        __4,
-        __5,
-        __6,
-        __7,
-        __temp0,
-    )
-}
-
-fn __action195<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-    __3: (usize, Vec<FormalParameter>, usize),
-    __4: (usize, SpannedToken<'input>, usize),
-    __5: (usize, Spanned<Block>, usize),
-) -> Function
-{
-    let __start0 = __5.2.clone();
-    let __end0 = __5.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action156(
-        __0,
-        __1,
-        __2,
-        __3,
-        __4,
-        __5,
-        __temp0,
-    )
-}
-
-fn __action196<
-    'input,
->(
-    __0: (usize, Pipeline, usize),
-) -> Item
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action157(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action197<
-    'input,
->(
-    __0: (usize, Function, usize),
-) -> Item
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action158(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action198<
-    'input,
->(
-    __0: (usize, i64, usize),
-) -> Expression
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action159(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action199<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action160(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action200<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action161(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action201<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Expression, usize),
-    __2: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __2.2.clone();
-    let __end0 = __2.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action162(
-        __0,
-        __1,
-        __2,
-        __temp0,
-    )
-}
-
-fn __action202<
-    'input,
->(
-    __0: (usize, Item, usize),
-) -> Module
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action163(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action203<
-    'input,
->(
-    __0: (usize, Item, usize),
-    __1: (usize, ::std::vec::Vec<Item>, usize),
-) -> Module
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action164(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action204<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-) -> ParameterIdentifier
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action165(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action205<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, Spanned<Bare>, usize),
-) -> ParameterIdentifier
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action166(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action206<
-    'input,
->(
-    __0: (usize, Spanned<Variable>, usize),
-) -> ParameterIdentifier
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action167(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action207<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-) -> Spanned<Variable>
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action168(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action208<
-    'input,
->(
-    __0: (usize, Expression, usize),
-) -> Pipeline
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action169(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action209<
-    'input,
->(
-    __0: (usize, Expression, usize),
-    __1: (usize, ::std::vec::Vec<Expression>, usize),
-) -> Pipeline
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action170(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action210<
-    'input,
->(
-    __0: (usize, Expression, usize),
-) -> Expression
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action171(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action211<
-    'input,
->(
-    __0: (usize, Bare, usize),
-) -> Spanned<Bare>
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action172(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action212<
-    'input,
->(
-    __0: (usize, Operator, usize),
-) -> Spanned<Operator>
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action173(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action213<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action174(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action214<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action175(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action215<
-    'input,
->(
-    __0: (usize, Type, usize),
-) -> Spanned<Type>
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action176(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action216<
-    'input,
->(
-    __0: (usize, i64, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action177(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action217<
-    'input,
->(
-    __0: (usize, SpannedToken<'input>, usize),
-    __1: (usize, SpannedToken<'input>, usize),
-) -> Expression
-{
-    let __start0 = __1.2.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action96(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action178(
-        __0,
-        __1,
-        __temp0,
-    )
-}
-
-fn __action218<
-    'input,
->(
-    __0: (usize, FormalParameter, usize),
-) -> Vec<FormalParameter>
-{
-    let __start0 = __0.0.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action106(
-        __0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action138(
-        __temp0,
-    )
-}
-
-fn __action219<
-    'input,
->(
-    __lookbehind: &usize,
-    __lookahead: &usize,
-) -> Vec<FormalParameter>
-{
-    let __start0 = __lookbehind.clone();
-    let __end0 = __lookahead.clone();
-    let __temp0 = __action107(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action138(
-        __temp0,
-    )
-}
-
-fn __action220<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<FormalParameter>, usize),
-    __1: (usize, FormalParameter, usize),
-) -> Vec<FormalParameter>
-{
-    let __start0 = __1.0.clone();
-    let __end0 = __1.2.clone();
-    let __temp0 = __action106(
-        __1,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action139(
-        __0,
-        __temp0,
-    )
-}
-
-fn __action221<
-    'input,
->(
-    __0: (usize, ::std::vec::Vec<FormalParameter>, usize),
-) -> Vec<FormalParameter>
-{
-    let __start0 = __0.2.clone();
-    let __end0 = __0.2.clone();
-    let __temp0 = __action107(
-        &__start0,
-        &__end0,
-    );
-    let __temp0 = (__start0, __temp0, __end0);
-    __action139(
-        __0,
-        __temp0,
-    )
-}
-
-pub trait __ToTriple<'input, > {
-    fn to_triple(value: Self) -> Result<(usize,SpannedToken<'input>,usize), __lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>>;
-}
-
-impl<'input, > __ToTriple<'input, > for (usize, SpannedToken<'input>, usize) {
-    fn to_triple(value: Self) -> Result<(usize,SpannedToken<'input>,usize), __lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>> {
-        Ok(value)
-    }
-}
-impl<'input, > __ToTriple<'input, > for Result<(usize, SpannedToken<'input>, usize), ShellError> {
-    fn to_triple(value: Self) -> Result<(usize,SpannedToken<'input>,usize), __lalrpop_util::ParseError<usize, SpannedToken<'input>, ShellError>> {
-        match value {
-            Ok(v) => Ok(v),
-            Err(error) => Err(__lalrpop_util::ParseError::User { error }),
-        }
-    }
-}
diff --git a/src/parser/span.rs b/src/parser/span.rs
deleted file mode 100644
index bd5dd19b01..0000000000
--- a/src/parser/span.rs
+++ /dev/null
@@ -1,80 +0,0 @@
-#[allow(unused)]
-use crate::prelude::*;
-
-use crate::parser::lexer::Span;
-use derive_new::new;
-use language_reporting::{FileName, Location, ReportingSpan};
-
-#[derive(new, Debug, Clone)]
-pub struct Files {
-    snippet: String,
-}
-
-impl language_reporting::ReportingFiles for Files {
-    type Span = Span;
-    type FileId = usize;
-
-    fn byte_span(
-        &self,
-        _file: Self::FileId,
-        from_index: usize,
-        to_index: usize,
-    ) -> Option<Self::Span> {
-        Some(Span::from((from_index, to_index)))
-    }
-    fn file_id(&self, _span: Self::Span) -> Self::FileId {
-        0
-    }
-    fn file_name(&self, _file: Self::FileId) -> FileName {
-        FileName::Verbatim(format!("<eval>"))
-    }
-    fn byte_index(&self, _file: Self::FileId, _line: usize, _column: usize) -> Option<usize> {
-        unimplemented!("byte_index")
-    }
-    fn location(&self, _file: Self::FileId, byte_index: usize) -> Option<Location> {
-        let source = &self.snippet;
-        let mut seen_lines = 0;
-        let mut seen_bytes = 0;
-
-        for (pos, _) in source.match_indices('\n') {
-            if pos > byte_index {
-                return Some(language_reporting::Location::new(
-                    seen_lines,
-                    byte_index - seen_bytes,
-                ));
-            } else {
-                seen_lines += 1;
-                seen_bytes = pos;
-            }
-        }
-
-        if seen_lines == 0 {
-            Some(language_reporting::Location::new(0, byte_index))
-        } else {
-            None
-        }
-    }
-    fn line_span(&self, _file: Self::FileId, lineno: usize) -> Option<Self::Span> {
-        let source = &self.snippet;
-        let mut seen_lines = 0;
-        let mut seen_bytes = 0;
-
-        for (pos, _) in source.match_indices('\n') {
-            if seen_lines == lineno {
-                return Some(Span::from((seen_bytes, pos)));
-            } else {
-                seen_lines += 1;
-                seen_bytes = pos + 1;
-            }
-        }
-
-        if seen_lines == 0 {
-            Some(Span::from((0, self.snippet.len() - 1)))
-        } else {
-            None
-        }
-    }
-    fn source(&self, span: Self::Span) -> Option<String> {
-        Some(self.snippet[span.start()..span.end()].to_string())
-    }
-}
diff --git a/src/shell/helper.rs b/src/shell/helper.rs
index 1bb69ed1e5..020e313dc6 100644
--- a/src/shell/helper.rs
+++ b/src/shell/helper.rs
@@ -1,7 +1,7 @@
 use crate::parser::nom_input;
-use crate::parser::parse2::span::Spanned;
-use crate::parser::parse2::token_tree::TokenNode;
-use crate::parser::parse2::tokens::RawToken;
+use crate::parser::parse::span::Spanned;
+use crate::parser::parse::token_tree::TokenNode;
+use crate::parser::parse::tokens::RawToken;
 use crate::parser::{Pipeline, PipelineElement};
 use crate::prelude::*;
 use crate::shell::completer::NuCompleter;