
//----------------------------------------------------
// The following code was generated by CUP v0.11a beta 20060608
// Wed Aug 10 00:00:47 PDT 2011
//----------------------------------------------------

package com.biosimilarity.seleKt.model.ill.vm.illvm;


/** CUP v0.11a beta 20060608 generated parser.
  * @version Wed Aug 10 00:00:47 PDT 2011
  */
public class parser extends java_cup.runtime.lr_parser {

  /** Default constructor. */
  public parser() {super();}

  /** Constructor which sets the default scanner. */
  public parser(java_cup.runtime.Scanner s) {super(s);}

  /** Constructor which sets the default scanner. */
  public parser(java_cup.runtime.Scanner s, java_cup.runtime.SymbolFactory sf) {super(s,sf);}

  /** Production table. */
  protected static final short _production_table[][] = 
    unpackFromStrings(new String[] {
    "\000\061\000\002\002\004\000\002\002\014\000\002\003" +
    "\003\000\002\004\003\000\002\005\003\000\002\005\003" +
    "\000\002\006\011\000\002\007\003\000\002\010\003\000" +
    "\002\010\003\000\002\010\003\000\002\010\003\000\002" +
    "\010\003\000\002\010\003\000\002\010\006\000\002\010" +
    "\003\000\002\010\003\000\002\010\003\000\002\010\003" +
    "\000\002\010\003\000\002\010\010\000\002\010\003\000" +
    "\002\010\003\000\002\010\003\000\002\010\003\000\002" +
    "\010\010\000\002\010\006\000\002\010\003\000\002\010" +
    "\003\000\002\011\003\000\002\011\007\000\002\011\006" +
    "\000\002\011\006\000\002\011\010\000\002\011\012\000" +
    "\002\011\010\000\002\012\003\000\002\013\002\000\002" +
    "\013\003\000\002\013\005\000\002\014\002\000\002\014" +
    "\003\000\002\014\005\000\002\015\002\000\002\015\003" +
    "\000\002\015\005\000\002\016\002\000\002\016\003\000" +
    "\002\016\005" });

  /** Access to production table. */
  public short[][] production_table() {return _production_table;}

