package org.kevoree.kevscript;/*
* Generated by the Waxeye Parser Generator - version 0.8.0
* www.waxeye.org
*/
import java.util.ArrayList;
import java.util.List;
import org.waxeye.parser.AutomatonTransition;
import org.waxeye.parser.CharTransition;
import org.waxeye.parser.Edge;
import org.waxeye.parser.FA;
import org.waxeye.parser.State;
import org.waxeye.parser.WildCardTransition;
/**
* A parser generated by the Waxeye Parser Generator.
*
* @author Waxeye Parser Generator
*/
public final class Parser extends org.waxeye.parser.Parser<Type>
{
/**
* Creates a new Parser.
*/
public Parser()
{
super(makeAutomata(), true, 0, Type._Empty, Type._Char, Type._Pos, Type._Neg);
}
/**
* Builds the automata for the parser.
*
* @return The automata for the parser.
*/
private static List<FA<Type>> makeAutomata()
{
List<Edge<Type>> edges;
List<State<Type>> states;
final List<FA<Type>> automata = new ArrayList<FA<Type>>();
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(1), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(1), 3, false));
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.KevScript, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(2), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(3), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(4), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(5), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(6), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(7), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(12), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(13), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(15), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(8), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(14), 1, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(17), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Statement, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(20), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(16), 8, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{':'}, new char[]{}, new char[]{}), 5, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 9, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{':'}, new char[]{}, new char[]{}), 10, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 11, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 7, false));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.Add, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(21), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(16), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Remove, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(22), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(16), 6, false));
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'*'}, new char[]{}, new char[]{}), 8, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'@'}, new char[]{}, new char[]{}), 9, true));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 11, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 10, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 11, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.Move, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(24), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(16), 6, false));
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'*'}, new char[]{}, new char[]{}), 8, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 9, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.Attach, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(25), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(16), 6, false));
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'*'}, new char[]{}, new char[]{}), 8, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 9, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.Detach, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(23), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(9), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Set, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(26), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(30), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Network, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(10), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{','}, new char[]{}, new char[]{}), 3, true));
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(10), 2, false));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.Dictionary, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'{'}, new char[]{}, new char[]{}), 1, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(11), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{','}, new char[]{}, new char[]{}), 5, true));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(11), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'}'}, new char[]{}, new char[]{}), 8, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'@'}, new char[]{}, new char[]{}), 9, true));
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 10, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.AttrList, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'='}, new char[]{}, new char[]{}), 3, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'\''}, new char[]{}, new char[]{}), 5, true));
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'"'}, new char[]{}, new char[]{}), 10, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(30), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 8, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'\''}, new char[]{}, new char[]{}), 9, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 11, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(30), 12, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 13, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'"'}, new char[]{}, new char[]{}), 9, true));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.Attribute, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(27), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'.'}, new char[]{}, new char[]{}), 4, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(16), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.AddBinding, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(28), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'.'}, new char[]{}, new char[]{}), 4, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(16), 7, false));
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'*'}, new char[]{}, new char[]{}), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.DelBinding, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(18), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(31), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.AddRepo, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(19), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{':'}, new char[]{}, new char[]{}), 4, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(30), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Merge, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{','}, new char[]{}, new char[]{}), 3, true));
states.add(new State<Type>(edges, true));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(33), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(29), 2, false));
states.add(new State<Type>(edges, false));
automata.add(new FA<Type>(Type.NameList, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'/'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'/'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(31), 3, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Comment, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'r'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'p'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'o'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.RepoToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'m'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'r'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'g'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.MergeToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'a'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'d'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'d'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.AddToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'r'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'m'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'o'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'v'}, new char[]{}, new char[]{}), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.RemoveToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'m'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'o'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'v'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.MoveToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'s'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'t'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.SetToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'a'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'t'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'t'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'a'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'c'}, new char[]{}, new char[]{}), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'h'}, new char[]{}, new char[]{}), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.AttachToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'d'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'t'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'a'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'c'}, new char[]{}, new char[]{}), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'h'}, new char[]{}, new char[]{}), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.DetachToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'n'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'e'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'t'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'w'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'o'}, new char[]{}, new char[]{}), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'r'}, new char[]{}, new char[]{}), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'k'}, new char[]{}, new char[]{}), 7, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.NetworkToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'b'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'i'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'n'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'d'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.BindToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'u'}, new char[]{}, new char[]{}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'n'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'b'}, new char[]{}, new char[]{}), 3, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'i'}, new char[]{}, new char[]{}), 4, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'n'}, new char[]{}, new char[]{}), 5, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'d'}, new char[]{}, new char[]{}), 6, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.UnbindToken, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'-', '_'}, new char[]{'0', 'A', 'a'}, new char[]{'9', 'Z', 'z'}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'-', '_'}, new char[]{'0', 'A', 'a'}, new char[]{'9', 'Z', 'z'}), 1, false));
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.String, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'_'}, new char[]{'-', '0', '@', 'a'}, new char[]{'.', ':', 'Z', 'z'}), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'_'}, new char[]{'-', '0', '@', 'a'}, new char[]{'.', ':', 'Z', 'z'}), 1, false));
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.String2, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(35), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new WildCardTransition<Type>(), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(34), 3, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(32), 4, true));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new WildCardTransition<Type>(), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Anything, FA.LEFT, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'\r'}, new char[]{}, new char[]{}), 1, false));
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'\n'}, new char[]{}, new char[]{}), 2, false));
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'\r'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'\n'}, new char[]{}, new char[]{}), 2, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Eol, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new CharTransition<Type>(new char[]{'\t', ' '}, new char[]{}, new char[]{}), 0, false));
edges.add(new Edge<Type>(new AutomatonTransition<Type>(32), 0, false));
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type.Ws, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(32), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type._Neg, FA.VOID, states));
states = new ArrayList<State<Type>>();
edges = new ArrayList<Edge<Type>>();
edges.add(new Edge<Type>(new AutomatonTransition<Type>(32), 1, false));
states.add(new State<Type>(edges, false));
edges = new ArrayList<Edge<Type>>();
states.add(new State<Type>(edges, true));
automata.add(new FA<Type>(Type._Neg, FA.VOID, states));
return automata;
}
}