  /** Parse-action table. */
  protected static final short[][] _action_table = 
    unpackFromStrings(new String[] {
    "\000\155\000\004\014\005\001\002\000\004\002\157\001" +
    "\002\000\004\004\006\001\002\000\024\004\012\005\uffd6" +
    "\011\007\012\uffd3\020\023\021\022\022\020\023\015\024" +
    "\014\001\002\000\010\005\uffe4\006\uffe4\012\uffe4\001\002" +
    "\000\006\005\uffd5\012\155\001\002\000\004\005\uffff\001" +
    "\002\000\020\004\012\011\007\020\023\021\022\022\020" +
    "\023\015\024\014\001\002\000\004\005\127\001\002\000" +
    "\004\004\122\001\002\000\004\004\117\001\002\000\006" +
    "\005\ufffd\012\ufffd\001\002\000\006\005\ufffc\012\062\001" +
    "\002\000\004\004\114\001\002\000\010\005\uffdd\006\uffdd" +
    "\012\uffdd\001\002\000\004\004\107\001\002\000\004\004" +
    "\024\001\002\000\056\005\uffd9\013\041\015\035\016\037" +
    "\017\036\025\030\026\053\027\051\030\043\031\050\032" +
    "\054\033\032\034\026\035\034\036\027\037\040\040\046" +
    "\041\042\042\047\043\045\044\031\045\033\001\002\000" +
    "\012\005\uffd8\006\uffd8\010\uffd8\012\105\001\002\000\012" +
    "\005\ufff1\006\ufff1\010\ufff1\012\ufff1\001\002\000\012\005" +
    "\uffef\006\uffef\010\uffef\012\uffef\001\002\000\012\005\ufff9" +
    "\006\ufff9\010\ufff9\012\ufff9\001\002\000\012\005\uffe6\006" +
    "\uffe6\010\uffe6\012\uffe6\001\002\000\012\005\ufff2\006\ufff2" +
    "\010\ufff2\012\ufff2\001\002\000\012\005\uffe5\006\uffe5\010" +
    "\uffe5\012\uffe5\001\002\000\012\005\ufff0\006\ufff0\010\ufff0" +
    "\012\ufff0\001\002\000\004\004\100\001\002\000\004\004" +
    "\075\001\002\000\004\004\072\001\002\000\012\005\uffee" +
    "\006\uffee\010\uffee\012\uffee\001\002\000\004\004\065\001" +
    "\002\000\012\005\uffeb\006\uffeb\010\uffeb\012\uffeb\001\002" +
    "\000\012\005\ufff6\006\ufff6\010\ufff6\012\ufff6\001\002\000" +
    "\004\005\055\001\002\000\012\005\uffe9\006\uffe9\010\uffe9" +
    "\012\uffe9\001\002\000\012\005\uffec\006\uffec\010\uffec\012" +
    "\uffec\001\002\000\012\005\uffea\006\uffea\010\uffea\012\uffea" +
    "\001\002\000\012\005\ufff5\006\ufff5\010\ufff5\012\ufff5\001" +
    "\002\000\012\005\ufff7\006\ufff7\010\ufff7\012\ufff7\001\002" +
    "\000\010\005\ufffa\006\ufffa\010\ufffa\001\002\000\012\005" +
    "\ufff8\006\ufff8\010\ufff8\012\ufff8\001\002\000\012\005\ufff4" +
    "\006\ufff4\010\ufff4\012\ufff4\001\002\000\056\005\uffd9\013" +
    "\041\015\035\016\037\017\036\025\030\026\053\027\051" +
    "\030\043\031\050\032\054\033\032\034\026\035\034\036" +
    "\027\037\040\040\046\041\042\042\047\043\045\044\031" +
    "\045\033\001\002\000\004\005\057\001\002\000\022\004" +
    "\012\006\uffd3\011\007\020\023\021\022\022\020\023\015" +
    "\024\014\001\002\000\004\006\064\001\002\000\010\005" +
    "\uffd2\006\uffd2\012\062\001\002\000\026\004\012\005\uffd3" +
    "\006\uffd3\011\007\012\uffd3\020\023\021\022\022\020\023" +
    "\015\024\014\001\002\000\010\005\uffd1\006\uffd1\012\uffd1" +
    "\001\002\000\010\005\uffdf\006\uffdf\012\uffdf\001\002\000" +
    "\056\005\uffd9\013\041\015\035\016\037\017\036\025\030" +
    "\026\053\027\051\030\043\031\050\032\054\033\032\034" +
    "\026\035\034\036\027\037\040\040\046\041\042\042\047" +
    "\043\045\044\031\045\033\001\002\000\004\005\067\001" +
    "\002\000\056\006\uffd9\013\041\015\035\016\037\017\036" +
    "\025\030\026\053\027\051\030\043\031\050\032\054\033" +
    "\032\034\026\035\034\036\027\037\040\040\046\041\042" +
    "\042\047\043\045\044\031\045\033\001\002\000\004\006" +
    "\071\001\002\000\012\005\uffe8\006\uffe8\010\uffe8\012\uffe8" +
    "\001\002\000\056\006\uffd9\013\041\015\035\016\037\017" +
    "\036\025\030\026\053\027\051\030\043\031\050\032\054" +
    "\033\032\034\026\035\034\036\027\037\040\040\046\041" +
    "\042\042\047\043\045\044\031\045\033\001\002\000\004" +
    "\006\074\001\002\000\012\005\ufff3\006\ufff3\010\ufff3\012" +
    "\ufff3\001\002\000\056\006\uffd9\013\041\015\035\016\037" +
    "\017\036\025\030\026\053\027\051\030\043\031\050\032" +
    "\054\033\032\034\026\035\034\036\027\037\040\040\046" +
    "\041\042\042\047\043\045\044\031\045\033\001\002\000" +
    "\004\006\077\001\002\000\012\005\uffe7\006\uffe7\010\uffe7" +
    "\012\uffe7\001\002\000\056\005\uffd9\013\041\015\035\016" +
    "\037\017\036\025\030\026\053\027\051\030\043\031\050" +
    "\032\054\033\032\034\026\035\034\036\027\037\040\040" +
    "\046\041\042\042\047\043\045\044\031\045\033\001\002" +
    "\000\004\005\102\001\002\000\056\006\uffd9\013\041\015" +
    "\035\016\037\017\036\025\030\026\053\027\051\030\043" +
    "\031\050\032\054\033\032\034\026\035\034\036\027\037" +
    "\040\040\046\041\042\042\047\043\045\044\031\045\033" +
    "\001\002\000\004\006\104\001\002\000\012\005\uffed\006" +
    "\uffed\010\uffed\012\uffed\001\002\000\062\005\uffd9\006\uffd9" +
    "\010\uffd9\013\041\015\035\016\037\017\036\025\030\026" +
    "\053\027\051\030\043\031\050\032\054\033\032\034\026" +
    "\035\034\036\027\037\040\040\046\041\042\042\047\043" +
    "\045\044\031\045\033\001\002\000\010\005\uffd7\006\uffd7" +
    "\010\uffd7\001\002\000\056\005\uffd9\013\041\015\035\016" +
    "\037\017\036\025\030\026\053\027\051\030\043\031\050" +
    "\032\054\033\032\034\026\035\034\036\027\037\040\040" +
    "\046\041\042\042\047\043\045\044\031\045\033\001\002" +
    "\000\004\005\111\001\002\000\022\004\012\006\uffd3\011" +
    "\007\020\023\021\022\022\020\023\015\024\014\001\002" +
    "\000\004\006\113\001\002\000\010\005\uffe0\006\uffe0\012" +
    "\uffe0\001\002\000\020\004\012\011\007\020\023\021\022" +
    "\022\020\023\015\024\014\001\002\000\004\006\116\001" +
    "\002\000\010\005\uffe2\006\uffe2\012\uffe2\001\002\000\020" +
    "\004\012\011\007\020\023\021\022\022\020\023\015\024" +
    "\014\001\002\000\004\006\121\001\002\000\010\005\uffe1" +
    "\006\uffe1\012\uffe1\001\002\000\056\005\uffd9\013\041\015" +
    "\035\016\037\017\036\025\030\026\053\027\051\030\043" +
    "\031\050\032\054\033\032\034\026\035\034\036\027\037" +
    "\040\040\046\041\042\042\047\043\045\044\031\045\033" +
    "\001\002\000\004\005\124\001\002\000\022\004\012\006" +
    "\uffd3\011\007\020\023\021\022\022\020\023\015\024\014" +
    "\001\002\000\004\006\126\001\002\000\010\005\uffde\006" +
    "\uffde\012\uffde\001\002\000\022\004\012\005\uffd3\011\007" +
    "\020\023\021\022\022\020\023\015\024\014\001\002\000" +
    "\004\005\131\001\002\000\056\005\uffd9\013\041\015\035" +
    "\016\037\017\036\025\030\026\053\027\051\030\043\031" +
    "\050\032\054\033\032\034\026\035\034\036\027\037\040" +
    "\040\046\041\042\042\047\043\045\044\031\045\033\001" +
    "\002\000\004\005\133\001\002\000\006\006\uffdc\007\134" +
    "\001\002\000\024\004\012\005\uffd6\011\007\012\uffd3\020" +
    "\023\021\022\022\020\023\015\024\014\001\002\000\004" +
    "\006\ufffe\001\002\000\006\006\uffdb\012\141\001\002\000" +
    "\004\006\140\001\002\000\004\002\000\001\002\000\006" +
    "\006\uffdc\007\134\001\002\000\004\006\uffda\001\002\000" +
    "\004\005\144\001\002\000\022\004\012\005\uffd3\011\007" +
    "\020\023\021\022\022\020\023\015\024\014\001\002\000" +
    "\004\005\146\001\002\000\056\010\uffd9\013\041\015\035" +
    "\016\037\017\036\025\030\026\053\027\051\030\043\031" +
    "\050\032\054\033\032\034\026\035\034\036\027\037\040" +
    "\040\046\041\042\042\047\043\045\044\031\045\033\001" +
    "\002\000\004\010\150\001\002\000\006\006\ufffb\012\ufffb" +
    "\001\002\000\004\012\152\001\002\000\020\004\012\011" +
    "\007\020\023\021\022\022\020\023\015\024\014\001\002" +
    "\000\004\006\154\001\002\000\010\005\uffe3\006\uffe3\012" +
    "\uffe3\001\002\000\024\004\012\005\uffd6\011\007\012\uffd3" +
    "\020\023\021\022\022\020\023\015\024\014\001\002\000" +
    "\004\005\uffd4\001\002\000\004\002\001\001\002" });

  /** Access to parse-action table. */
  public short[][] action_table() {return _action_table;}

  /** <code>reduce_goto</code> table. */
  protected static final short[][] _reduce_table = 
    unpackFromStrings(new String[] {
    "\000\155\000\004\002\003\001\001\000\002\001\001\000" +
    "\002\001\001\000\016\003\012\005\007\011\016\012\015" +
    "\015\010\016\020\001\001\000\002\001\001\000\002\001" +
    "\001\000\002\001\001\000\004\011\150\001\001\000\002" +
    "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
    "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
    "\000\002\001\001\000\002\001\001\000\010\007\043\010" +
    "\024\014\051\001\001\000\002\001\001\000\002\001\001" +
    "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
    "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
    "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
    "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
    "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
    "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
    "\001\001\000\002\001\001\000\002\001\001\000\010\007" +
    "\055\010\024\014\051\001\001\000\002\001\001\000\010" +
    "\011\060\012\057\016\020\001\001\000\002\001\001\000" +
    "\002\001\001\000\006\011\060\016\062\001\001\000\002" +
    "\001\001\000\002\001\001\000\010\007\065\010\024\014" +
    "\051\001\001\000\002\001\001\000\010\007\067\010\024" +
    "\014\051\001\001\000\002\001\001\000\002\001\001\000" +
    "\010\007\072\010\024\014\051\001\001\000\002\001\001" +
    "\000\002\001\001\000\010\007\075\010\024\014\051\001" +
    "\001\000\002\001\001\000\002\001\001\000\010\007\100" +
    "\010\024\014\051\001\001\000\002\001\001\000\010\007" +
    "\102\010\024\014\051\001\001\000\002\001\001\000\002" +
    "\001\001\000\006\010\024\014\105\001\001\000\002\001" +
    "\001\000\010\007\107\010\024\014\051\001\001\000\002" +
    "\001\001\000\010\011\060\012\111\016\020\001\001\000" +
    "\002\001\001\000\002\001\001\000\004\011\114\001\001" +
    "\000\002\001\001\000\002\001\001\000\004\011\117\001" +
    "\001\000\002\001\001\000\002\001\001\000\010\007\122" +
    "\010\024\014\051\001\001\000\002\001\001\000\010\011" +
    "\060\012\124\016\020\001\001\000\002\001\001\000\002" +
    "\001\001\000\010\011\060\012\127\016\020\001\001\000" +
    "\002\001\001\000\010\007\131\010\024\014\051\001\001" +
    "\000\002\001\001\000\010\004\136\006\135\013\134\001" +
    "\001\000\016\003\142\005\007\011\016\012\015\015\010" +
    "\016\020\001\001\000\002\001\001\000\002\001\001\000" +
    "\002\001\001\000\002\001\001\000\006\006\135\013\141" +
    "\001\001\000\002\001\001\000\002\001\001\000\010\011" +
    "\060\012\144\016\020\001\001\000\002\001\001\000\010" +
    "\007\146\010\024\014\051\001\001\000\002\001\001\000" +
    "\002\001\001\000\002\001\001\000\004\011\152\001\001" +
    "\000\002\001\001\000\002\001\001\000\014\005\007\011" +
    "\016\012\015\015\155\016\020\001\001\000\002\001\001" +
    "\000\002\001\001" });

  /** Access to <code>reduce_goto</code> table. */
  public short[][] reduce_table() {return _reduce_table;}

  /** Instance of action encapsulation class. */
  protected CUP$parser$actions action_obj;

  /** Action encapsulation object initializer. */
  protected void init_actions()
    {
      action_obj = new CUP$parser$actions(this);
    }

  /** Invoke a user supplied parse action. */
  public java_cup.runtime.Symbol do_action(
    int                        act_num,
    java_cup.runtime.lr_parser parser,
    java.util.Stack            stack,
    int                        top)
    throws java.lang.Exception
  {
    /* call code in generated class */
    return action_obj.CUP$parser$do_action(act_num, parser, stack, top);
  }

  /** Indicates start state. */
  public int start_state() {return 0;}
  /** Indicates start production. */
  public int start_production() {return 0;}

  /** <code>EOF</code> Symbol index. */
  public int EOF_sym() {return 0;}

  /** <code>error</code> Symbol index. */
  public int error_sym() {return 1;}



  public com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.State pState() throws Exception
  {
	java_cup.runtime.Symbol res = parse();
	return (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.State) res.value;
  }

public <B,A extends java.util.LinkedList<? super B>> A cons_(B x, A xs) { xs.addFirst(x); return xs; }

public void syntax_error(java_cup.runtime.Symbol cur_token)
{
	report_error("Syntax Error, trying to recover and continue parse...", cur_token);
}

public void unrecovered_syntax_error(java_cup.runtime.Symbol cur_token) throws java.lang.Exception
{
	throw new Exception("Unrecoverable Syntax Error");
}


}

/** Cup generated class to encapsulate user supplied action code.*/
class CUP$parser$actions {
  private final parser parser;

  /** Constructor */
  CUP$parser$actions(parser parser) {
    this.parser = parser;
  }

  /** Method with the actual generated action code. */
  public final java_cup.runtime.Symbol CUP$parser$do_action(
    int                        CUP$parser$act_num,
    java_cup.runtime.lr_parser CUP$parser$parser,
    java.util.Stack            CUP$parser$stack,
    int                        CUP$parser$top)
    throws java.lang.Exception
    {
      /* Symbol object for return from actions */
      java_cup.runtime.Symbol CUP$parser$result;

      /* select the action based on the action number */
      switch (CUP$parser$act_num)
        {
          /*. . . . . . . . . . . . . . . . . . . .*/
          case 48: // ListValue ::= Value _SYMB_6 ListValue 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = p_3; p_3.addFirst(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListValue",12, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 47: // ListValue ::= Value 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue(); RESULT.addLast(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListValue",12, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 46: // ListValue ::= 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue RESULT =null;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue(); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListValue",12, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 45: // ListEnvOrVal ::= EnvOrVal _SYMB_6 ListEnvOrVal 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.EnvOrVal p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.EnvOrVal)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = p_3; p_3.addFirst(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListEnvOrVal",11, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 44: // ListEnvOrVal ::= EnvOrVal 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.EnvOrVal p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.EnvOrVal)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal(); RESULT.addLast(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListEnvOrVal",11, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 43: // ListEnvOrVal ::= 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal RESULT =null;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal(); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListEnvOrVal",11, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 42: // ListInstruction ::= Instruction _SYMB_6 ListInstruction 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = p_3; p_3.addFirst(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListInstruction",10, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 41: // ListInstruction ::= Instruction 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction(); RESULT.addLast(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListInstruction",10, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 40: // ListInstruction ::= 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction RESULT =null;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction(); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListInstruction",10, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 39: // ListFrame ::= Frame _SYMB_6 ListFrame 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Frame p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Frame)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-2)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = p_3; p_3.addFirst(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListFrame",9, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 38: // ListFrame ::= Frame 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Frame p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Frame)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame(); RESULT.addLast(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListFrame",9, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 37: // ListFrame ::= 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame RESULT =null;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame(); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ListFrame",9, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 36: // Env ::= ListValue 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListValue)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ENVIRONMENT(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Env",8, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 35: // Value ::= _SYMB_16 _SYMB_0 ILLCode _SYMB_1 Env _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env p_5 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.OclV(p_3,p_5); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Value",7, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 34: // Value ::= _SYMB_12 _SYMB_0 ILLCode _SYMB_1 ILLCode _SYMB_1 Env _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_5 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env p_7 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.CclV(p_3,p_5,p_7); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Value",7, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 33: // Value ::= _SYMB_13 _SYMB_0 ILLCode _SYMB_1 Env _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env p_5 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.FclV(p_3,p_5); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Value",7, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 32: // Value ::= _SYMB_15 _SYMB_0 Value _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.InrV(p_3); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Value",7, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 31: // Value ::= _SYMB_14 _SYMB_0 Value _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.InlV(p_3); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Value",7, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 30: // Value ::= _SYMB_0 Value _SYMB_6 Value _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value p_2 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value p_4 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.PairV(p_2,p_4); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Value",7, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 29: // Value ::= _SYMB_5 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value RESULT =null;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.UnitV(); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Value",7, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 28: // Instruction ::= IllDUP 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.DUP(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 27: // Instruction ::= IllREAD 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.READ(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 26: // Instruction ::= _SYMB_11 _SYMB_0 ILLCode _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.MAKEOCL(p_3); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 25: // Instruction ::= _SYMB_7 _SYMB_0 ILLCode _SYMB_1 ILLCode _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_5 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.CASE(p_3,p_5); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 24: // Instruction ::= IllINR 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.INR(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 23: // Instruction ::= IllINL 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.INL(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 22: // Instruction ::= IllSND 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.SND(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 21: // Instruction ::= IllFST 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.FST(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 20: // Instruction ::= _SYMB_9 _SYMB_0 ILLCode _SYMB_1 ILLCode _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_5 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.MAKECCL(p_3,p_5); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 19: // Instruction ::= IllUNPAIR 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.UNPAIR(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 18: // Instruction ::= IllPAIR 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.PAIR(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 17: // Instruction ::= IllUNUNIT 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.UNUNIT(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 16: // Instruction ::= IllUNIT 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.UNIT(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 15: // Instruction ::= IllAP 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.AP(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 14: // Instruction ::= _SYMB_10 _SYMB_0 ILLCode _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.MAKEFCL(p_3); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 13: // Instruction ::= IllPOP 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.POP(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 12: // Instruction ::= IllPUSH 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.PUSH(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 11: // Instruction ::= IllRET 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.RET(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 10: // Instruction ::= IllTL 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.TAIL(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 9: // Instruction ::= IllHD 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.HEAD(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 8: // Instruction ::= IllPUSHENV 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Instruction RESULT =null;
		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.PUSHENV(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Instruction",6, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 7: // ILLCode ::= ListInstruction 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListInstruction)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.CODESEQ(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("ILLCode",5, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 6: // Frame ::= _SYMB_3 Stack _SYMB_1 Env _SYMB_1 ILLCode _SYMB_4 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Frame RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Stack p_2 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Stack)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env p_4 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_6 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.STACKFRAME(p_2,p_4,p_6); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Frame",4, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 5: // EnvOrVal ::= Value 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.EnvOrVal RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Value)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.STACKVAL(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("EnvOrVal",3, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 4: // EnvOrVal ::= Env 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.EnvOrVal RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.STACKENV(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("EnvOrVal",3, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 3: // Dump ::= ListFrame 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Dump RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListFrame)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.MDUMP(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Dump",2, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 2: // Stack ::= ListEnvOrVal 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Stack RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal p_1 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ListEnvOrVal)((java_cup.runtime.Symbol) CUP$parser$stack.peek()).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.MSTACK(p_1); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("Stack",1, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 1: // State ::= _SYMB_8 _SYMB_0 Stack _SYMB_1 Env _SYMB_1 ILLCode _SYMB_1 Dump _SYMB_2 
            {
              com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.State RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Stack p_3 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Stack)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-7)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env p_5 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Env)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode p_7 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.ILLCode)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Dump p_9 = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.Dump)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		 RESULT = new com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.MACHINE(p_3,p_5,p_7,p_9); 
              CUP$parser$result = parser.getSymbolFactory().newSymbol("State",0, RESULT);
            }
          return CUP$parser$result;

          /*. . . . . . . . . . . . . . . . . . . .*/
          case 0: // $START ::= State EOF 
            {
              Object RESULT =null;
		com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.State start_val = (com.biosimilarity.seleKt.model.ill.vm.illvm.Absyn.State)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
		RESULT = start_val;
              CUP$parser$result = parser.getSymbolFactory().newSymbol("$START",0, RESULT);
            }
          /* ACCEPT */
          CUP$parser$parser.done_parsing();
          return CUP$parser$result;

          /* . . . . . .*/
          default:
            throw new Exception(
               "Invalid action number found in internal parse table");

        }
    }
}

