content: 
  //----------------------------------------------------
  // The following code was generated by CUP v0.11b 20160615
  //----------------------------------------------------
  
  package org.eclipse.php.core.ast.scanner.php74;
  
  import java.util.*;
  import java_cup.runtime.Symbol;
  import org.eclipse.dltk.core.DLTKCore;
  import org.eclipse.php.core.ast.nodes.*;
  import org.eclipse.dltk.ast.Modifiers;
  import org.eclipse.php.core.ast.error.*;
  import java_cup.runtime.XMLElement;
  
  /** CUP v0.11b 20160615 generated parser.
    */
  @SuppressWarnings({"rawtypes"})
  public class PHPAstParser extends java_cup.runtime.lr_parser {
  
   public final Class getSymbolContainer() {
      return ParserConstants.class;
  }
  
    /** Default constructor. */
    @Deprecated
    public PHPAstParser() {super();}
  
    /** Constructor which sets the default scanner. */
    @Deprecated
    public PHPAstParser(java_cup.runtime.Scanner s) {super(s);}
  
    /** Constructor which sets the default scanner. */
    public PHPAstParser(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\u01fb\000\002\002\003\000\002\002\004\000\002\003" +
      "\003\000\002\003\003\000\002\003\003\000\002\003\003" +
      "\000\002\003\003\000\002\003\003\000\002\003\003\000" +
      "\002\003\003\000\002\003\003\000\002\003\003\000\002" +
      "\003\003\000\002\003\003\000\002\003\003\000\002\003" +
      "\003\000\002\003\003\000\002\003\003\000\002\003\003" +
      "\000\002\003\003\000\002\003\003\000\002\003\003\000" +
      "\002\003\003\000\002\003\003\000\002\003\003\000\002" +
      "\003\003\000\002\003\003\000\002\003\003\000\002\003" +
      "\003\000\002\003\003\000\002\003\003\000\002\003\003" +
      "\000\002\003\003\000\002\003\003\000\002\003\003\000" +
      "\002\003\003\000\002\003\003\000\002\003\003\000\002" +
      "\003\003\000\002\003\003\000\002\003\003\000\002\003" +
      "\003\000\002\003\003\000\002\003\003\000\002\003\003" +
      "\000\002\003\003\000\002\003\003\000\002\003\003\000" +
      "\002\003\003\000\002\003\003\000\002\003\003\000\002" +
      "\003\003\000\002\003\003\000\002\003\003\000\002\003" +
      "\003\000\002\003\003\000\002\003\003\000\002\003\003" +
      "\000\002\003\003\000\002\003\003\000\002\003\003\000" +
      "\002\003\003\000\002\004\003\000\002\004\003\000\002" +
      "\004\003\000\002\004\003\000\002\004\003\000\002\004" +
      "\003\000\002\004\003\000\002\005\003\000\002\005\003" +
      "\000\002\006\003\000\002\006\005\000\002\121\003\000" +
      "\002\121\005\000\002\121\004\000\002\017\004\000\002" +
      "\017\002\000\002\020\003\000\002\020\003\000\002\020" +
      "\003\000\002\020\005\000\002\020\007\000\002\020\006" +
      "\000\002\020\005\000\002\020\006\000\002\020\005\000" +
      "\002\020\006\000\002\020\005\000\002\016\003\000\002" +
      "\016\003\000\002\012\007\000\002\011\007\000\002\013" +
      "\005\000\002\013\003\000\002\014\003\000\002\014\004" +
      "\000\002\015\005\000\002\015\003\000\002\007\003\000" +
      "\002\007\005\000\002\007\004\000\002\007\006\000\002" +
      "\010\004\000\002\010\005\000\002\022\004\000\002\022" +
      "\002\000\002\023\003\000\002\023\003\000\002\023\003" +
      "\000\002\021\005\000\002\021\011\000\002\021\014\000" +
      "\002\021\007\000\002\021\011\000\002\021\013\000\002" +
      "\021\007\000\002\021\004\000\002\021\005\000\002\021" +
      "\004\000\002\021\005\000\002\021\004\000\002\021\005" +
      "\000\002\021\005\000\002\021\005\000\002\021\005\000" +
      "\002\021\005\000\002\021\003\000\002\021\004\000\002" +
      "\021\005\000\002\021\010\000\002\021\011\000\002\021" +
      "\013\000\002\021\007\000\002\021\003\000\002\021\010" +
      "\000\002\021\005\000\002\021\005\000\002\021\004\000" +
      "\002\021\003\000\002\021\004\000\002\021\005\000\002" +
      "\144\003\000\002\144\002\000\002\145\003\000\002\145" +
      "\004\000\002\147\012\000\002\146\003\000\002\146\005" +
      "\000\002\203\003\000\002\203\002\000\002\204\006\000" +
      "\002\024\003\000\002\024\005\000\002\025\003\000\002" +
      "\026\003\000\002\026\005\000\002\135\003\000\002\136" +
      "\003\000\002\062\002\000\002\062\003\000\002\150\014" +
      "\000\002\151\011\000\002\151\010\000\002\152\003\000" +
      "\002\152\004\000\002\152\004\000\002\152\003\000\002" +
      "\153\002\000\002\153\004\000\002\116\003\000\002\117" +
      "\002\000\002\117\004\000\002\154\002\000\002\154\004" +
      "\000\002\155\003\000\002\155\005\000\002\027\003\000" +
      "\002\027\004\000\002\027\006\000\002\027\005\000\002" +
      "\030\003\000\002\030\005\000\002\031\003\000\002\031" +
      "\005\000\002\032\003\000\002\032\005\000\002\033\005" +
      "\000\002\033\007\000\002\034\005\000\002\034\006\000" +
      "\002\034\005\000\002\034\006\000\002\035\002\000\002" +
      "\035\007\000\002\035\006\000\002\036\003\000\002\036" +
      "\003\000\002\037\003\000\002\037\005\000\002\040\002" +
      "\000\002\040\010\000\002\041\002\000\002\041\011\000" +
      "\002\042\002\000\002\042\004\000\002\043\002\000\002" +
      "\043\005\000\002\044\003\000\002\044\002\000\002\050" +
      "\003\000\002\050\005\000\002\051\004\000\002\051\005" +
      "\000\002\051\005\000\002\051\006\000\002\051\006\000" +
      "\002\051\007\000\002\156\002\000\002\156\003\000\002" +
      "\052\004\000\002\052\002\000\002\053\003\000\002\053" +
      "\005\000\002\066\003\000\002\066\004\000\002\123\003" +
      "\000\002\123\004\000\002\122\003\000\002\122\003\000" +
      "\002\122\003\000\002\124\002\000\002\124\004\000\002" +
      "\054\005\000\002\054\003\000\002\055\003\000\002\055" +
      "\004\000\002\055\006\000\002\056\003\000\002\056\005" +
      "\000\002\057\003\000\002\057\005\000\002\060\004\000" +
      "\002\060\002\000\002\061\006\000\002\061\006\000\002" +
      "\061\013\000\002\061\004\000\002\061\003\000\002\165" +
      "\005\000\002\166\003\000\002\166\005\000\002\167\003" +
      "\000\002\167\005\000\002\170\002\000\002\170\003\000" +
      "\002\171\003\000\002\171\004\000\002\172\004\000\002" +
      "\172\004\000\002\173\005\000\002\174\003\000\002\174" +
      "\005\000\002\175\003\000\002\175\003\000\002\176\005" +
      "\000\002\177\006\000\002\177\005\000\002\200\002\000" +
      "\002\200\003\000\002\132\003\000\002\132\005\000\002" +
      "\157\003\000\002\157\003\000\002\131\002\000\002\131" +
      "\003\000\002\133\003\000\002\133\004\000\002\134\003" +
      "\000\002\134\003\000\002\134\003\000\002\134\003\000" +
      "\002\134\003\000\002\134\003\000\002\126\005\000\002" +
      "\126\007\000\002\126\003\000\002\126\005\000\002\127" +
      "\005\000\002\127\003\000\002\130\005\000\002\063\005" +
      "\000\002\063\003\000\002\064\002\000\002\064\003\000" +
      "\002\065\005\000\002\065\003\000\002\202\007\000\002" +
      "\201\005\000\002\201\006\000\002\067\010\000\002\067" +
      "\007\000\002\067\005\000\002\067\006\000\002\067\004" +
      "\000\002\067\005\000\002\067\005\000\002\067\005\000" +
      "\002\067\005\000\002\067\005\000\002\067\005\000\002" +
      "\067\005\000\002\067\005\000\002\067\005\000\002\067" +
      "\005\000\002\067\005\000\002\067\005\000\002\067\005" +
      "\000\002\067\004\000\002\067\004\000\002\067\004\000" +
      "\002\067\004\000\002\067\005\000\002\067\005\000\002" +
      "\067\005\000\002\067\005\000\002\067\005\000\002\067" +
      "\005\000\002\067\005\000\002\067\005\000\002\067\005" +
      "\000\002\067\005\000\002\067\005\000\002\067\005\000" +
      "\002\067\005\000\002\067\005\000\002\067\005\000\002" +
      "\067\005\000\002\067\005\000\002\067\004\000\002\067" +
      "\004\000\002\067\004\000\002\067\004\000\002\067\005" +
      "\000\002\067\005\000\002\067\005\000\002\067\005\000" +
      "\002\067\005\000\002\067\005\000\002\067\005\000\002" +
      "\067\005\000\002\067\005\000\002\067\005\000\002\067" +
      "\005\000\002\067\003\000\002\067\003\000\002\067\007" +
      "\000\002\067\006\000\002\067\005\000\002\067\003\000" +
      "\002\067\004\000\002\067\004\000\002\067\004\000\002" +
      "\067\004\000\002\067\004\000\002\067\004\000\002\067" +
      "\004\000\002\067\004\000\002\067\004\000\002\067\003" +
      "\000\002\067\005\000\002\067\004\000\002\067\014\000" +
      "\002\067\015\000\002\067\012\000\002\067\013\000\002" +
      "\045\002\000\002\045\006\000\002\046\005\000\002\046" +
      "\003\000\002\047\003\000\002\047\004\000\002\070\006" +
      "\000\002\070\010\000\002\070\010\000\002\070\006\000" +
      "\002\120\003\000\002\120\003\000\002\125\003\000\002" +
      "\125\005\000\002\125\004\000\002\164\003\000\002\164" +
      "\003\000\002\071\002\000\002\071\004\000\002\071\005" +
      "\000\002\111\002\000\002\111\003\000\002\111\003\000" +
      "\002\072\002\000\002\072\005\000\002\073\003\000\002" +
      "\073\003\000\002\073\003\000\002\073\003\000\002\073" +
      "\003\000\002\073\003\000\002\073\003\000\002\073\003" +
      "\000\002\073\003\000\002\073\003\000\002\073\003\000" +
      "\002\073\005\000\002\073\004\000\002\073\005\000\002" +
      "\073\005\000\002\073\005\000\002\073\003\000\002\073" +
      "\003\000\002\074\002\000\002\074\003\000\002\075\003" +
      "\000\002\075\003\000\002\137\003\000\002\137\003\000" +
      "\002\137\005\000\002\141\003\000\002\141\005\000\002" +
      "\141\003\000\002\142\003\000\002\142\005\000\002\142" +
      "\003\000\002\143\006\000\002\143\005\000\002\143\003" +
      "\000\002\140\003\000\002\140\006\000\002\140\006\000" +
      "\002\140\006\000\002\140\010\000\002\140\003\000\002" +
      "\160\003\000\002\160\005\000\002\160\005\000\002\161" +
      "\005\000\002\161\005\000\002\162\003\000\002\162\006" +
      "\000\002\162\006\000\002\162\005\000\002\162\005\000" +
      "\002\162\005\000\002\076\003\000\002\077\002\000\002" +
      "\077\003\000\002\100\003\000\002\100\005\000\002\100" +
      "\003\000\002\101\003\000\002\101\005\000\002\101\003" +
      "\000\002\102\003\000\002\103\003\000\002\103\005\000" +
      "\002\106\003\000\002\104\002\000\002\104\003\000\002" +
      "\107\003\000\002\107\005\000\002\105\005\000\002\105" +
      "\003\000\002\105\006\000\002\105\004\000\002\105\004" +
      "\000\002\105\010\000\002\105\006\000\002\110\004\000" +
      "\002\110\004\000\002\110\004\000\002\110\003\000\002" +
      "\110\004\000\002\112\005\000\002\112\003\000\002\112" +
      "\006\000\002\112\005\000\002\112\005\000\002\112\005" +
      "\000\002\112\010\000\002\113\003\000\002\113\003\000" +
      "\002\113\003\000\002\114\007\000\002\114\006\000\002" +
      "\114\004\000\002\114\004\000\002\114\006\000\002\114" +
      "\004\000\002\114\004\000\002\114\006\000\002\163\003" +
      "\000\002\163\005\000\002\115\003\000\002\115\003\000" +
      "\002\205\003\000\002\205\004\000\002\205\006\000\002" +
      "\205\004" });
  
    /** Access to production table. */
    public short[][] production_table() {return _production_table;}
  
    /** Parse-action table. */
    protected static final short[][] _action_table = 
      unpackFromStrings(new String[] {
      "\000\u03ba\000\002\001\uffb4\000\004\002\u03bc\001\002\000" +
      "\256\003\124\004\155\005\166\006\117\007\010\010\065" +
      "\011\035\013\063\015\101\020\137\021\022\022\130\023" +
      "\125\024\046\026\034\030\110\032\167\035\112\037\141" +
      "\043\056\044\127\045\075\046\116\047\146\050\150\051" +
      "\012\052\043\053\042\055\164\057\027\060\011\062\104" +
      "\063\160\064\032\065\060\066\033\067\153\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\107\071\112\105\113\136\114\041\115\072\116\025\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\150\007\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\044\222\064\223" +
      "\017\227\162\232\107\233\121\234\061\235\103\237\126" +
      "\241\123\246\067\001\001\000\002\001\ufe6c\000\002\001" +
      "\uff7b\000\002\001\ufe6f\000\006\013\063\232\107\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\ufe0a\000\002\001\ufe9f\000\004\227\u03b1\001\002\000\002" +
      "\001\ufe90\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\004\066\u03af\001\002\000\076\034\305" +
      "\126\275\127\315\130\265\147\271\150\u03ae\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\002\000\002\001\ufe6a\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\002\001\ufe59\000\052\072\ufe57\107\ufe57\111\ufe57\132" +
      "\u01e3\133\u01e8\134\u01e4\135\u01f1\136\u01e7\137\u01f0\140\u01ea" +
      "\141\u01ed\142\u01e6\143\u01e2\144\u01e9\145\u01eb\146\u01e5\201" +
      "\u01ec\202\u01ef\213\ufe57\245\u01f2\001\ufe5c\000\242\003\124" +
      "\004\155\005\166\006\117\007\010\010\065\011\035\013" +
      "\063\015\101\020\137\021\022\022\130\023\125\024\046" +
      "\026\034\030\110\032\167\035\112\037\141\043\056\044" +
      "\127\045\075\046\200\050\150\051\012\052\043\053\042" +
      "\055\164\057\227\060\011\062\104\063\160\064\032\065" +
      "\060\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\107\071\112\177\113\136\114\041\115" +
      "\072\116\025\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\150\007\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\044\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\002\001\uff63\000\020\011\173\020" +
      "\236\046\u0383\047\u0387\115\u0386\117\057\227\235\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\004\227\u037b\001\002\000\002\001\uff5d\000" +
      "\004\227\u036b\001\002\000\004\231\u036a\001\ufe0c\000\014" +
      "\013\u0294\017\u0367\104\u0366\105\u0296\106\u0295\001\002\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\002\001\ufe6b\000\004\107\u034b\001\002\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\010\013\u0342\046\u0113\246\u0112\001\ufe7f\000\002\001\ufe49" +
      "\000\004\227\u033a\001\002\000\002\001\ufe68\000\004\011" +
      "\u0334\001\002\000\002\001\ufe67\000\004\227\u0331\001\002" +
      "\000\170\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\u015a\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\155\u0153\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\242" +
      "\u0159\246\067\001\ufe30\000\030\011\173\013\063\020\137" +
      "\075\014\112\177\115\072\117\057\213\u014e\221\332\227" +
      "\u0150\232\107\001\002\000\014\072\ufe55\107\ufe55\111\ufe55" +
      "\213\ufe55\227\ufe52\001\ufe60\000\166\004\155\006\117\007" +
      "\010\010\065\011\173\013\063\020\137\035\112\046\200" +
      "\051\012\052\043\063\160\064\032\065\060\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\112\177\113\136\114\041\115\072\117\057\120\031\121" +
      "\076\122\052\123\133\124\115\131\070\150\u0329\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\002\001\ufe0b" +
      "\000\004\227\u0326\001\002\000\012\013\u0294\017\u0324\105" +
      "\u0296\106\u0295\001\ufe75\000\004\111\u031b\001\002\000\002" +
      "\001\uff16\000\004\066\u031a\001\002\000\002\001\ufe6e\000" +
      "\004\213\u0171\001\ufe5f\000\004\155\201\001\uff62\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\002\001\uff97\000\006\011\173\117\057\001\002\000\002" +
      "\001\ufe9a\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\004\011\u030c\001\002\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\164\004" +
      "\155\006\117\007\010\010\065\011\173\013\063\020\137" +
      "\035\112\046\200\051\012\052\043\063\160\064\032\065" +
      "\060\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\112\177\113\136\114\041\115\072\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\176\227\162\232\107\233" +
      "\121\234\061\235\103\241\123\246\067\001\002\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\002\001\uff82\000\022\011\173\013\063\066\u02f9\112\177" +
      "\115\072\117\057\221\332\232\107\001\002\000\012\013" +
      "\u0294\017\u0297\105\u0296\106\u0295\001\002\000\004\227\u02ed" +
      "\001\002\000\012\011\173\107\u02e5\115\u010e\117\057\001" +
      "\002\000\010\072\u02dc\107\u02da\213\u02db\001\ufe3d\000\010" +
      "\013\063\107\u02d7\232\107\001\002\000\004\227\u02be\001" +
      "\002\000\006\111\ufe7e\227\u02bb\001\ufe48\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\002\001" +
      "\uffb2\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\004\155\201\001\uff62\000\002\001\ufe70" +
      "\000\004\227\ufe54\001\ufe5a\000\012\013\u0294\017\u0297\105" +
      "\u0296\106\u0295\001\002\000\004\011\u0233\001\002\000\002" +
      "\001\ufe69\000\002\001\uff76\000\242\003\124\004\155\005" +
      "\166\006\117\007\010\010\065\011\035\013\063\015\101" +
      "\020\137\021\022\022\130\023\125\024\046\026\034\030" +
      "\110\032\167\035\112\037\141\043\056\044\127\045\075" +
      "\046\200\050\150\051\012\052\043\053\042\055\164\057" +
      "\227\060\011\062\104\063\160\064\032\065\060\074\161" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\107\071\112\177\113\136\114\041\115\072\116\025" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\150\007\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\044\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\002\001\uff5a\000\166\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\150\u022a\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\002\001\ufe4e" +
      "\000\002\001\uffb1\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\002\001\uffba\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\002\001" +
      "\ufe66\000\002\001\ufe4f\000\004\227\u0220\001\002\000\004" +
      "\227\u0207\001\002\000\002\001\ufe6d\000\002\001\uff64\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\006\011\173\117\057\001\002\000\002\001\ufe9e" +
      "\000\166\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\150\u01dd\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\002\001\ufe5b\000\004\111\u0186\001\002" +
      "\000\002\001\uff57\000\004\115\u0110\001\uffb8\000\004\227" +
      "\u0181\001\ufe78\000\164\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\002\001\uffb3\000\004\227\u0179\001" +
      "\002\000\004\227\u0176\001\002\000\164\004\155\006\117" +
      "\007\010\010\065\011\173\013\063\020\137\035\112\046" +
      "\200\051\012\052\043\063\160\064\032\065\060\074\161" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\112\177\113\136\114\041\115\072\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\030\011\173\013" +
      "\063\020\137\075\014\112\177\115\072\117\057\213\u014e" +
      "\221\332\227\u0150\232\107\001\002\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\002\001\uffb5" +
      "\000\004\227\u012e\001\002\000\004\227\170\001\002\000" +
      "\006\011\173\117\057\001\002\000\006\125\u0125\230\u0124" +
      "\001\002\000\004\132\174\001\002\000\002\001\ufe0c\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\074\034\305\126\275\127\315\130\265\147\271\151" +
      "\264\152\306\153\266\154\277\155\307\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\244\263\001\uff46\000\006\046" +
      "\u0113\246\u0112\001\ufe7f\000\004\115\u010e\001\002\000\004" +
      "\155\201\001\uff62\000\002\001\uff61\000\004\227\203\001" +
      "\002\000\022\011\173\075\205\112\177\115\072\117\057" +
      "\147\211\230\uff30\240\207\001\uff27\000\002\001\uff1b\000" +
      "\002\001\uff1d\000\004\125\u010c\001\uff31\000\002\001\uff1c" +
      "\000\010\013\256\155\255\242\254\001\002\000\016\011" +
      "\173\075\205\112\177\115\072\117\057\240\207\001\002" +
      "\000\002\001\uff1f\000\002\001\uff2f\000\002\001\uff26\000" +
      "\004\230\216\001\002\000\004\057\217\001\ufe89\000\004" +
      "\227\242\001\002\000\004\231\222\001\uff1a\000\004\107" +
      "\224\001\002\000\020\011\173\075\205\112\177\115\072" +
      "\117\057\147\211\240\207\001\002\000\002\001\uff19\000" +
      "\002\001\uff97\000\256\003\124\004\155\005\166\006\117" +
      "\007\010\010\065\011\035\013\063\015\101\020\137\021" +
      "\022\022\130\023\125\024\046\026\034\030\110\032\167" +
      "\035\112\037\141\043\056\044\127\045\075\046\116\050" +
      "\150\051\012\052\043\053\042\055\164\057\227\060\011" +
      "\062\104\063\160\064\032\065\060\066\033\067\153\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\107\071\110\231\112\177\113\136\114\041\115" +
      "\072\116\025\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\150\007\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\044\222\064\223\017\227\162\232\107\233\121\234\061" +
      "\235\103\237\126\241\123\246\067\001\002\000\002\001" +
      "\uff98\000\006\020\236\227\235\001\002\000\002\001\uff95" +
      "\000\002\001\ufe8d\000\002\001\uff94\000\002\001\uff96\000" +
      "\004\150\241\001\002\000\004\020\237\001\002\000\002" +
      "\001\uff66\000\004\230\240\001\002\000\002\001\uff65\000" +
      "\002\001\uff80\000\006\013\246\155\243\001\002\000\004" +
      "\013\252\001\002\000\002\001\ufe86\000\006\125\250\230" +
      "\247\001\002\000\002\001\ufe85\000\002\001\ufe88\000\006" +
      "\013\246\155\243\001\002\000\002\001\ufe87\000\002\001" +
      "\ufe84\000\002\001\uff1e\000\004\013\u010b\001\002\000\006" +
      "\013\u0107\242\u0106\001\002\000\004\132\257\001\uff2d\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\074\034\305\126\275\127\315\130\265\147\271\151" +
      "\264\152\306\153\266\154\277\155\307\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\244\263\001\uff29\000\164\004" +
      "\155\006\117\007\010\010\065\011\173\013\063\020\137" +
      "\035\112\046\200\051\012\052\043\063\160\064\032\065" +
      "\060\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\112\177\113\136\114\041\115\072\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\176\227\162\232\107\233" +
      "\121\234\061\235\103\241\123\246\067\001\002\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\164\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\166\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\170\114\171\074\176" +
      "\156\177\016\201\054\202\163\203\030\204\144\205\040" +
      "\206\135\207\100\210\145\211\077\212\037\213\053\215" +
      "\102\221\176\227\162\231\372\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\164\004" +
      "\155\006\117\007\010\010\065\011\173\013\063\020\137" +
      "\035\112\046\200\051\012\052\043\063\160\064\032\065" +
      "\060\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\112\177\113\136\114\041\115\072\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\176\227\162\232\107\233" +
      "\121\234\061\235\103\241\123\246\067\001\002\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\164\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\164\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\170\114\171\074\176" +
      "\156\177\016\201\054\202\163\203\030\204\144\205\040" +
      "\206\135\207\100\210\145\211\077\212\037\213\053\215" +
      "\102\221\176\227\162\232\107\233\121\234\061\235\103" +
      "\241\123\246\067\001\002\000\020\011\173\013\063\112" +
      "\177\115\072\117\057\221\332\232\107\001\002\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\164\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\164\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\170\114\171\074\176" +
      "\156\177\016\201\054\202\163\203\030\204\144\205\040" +
      "\206\135\207\100\210\145\211\077\212\037\213\053\215" +
      "\102\221\176\227\162\232\107\233\121\234\061\235\103" +
      "\241\123\246\067\001\002\000\070\034\305\130\265\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\ufebb\000" +
      "\014\034\305\172\303\173\267\174\302\175\262\001\ufeb6" +
      "\000\040\034\305\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\001\ufea8\000\030\034\305\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\001\ufea5\000\030\034\305\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\001\ufea3\000\030\034\305\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\001\ufea4\000\050\034\305\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\001\ufeb9\000\056" +
      "\034\305\153\266\154\277\155\307\156\313\157\300\160" +
      "\261\161\276\162\312\163\311\164\272\165\310\166\304" +
      "\167\301\170\314\171\273\172\303\173\267\174\302\175" +
      "\262\200\270\243\274\001\ufebe\000\002\001\ufea1\000\002" +
      "\001\ufe7e\000\012\072\341\107\336\111\340\213\337\001" +
      "\ufe79\000\004\111\334\001\ufe7a\000\002\001\ufe7f\000\002" +
      "\001\ufe43\000\006\013\063\232\107\001\002\000\002\001" +
      "\ufe3f\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\ufe3c\000\006\013\063\232\107\001\002\000\014" +
      "\011\173\013\063\107\344\117\057\232\107\001\002\000" +
      "\002\001\ufe35\000\002\001\ufe40\000\164\004\155\006\117" +
      "\007\010\010\065\011\173\013\063\020\137\035\112\046" +
      "\200\051\012\052\043\063\160\064\032\065\060\074\161" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\112\177\113\136\114\041\115\072\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\002\001\ufe37\000" +
      "\076\034\305\110\347\126\275\127\315\130\265\147\271" +
      "\151\264\152\306\153\266\154\277\155\307\156\313\157" +
      "\300\160\261\161\276\162\312\163\311\164\272\165\310" +
      "\166\304\167\301\170\314\171\273\172\303\173\267\174" +
      "\302\175\262\200\270\243\274\244\263\001\002\000\002" +
      "\001\ufe36\000\002\001\ufe3e\000\074\034\305\126\275\127" +
      "\315\130\265\147\271\151\264\152\306\153\266\154\277" +
      "\155\307\156\313\157\300\160\261\161\276\162\312\163" +
      "\311\164\272\165\310\166\304\167\301\170\314\171\273" +
      "\172\303\173\267\174\302\175\262\200\270\243\274\244" +
      "\263\001\ufe3b\000\004\214\353\001\002\000\002\001\ufe42" +
      "\000\076\034\305\110\355\126\275\127\315\130\265\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\002\000" +
      "\002\001\ufe41\000\022\034\305\170\314\171\273\172\303" +
      "\173\267\174\302\175\262\200\270\001\ufeb0\000\004\034" +
      "\305\001\ufeb4\000\004\034\305\001\ufeb2\000\022\034\305" +
      "\170\314\171\273\172\303\173\267\174\302\175\262\200" +
      "\270\001\ufeaf\000\040\034\305\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\001\ufea7\000\052" +
      "\034\305\155\307\156\313\157\300\160\261\161\276\162" +
      "\312\163\311\164\272\165\310\166\304\167\301\170\314" +
      "\171\273\172\303\173\267\174\302\175\262\200\270\243" +
      "\274\001\ufeb8\000\040\034\305\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\001\ufea9\000\072" +
      "\034\305\127\315\130\265\147\271\151\264\152\306\153" +
      "\266\154\277\155\307\156\313\157\300\160\261\161\276" +
      "\162\312\163\311\164\272\165\310\166\304\167\301\170" +
      "\314\171\273\172\303\173\267\174\302\175\262\200\270" +
      "\243\274\244\263\001\ufebd\000\026\034\305\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\001\ufea2\000\014\034\305\172\303\173\267\174" +
      "\302\175\262\001\ufeb5\000\030\034\305\166\304\167\301" +
      "\170\314\171\273\172\303\173\267\174\302\175\262\200" +
      "\270\243\274\001\ufea6\000\076\034\305\126\275\127\315" +
      "\130\265\147\271\151\264\152\306\153\266\154\277\155" +
      "\307\156\313\157\300\160\261\161\276\162\312\163\311" +
      "\164\272\165\310\166\304\167\301\170\314\171\273\172" +
      "\303\173\267\174\302\175\262\200\270\231\374\243\274" +
      "\244\263\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\074\034\305\126\275\127\315" +
      "\130\265\147\271\151\264\152\306\153\266\154\277\155" +
      "\307\156\313\157\300\160\261\161\276\162\312\163\311" +
      "\164\272\165\310\166\304\167\301\170\314\171\273\172" +
      "\303\173\267\174\302\175\262\200\270\243\274\244\263" +
      "\001\ufe9c\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\074\034\305\126\275\127\315\130\265" +
      "\147\271\151\264\152\306\153\266\154\277\155\307\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\244\263\001\ufe9d" +
      "\000\014\034\305\172\303\173\267\174\302\175\262\001" +
      "\ufeb7\000\004\034\305\001\ufeb3\000\054\034\305\154\277" +
      "\155\307\156\313\157\300\160\261\161\276\162\312\163" +
      "\311\164\272\165\310\166\304\167\301\170\314\171\273" +
      "\172\303\173\267\174\302\175\262\200\270\243\274\001" +
      "\ufeba\000\066\034\305\147\271\151\264\152\306\153\266" +
      "\154\277\155\307\156\313\157\300\160\261\161\276\162" +
      "\312\163\311\164\272\165\310\166\304\167\301\170\314" +
      "\171\273\172\303\173\267\174\302\175\262\200\270\243" +
      "\274\244\263\001\ufebc\000\060\034\305\152\306\153\266" +
      "\154\277\155\307\156\313\157\300\160\261\161\276\162" +
      "\312\163\311\164\272\165\310\166\304\167\301\170\314" +
      "\171\273\172\303\173\267\174\302\175\262\200\270\243" +
      "\274\001\ufebf\000\064\034\305\151\264\152\306\153\266" +
      "\154\277\155\307\156\313\157\300\160\261\161\276\162" +
      "\312\163\311\164\272\165\310\166\304\167\301\170\314" +
      "\171\273\172\303\173\267\174\302\175\262\200\270\243" +
      "\274\244\263\001\ufe9b\000\004\034\305\001\ufeb1\000\040" +
      "\034\305\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\001\ufeaa\000\004\013\u010a\001\002\000" +
      "\004\132\u0108\001\uff2b\000\164\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\170\114\171\074\176" +
      "\156\177\016\201\054\202\163\203\030\204\144\205\040" +
      "\206\135\207\100\210\145\211\077\212\037\213\053\215" +
      "\102\221\176\227\162\232\107\233\121\234\061\235\103" +
      "\241\123\246\067\001\002\000\074\034\305\126\275\127" +
      "\315\130\265\147\271\151\264\152\306\153\266\154\277" +
      "\155\307\156\313\157\300\160\261\161\276\162\312\163" +
      "\311\164\272\165\310\166\304\167\301\170\314\171\273" +
      "\172\303\173\267\174\302\175\262\200\270\243\274\244" +
      "\263\001\uff28\000\002\001\uff2a\000\002\001\uff2c\000\020" +
      "\011\173\075\205\112\177\115\072\117\057\147\211\240" +
      "\207\001\uff27\000\002\001\uff2e\000\006\011\173\117\057" +
      "\001\002\000\004\115\u0110\001\uffb7\000\006\011\173\117" +
      "\057\001\002\000\002\001\uffb9\000\004\155\201\001\uff62" +
      "\000\004\155\201\001\uff62\000\004\227\u0115\001\002\000" +
      "\022\011\173\075\205\112\177\115\072\117\057\147\211" +
      "\230\uff30\240\207\001\uff27\000\004\230\u0117\001\002\000" +
      "\004\057\217\001\ufe89\000\004\231\222\001\uff1a\000\004" +
      "\107\u011a\001\002\000\002\001\uff97\000\256\003\124\004" +
      "\155\005\166\006\117\007\010\010\065\011\035\013\063" +
      "\015\101\020\137\021\022\022\130\023\125\024\046\026" +
      "\034\030\110\032\167\035\112\037\141\043\056\044\127" +
      "\045\075\046\116\050\150\051\012\052\043\053\042\055" +
      "\164\057\227\060\011\062\104\063\160\064\032\065\060" +
      "\066\033\067\153\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\107\071\110\u011c\112\177" +
      "\113\136\114\041\115\072\116\025\117\057\120\031\121" +
      "\076\122\052\123\133\124\115\131\070\150\007\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\044\222\064\223\017\227\162\232" +
      "\107\233\121\234\061\235\103\237\126\241\123\246\067" +
      "\001\002\000\002\001\ufe8c\000\004\227\u011e\001\002\000" +
      "\022\011\173\075\205\112\177\115\072\117\057\147\211" +
      "\230\uff30\240\207\001\uff27\000\004\230\u0120\001\002\000" +
      "\004\231\222\001\uff1a\000\004\073\u0122\001\002\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\050\034\305\156\313\157\300\160\261\161\276\162\312" +
      "\163\311\164\272\165\310\166\304\167\301\170\314\171" +
      "\273\172\303\173\267\174\302\175\262\200\270\243\274" +
      "\001\ufe8a\000\244\003\124\004\155\005\166\006\117\007" +
      "\010\010\065\011\035\013\063\015\101\020\137\021\022" +
      "\022\130\023\125\024\046\026\034\030\110\032\167\035" +
      "\112\037\141\043\056\044\127\045\075\046\200\050\150" +
      "\051\012\052\043\053\042\055\164\057\227\060\011\062" +
      "\104\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\107\071\112" +
      "\177\113\136\114\041\115\072\116\025\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\150\007\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\044\227\162\231\u012a\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\006\011\173\117\057\001\002\000\004\132\u0127\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\074\034\305\126\275\127\315\130\265\147\271" +
      "\151\264\152\306\153\266\154\277\155\307\156\313\157" +
      "\300\160\261\161\276\162\312\163\311\164\272\165\310" +
      "\166\304\167\301\170\314\171\273\172\303\173\267\174" +
      "\302\175\262\200\270\243\274\244\263\001\uff45\000\002" +
      "\001\uff7c\000\002\001\uff97\000\002\001\uff48\000\256\003" +
      "\124\004\155\005\166\006\117\007\010\010\065\011\035" +
      "\013\063\015\101\020\137\021\022\022\130\023\125\024" +
      "\046\026\034\030\110\032\167\033\u012d\035\112\037\141" +
      "\043\056\044\127\045\075\046\116\050\150\051\012\052" +
      "\043\053\042\055\164\057\227\060\011\062\104\063\160" +
      "\064\032\065\060\066\033\067\153\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\107\071" +
      "\112\177\113\136\114\041\115\072\116\025\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\150\007" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\044\222\064\223\017\227" +
      "\162\232\107\233\121\234\061\235\103\237\126\241\123" +
      "\246\067\001\002\000\002\001\uff47\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\076\034\305" +
      "\126\275\127\315\130\265\147\271\151\264\152\306\153" +
      "\266\154\277\155\307\156\313\157\300\160\261\161\276" +
      "\162\312\163\311\164\272\165\310\166\304\167\301\170" +
      "\314\171\273\172\303\173\267\174\302\175\262\200\270" +
      "\230\u0130\243\274\244\263\001\002\000\244\003\124\004" +
      "\155\005\166\006\117\007\010\010\065\011\035\013\063" +
      "\015\101\020\137\021\022\022\130\023\125\024\046\026" +
      "\034\030\110\032\167\035\112\037\141\043\056\044\127" +
      "\045\075\046\200\050\150\051\012\052\043\053\042\055" +
      "\164\057\227\060\011\062\104\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\107\071\112\177\113\136\114\041\115\072" +
      "\116\025\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\150\007\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\044" +
      "\227\162\231\u0131\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\002\001\uff97\000\002\001\uff39" +
      "\000\006\217\u0136\220\u0135\001\uff35\000\002\001\uff92\000" +
      "\242\003\124\004\155\005\166\006\117\007\010\010\065" +
      "\011\035\013\063\015\101\020\137\021\022\022\130\023" +
      "\125\024\046\026\034\030\110\032\167\035\112\037\141" +
      "\043\056\044\127\045\075\046\200\050\150\051\012\052" +
      "\043\053\042\055\164\057\227\060\011\062\104\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\107\071\112\177\113\136" +
      "\114\041\115\072\116\025\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\150\007\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\044\227\162\232\107\233\121\234\061\235" +
      "\103\241\123\246\067\001\002\000\004\227\u0137\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\076\034\305\126\275\127\315\130\265\147\271" +
      "\151\264\152\306\153\266\154\277\155\307\156\313\157" +
      "\300\160\261\161\276\162\312\163\311\164\272\165\310" +
      "\166\304\167\301\170\314\171\273\172\303\173\267\174" +
      "\302\175\262\200\270\230\u0139\243\274\244\263\001\002" +
      "\000\242\003\124\004\155\005\166\006\117\007\010\010" +
      "\065\011\035\013\063\015\101\020\137\021\022\022\130" +
      "\023\125\024\046\026\034\030\110\032\167\035\112\037" +
      "\141\043\056\044\127\045\075\046\200\050\150\051\012" +
      "\052\043\053\042\055\164\057\227\060\011\062\104\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\107\071\112\177\113" +
      "\136\114\041\115\072\116\025\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\150\007\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\044\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\002\001\uff38\000" +
      "\002\001\uff34\000\254\003\124\004\155\005\166\006\117" +
      "\007\010\010\065\011\035\013\063\015\101\020\137\021" +
      "\022\022\130\023\125\024\046\026\034\030\110\032\167" +
      "\035\112\037\141\043\056\044\127\045\075\046\116\050" +
      "\150\051\012\052\043\053\042\055\164\057\227\060\011" +
      "\062\104\063\160\064\032\065\060\066\033\067\153\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\107\071\112\177\113\136\114\041\115\072\116" +
      "\025\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\150\007\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\044\222" +
      "\064\223\017\227\162\232\107\233\121\234\061\235\103" +
      "\237\126\241\123\246\067\001\uff37\000\006\217\u0140\220" +
      "\u013f\001\uff33\000\004\216\u0148\001\002\000\004\231\u0146" +
      "\001\002\000\004\227\u0141\001\002\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\076\034\305" +
      "\126\275\127\315\130\265\147\271\151\264\152\306\153" +
      "\266\154\277\155\307\156\313\157\300\160\261\161\276" +
      "\162\312\163\311\164\272\165\310\166\304\167\301\170" +
      "\314\171\273\172\303\173\267\174\302\175\262\200\270" +
      "\230\u0143\243\274\244\263\001\002\000\004\231\u0144\001" +
      "\002\000\002\001\uff97\000\254\003\124\004\155\005\166" +
      "\006\117\007\010\010\065\011\035\013\063\015\101\020" +
      "\137\021\022\022\130\023\125\024\046\026\034\030\110" +
      "\032\167\035\112\037\141\043\056\044\127\045\075\046" +
      "\116\050\150\051\012\052\043\053\042\055\164\057\227" +
      "\060\011\062\104\063\160\064\032\065\060\066\033\067" +
      "\153\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\107\071\112\177\113\136\114\041\115" +
      "\072\116\025\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\150\007\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\044\222\064\223\017\227\162\232\107\233\121\234\061" +
      "\235\103\237\126\241\123\246\067\001\uff36\000\002\001" +
      "\uff97\000\254\003\124\004\155\005\166\006\117\007\010" +
      "\010\065\011\035\013\063\015\101\020\137\021\022\022" +
      "\130\023\125\024\046\026\034\030\110\032\167\035\112" +
      "\037\141\043\056\044\127\045\075\046\116\050\150\051" +
      "\012\052\043\053\042\055\164\057\227\060\011\062\104" +
      "\063\160\064\032\065\060\066\033\067\153\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\107\071\112\177\113\136\114\041\115\072\116\025\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\150\007\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\044\222\064\223" +
      "\017\227\162\232\107\233\121\234\061\235\103\237\126" +
      "\241\123\246\067\001\uff32\000\004\150\u0149\001\002\000" +
      "\002\001\uff91\000\076\034\305\126\275\127\315\130\265" +
      "\147\271\150\u014b\151\264\152\306\153\266\154\277\155" +
      "\307\156\313\157\300\160\261\161\276\162\312\163\311" +
      "\164\272\165\310\166\304\167\301\170\314\171\273\172" +
      "\303\173\267\174\302\175\262\200\270\243\274\244\263" +
      "\001\002\000\002\001\uff79\000\004\213\u0171\001\002\000" +
      "\004\227\ufe52\001\ufe55\000\170\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\u015a\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\155\u0153\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\242\u0159\246\067\001\ufe30\000\012\072" +
      "\ufe57\107\ufe57\111\ufe57\213\ufe57\001\ufec0\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\076\034" +
      "\305\126\275\127\315\130\265\147\271\151\264\152\306" +
      "\153\266\154\277\155\307\156\313\157\300\160\261\161" +
      "\276\162\312\163\311\164\272\165\310\166\304\167\301" +
      "\170\314\171\273\172\303\173\267\174\302\175\262\200" +
      "\270\230\u0152\243\274\244\263\001\002\000\004\227\ufe53" +
      "\001\ufe56\000\030\011\173\013\063\020\137\075\014\112" +
      "\177\115\072\117\057\213\u014e\221\332\227\u0150\232\107" +
      "\001\002\000\076\034\305\073\u0168\126\275\127\315\130" +
      "\265\147\271\151\264\152\306\153\266\154\277\155\307" +
      "\156\313\157\300\160\261\161\276\162\312\163\311\164" +
      "\272\165\310\166\304\167\301\170\314\171\273\172\303" +
      "\173\267\174\302\175\262\200\270\243\274\244\263\001" +
      "\ufe2b\000\002\001\ufe2e\000\004\125\u0166\001\ufe31\000\002" +
      "\001\ufe2f\000\004\214\u0165\001\002\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\004\227\u015b" +
      "\001\002\000\170\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\u015a\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\155\u0153\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\242\u0159\246\067\001\ufe30\000\002\001\ufe33\000\004" +
      "\125\u0162\001\ufe34\000\004\230\u015f\001\002\000\004\132" +
      "\u0160\001\ufe26\000\164\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\066\034\305\147\271\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\ufed5\000\170\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\u015a\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\155\u0153" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\176\227\162\232\107\233" +
      "\121\234\061\235\103\241\123\242\u0159\246\067\001\ufe30" +
      "\000\002\001\ufe32\000\074\034\305\126\275\127\315\130" +
      "\265\147\271\151\264\152\306\153\266\154\277\155\307" +
      "\156\313\157\300\160\261\161\276\162\312\163\311\164" +
      "\272\165\310\166\304\167\301\170\314\171\273\172\303" +
      "\173\267\174\302\175\262\200\270\243\274\244\263\001" +
      "\ufe28\000\002\001\ufe50\000\170\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\u015a\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\155\u0153\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\242\u0159\246\067\001\ufe30\000\002\001" +
      "\ufe2d\000\166\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\u016b\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\155\u0169\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\030\011\173\013\063\020\137\075" +
      "\014\112\177\115\072\117\057\213\u014e\221\332\227\u0150" +
      "\232\107\001\002\000\074\034\305\126\275\127\315\130" +
      "\265\147\271\151\264\152\306\153\266\154\277\155\307" +
      "\156\313\157\300\160\261\161\276\162\312\163\311\164" +
      "\272\165\310\166\304\167\301\170\314\171\273\172\303" +
      "\173\267\174\302\175\262\200\270\243\274\244\263\001" +
      "\ufe2c\000\004\227\u016c\001\002\000\170\004\155\006\117" +
      "\007\010\010\065\011\173\013\063\020\137\035\112\046" +
      "\200\051\012\052\043\063\160\064\032\065\060\074\u015a" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\112\177\113\136\114\041\115\072\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\155\u0153\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\242\u0159\246\067\001\ufe30\000" +
      "\004\230\u016e\001\002\000\004\132\u0160\001\ufe27\000\010" +
      "\125\ufe2a\214\ufe2a\230\ufe2a\001\ufe57\000\010\125\ufe29\214" +
      "\ufe29\230\ufe29\001\ufe57\000\164\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\170\114\171\074\176" +
      "\156\177\016\201\054\202\163\203\030\204\144\205\040" +
      "\206\135\207\100\210\145\211\077\212\037\213\053\215" +
      "\102\221\176\227\162\232\107\233\121\234\061\235\103" +
      "\241\123\246\067\001\ufe3c\000\004\214\u0173\001\002\000" +
      "\002\001\ufe4c\000\076\034\305\126\275\127\315\130\265" +
      "\147\271\151\264\152\306\153\266\154\277\155\307\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\230\u0175\243\274\244\263" +
      "\001\002\000\014\072\ufe56\107\ufe56\111\ufe56\213\ufe56\227" +
      "\ufe53\001\ufea0\000\170\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\u015a\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\155\u0153\170\114\171\074\176" +
      "\156\177\016\201\054\202\163\203\030\204\144\205\040" +
      "\206\135\207\100\210\145\211\077\212\037\213\053\215" +
      "\102\221\176\227\162\232\107\233\121\234\061\235\103" +
      "\241\123\242\u0159\246\067\001\ufe30\000\004\230\u0178\001" +
      "\002\000\004\132\u0160\001\002\000\030\011\173\013\063" +
      "\020\137\075\014\112\177\115\072\117\057\213\u014e\221" +
      "\332\227\u0150\232\107\001\002\000\006\125\ufe0e\230\ufe0e" +
      "\001\ufe57\000\004\125\u017c\001\ufe5e\000\030\011\173\013" +
      "\063\020\137\075\014\112\177\115\072\117\057\213\u014e" +
      "\221\332\227\u0150\232\107\001\ufe5d\000\004\230\u017e\001" +
      "\002\000\002\001\ufe16\000\006\125\ufe0d\230\ufe0d\001\ufe57" +
      "\000\004\034\305\001\ufeac\000\166\004\155\006\117\007" +
      "\010\010\065\011\173\013\063\020\137\035\112\046\200" +
      "\051\012\052\043\063\160\064\032\065\060\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\112\177\113\136\114\041\115\072\117\057\120\031\121" +
      "\076\122\052\123\133\124\115\131\070\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\176\227\162\230\u0184\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\002\001\ufe92" +
      "\000\076\034\305\126\275\127\315\130\265\147\271\151" +
      "\264\152\306\153\266\154\277\155\307\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\230\u0185\243\274\244\263\001\002\000" +
      "\002\001\ufe77\000\002\001\ufe76\000\220\004\u01c6\005\u01cf" +
      "\011\173\013\063\022\u01bc\023\u01ba\024\u0197\025\u019b\026" +
      "\u0192\027\u01af\030\u01ac\031\u0198\032\u01ce\033\u01b5\034\u019a" +
      "\035\u01ae\036\u0193\037\u01c0\040\u01ab\041\u0187\042\u019d\043" +
      "\u019c\044\u01bb\045\u01a6\046\u01b1\047\u01c1\050\u01c3\051\u0189" +
      "\053\u0194\054\u01cb\055\u01cd\056\u019e\057\u018e\060\u0188\061" +
      "\u01cc\062\u01a8\063\u01c9\064\u0190\066\u0191\067\u01c5\070\u018d" +
      "\071\u01ad\074\u01ca\075\u018a\107\u01a2\112\u01a9\117\057\120" +
      "\u018f\121\u01a5\122\u0199\123\u01be\124\u01b0\126\u01c7\127\u01c8" +
      "\130\u01c4\131\u01a1\215\u01a7\216\u01a3\217\u01a4\220\u01b8\221" +
      "\u0196\222\u019f\223\u018b\224\u01b4\225\u01b3\226\u01c2\232\107" +
      "\236\u01b2\237\u01b9\240\u018c\246\u01a0\001\002\000\002\001" +
      "\uffcf\000\002\001\uffde\000\002\001\uffd3\000\002\001\uffcc" +
      "\000\002\001\uffc0\000\002\001\uffcb\000\002\001\uffca\000" +
      "\002\001\uffe0\000\002\001\uffff\000\002\001\uffda\000\002" +
      "\001\uffc5\000\002\001\uffeb\000\002\001\uffe5\000\002\001" +
      "\uffe4\000\002\001\uffbb\000\002\001\uffc2\000\002\001\uffed" +
      "\000\002\001\uffe8\000\002\001\ufffd\000\002\001\ufff7\000" +
      "\002\001\uffec\000\002\001\uffcd\000\002\001\uffce\000\002" +
      "\001\uffe2\000\002\001\uffc1\000\002\001\uffc4\000\002\001" +
      "\uffd4\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\002\001\ufff0\000\002\001\ufff2\000\002\001" +
      "\ufffe\000\002\001\uffd8\000\002\001\ufff6\000\002\001\uffdc" +
      "\000\002\001\uffc8\000\004\227\ufe3a\001\ufe46\000\002\001" +
      "\uffd0\000\002\001\uffe9\000\002\001\uffc9\000\002\001\ufff5" +
      "\000\002\001\uffea\000\002\001\ufffb\000\002\001\uffd7\000" +
      "\002\001\uffdf\000\002\001\uffbe\000\002\001\uffbf\000\002" +
      "\001\uffe6\000\002\001\uffc3\000\004\227\u01d0\001\002\000" +
      "\002\001\ufff1\000\002\001\uffc7\000\002\001\uffee\000\002" +
      "\001\uffd9\000\002\001\uffef\000\004\227\ufe38\001\ufe44\000" +
      "\002\001\ufffc\000\002\001\uffbc\000\002\001\uffd1\000\002" +
      "\001\uffd6\000\002\001\uffbd\000\002\001\uffd5\000\002\001" +
      "\ufff8\000\002\001\uffc6\000\002\001\ufff4\000\002\001\ufffa" +
      "\000\002\001\ufff9\000\002\001\uffdb\000\002\001\uffd2\000" +
      "\002\001\uffe3\000\002\001\uffdd\000\002\001\uffe1\000\002" +
      "\001\uffe7\000\002\001\ufff3\000\166\004\155\006\117\007" +
      "\010\010\065\011\173\013\063\020\137\035\112\046\200" +
      "\051\012\052\043\063\160\064\032\065\060\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\112\177\113\136\114\041\115\072\117\057\120\031\121" +
      "\076\122\052\123\133\124\115\131\070\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\176\227\162\232\107\233\121\234\061\235" +
      "\103\241\123\242\u01d5\246\067\001\uff24\000\004\230\u01da" +
      "\001\002\000\074\034\305\126\275\127\315\130\265\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\uff21\000" +
      "\002\001\uff23\000\004\125\u01d7\001\ufe5e\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\074\034" +
      "\305\126\275\127\315\130\265\147\271\151\264\152\306" +
      "\153\266\154\277\155\307\156\313\157\300\160\261\161" +
      "\276\162\312\163\311\164\272\165\310\166\304\167\301" +
      "\170\314\171\273\172\303\173\267\174\302\175\262\200" +
      "\270\243\274\244\263\001\uff20\000\166\004\155\006\117" +
      "\007\010\010\065\011\173\013\063\020\137\035\112\046" +
      "\200\051\012\052\043\063\160\064\032\065\060\074\161" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\112\177\113\136\114\041\115\072\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\242\u01d5\246\067\001\ufe5d\000\002\001" +
      "\uff25\000\002\001\uff22\000\002\001\ufe81\000\076\034\305" +
      "\110\u01dc\126\275\127\315\130\265\147\271\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\002\000\002\001\ufe39\000" +
      "\002\001\uff88\000\074\034\305\126\275\127\315\130\265" +
      "\147\271\151\264\152\306\153\266\154\277\155\307\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\244\263\001\002" +
      "\000\054\072\ufe57\107\ufe57\111\ufe57\132\u01e3\133\u01e8\134" +
      "\u01e4\135\u01f1\136\u01e7\137\u01f0\140\u01ea\141\u01ed\142\u01e6" +
      "\143\u01e2\144\u01e9\145\u01eb\146\u01e5\150\u01ee\201\u01ec\202" +
      "\u01ef\213\ufe57\245\u01f2\001\ufe5c\000\004\150\u01e1\001\ufe5b" +
      "\000\002\001\uff87\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\166\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\155\u01ff\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\164\004" +
      "\155\006\117\007\010\010\065\011\173\013\063\020\137" +
      "\035\112\046\200\051\012\052\043\063\160\064\032\065" +
      "\060\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\112\177\113\136\114\041\115\072\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\176\227\162\232\107\233" +
      "\121\234\061\235\103\241\123\246\067\001\002\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\164\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\246" +
      "\067\001\002\000\002\001\ufec3\000\164\004\155\006\117" +
      "\007\010\010\065\011\173\013\063\020\137\035\112\046" +
      "\200\051\012\052\043\063\160\064\032\065\060\074\161" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\112\177\113\136\114\041\115\072\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\002\001\uff86\000" +
      "\002\001\ufec1\000\164\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\164\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\170\114\171\074\176" +
      "\156\177\016\201\054\202\163\203\030\204\144\205\040" +
      "\206\135\207\100\210\145\211\077\212\037\213\053\215" +
      "\102\221\176\227\162\232\107\233\121\234\061\235\103" +
      "\241\123\246\067\001\002\000\066\034\305\147\271\151" +
      "\264\152\306\153\266\154\277\155\307\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\244\263\001\ufec4\000\066\034" +
      "\305\147\271\151\264\152\306\153\266\154\277\155\307" +
      "\156\313\157\300\160\261\161\276\162\312\163\311\164" +
      "\272\165\310\166\304\167\301\170\314\171\273\172\303" +
      "\173\267\174\302\175\262\200\270\243\274\244\263\001" +
      "\ufece\000\066\034\305\147\271\151\264\152\306\153\266" +
      "\154\277\155\307\156\313\157\300\160\261\161\276\162" +
      "\312\163\311\164\272\165\310\166\304\167\301\170\314" +
      "\171\273\172\303\173\267\174\302\175\262\200\270\243" +
      "\274\244\263\001\ufecb\000\066\034\305\147\271\151\264" +
      "\152\306\153\266\154\277\155\307\156\313\157\300\160" +
      "\261\161\276\162\312\163\311\164\272\165\310\166\304" +
      "\167\301\170\314\171\273\172\303\173\267\174\302\175" +
      "\262\200\270\243\274\244\263\001\ufec9\000\066\034\305" +
      "\147\271\151\264\152\306\153\266\154\277\155\307\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\244\263\001\ufec5" +
      "\000\066\034\305\147\271\151\264\152\306\153\266\154" +
      "\277\155\307\156\313\157\300\160\261\161\276\162\312" +
      "\163\311\164\272\165\310\166\304\167\301\170\314\171" +
      "\273\172\303\173\267\174\302\175\262\200\270\243\274" +
      "\244\263\001\ufeca\000\066\034\305\147\271\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\ufec6\000\066\034\305\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\ufed0\000" +
      "\066\034\305\147\271\151\264\152\306\153\266\154\277" +
      "\155\307\156\313\157\300\160\261\161\276\162\312\163" +
      "\311\164\272\165\310\166\304\167\301\170\314\171\273" +
      "\172\303\173\267\174\302\175\262\200\270\243\274\244" +
      "\263\001\ufecc\000\066\034\305\147\271\151\264\152\306" +
      "\153\266\154\277\155\307\156\313\157\300\160\261\161" +
      "\276\162\312\163\311\164\272\165\310\166\304\167\301" +
      "\170\314\171\273\172\303\173\267\174\302\175\262\200" +
      "\270\243\274\244\263\001\ufec8\000\074\034\305\126\275" +
      "\127\315\130\265\147\271\151\264\152\306\153\266\154" +
      "\277\155\307\156\313\157\300\160\261\161\276\162\312" +
      "\163\311\164\272\165\310\166\304\167\301\170\314\171" +
      "\273\172\303\173\267\174\302\175\262\200\270\243\274" +
      "\244\263\001\ufecd\000\066\034\305\147\271\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\ufecf\000\030\011\173\013" +
      "\063\020\137\075\014\112\177\115\072\117\057\213\u014e" +
      "\221\332\227\u0150\232\107\001\002\000\066\034\305\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\ufed3\000" +
      "\012\072\ufe57\107\ufe57\111\ufe57\213\ufe57\001\ufed2\000\066" +
      "\034\305\147\271\151\264\152\306\153\266\154\277\155" +
      "\307\156\313\157\300\160\261\161\276\162\312\163\311" +
      "\164\272\165\310\166\304\167\301\170\314\171\273\172" +
      "\303\173\267\174\302\175\262\200\270\243\274\244\263" +
      "\001\ufec7\000\006\125\u0125\150\u0204\001\002\000\002\001" +
      "\uffa9\000\002\001\ufe94\000\002\001\ufe98\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\076\034" +
      "\305\126\275\127\315\130\265\147\271\151\264\152\306" +
      "\153\266\154\277\155\307\156\313\157\300\160\261\161" +
      "\276\162\312\163\311\164\272\165\310\166\304\167\301" +
      "\170\314\171\273\172\303\173\267\174\302\175\262\200" +
      "\270\230\u0209\243\274\244\263\001\002\000\006\107\u020b" +
      "\231\u020c\001\002\000\002\001\uff8d\000\004\150\u021c\001" +
      "\uff40\000\004\150\u020e\001\uff40\000\010\040\u021a\041\u0211" +
      "\042\u0212\001\002\000\002\001\uff40\000\010\040\u0210\041" +
      "\u0211\042\u0212\001\002\000\002\001\uff41\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\006\150" +
      "\u0215\231\u0214\001\002\000\002\001\uff97\000\002\001\uff3d" +
      "\000\002\001\uff3c\000\254\003\124\004\155\005\166\006" +
      "\117\007\010\010\065\011\035\013\063\015\101\020\137" +
      "\021\022\022\130\023\125\024\046\026\034\030\110\032" +
      "\167\035\112\037\141\043\056\044\127\045\075\046\116" +
      "\050\150\051\012\052\043\053\042\055\164\057\227\060" +
      "\011\062\104\063\160\064\032\065\060\066\033\067\153" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\107\071\112\177\113\136\114\041\115\072" +
      "\116\025\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\150\007\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\044" +
      "\222\064\223\017\227\162\232\107\233\121\234\061\235" +
      "\103\237\126\241\123\246\067\001\uff3e\000\100\034\305" +
      "\126\275\127\315\130\265\147\271\150\u0215\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\231\u0214\243\274\244\263\001\002\000\002\001" +
      "\uff97\000\254\003\124\004\155\005\166\006\117\007\010" +
      "\010\065\011\035\013\063\015\101\020\137\021\022\022" +
      "\130\023\125\024\046\026\034\030\110\032\167\035\112" +
      "\037\141\043\056\044\127\045\075\046\116\050\150\051" +
      "\012\052\043\053\042\055\164\057\227\060\011\062\104" +
      "\063\160\064\032\065\060\066\033\067\153\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\107\071\112\177\113\136\114\041\115\072\116\025\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\150\007\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\044\222\064\223" +
      "\017\227\162\232\107\233\121\234\061\235\103\237\126" +
      "\241\123\246\067\001\uff3f\000\002\001\uff42\000\010\041" +
      "\u0211\042\u0212\110\u021f\001\002\000\002\001\uff40\000\010" +
      "\041\u0211\042\u0212\110\u021e\001\002\000\002\001\uff43\000" +
      "\002\001\uff44\000\166\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\242\u01d5\246\067\001\uff24\000\004\230\u0222\001\002\000" +
      "\002\001\ufe80\000\002\001\ufe96\000\074\034\305\126\275" +
      "\127\315\130\265\147\271\151\264\152\306\153\266\154" +
      "\277\155\307\156\313\157\300\160\261\161\276\162\312" +
      "\163\311\164\272\165\310\166\304\167\301\170\314\171" +
      "\273\172\303\173\267\174\302\175\262\200\270\243\274" +
      "\244\263\001\ufe11\000\074\034\305\126\275\127\315\130" +
      "\265\147\271\151\264\152\306\153\266\154\277\155\307" +
      "\156\313\157\300\160\261\161\276\162\312\163\311\164" +
      "\272\165\310\166\304\167\301\170\314\171\273\172\303" +
      "\173\267\174\302\175\262\200\270\243\274\244\263\001" +
      "\ufedd\000\006\125\u0227\150\u0228\001\002\000\164\004\155" +
      "\006\117\007\010\010\065\011\173\013\063\020\137\035" +
      "\112\046\200\051\012\052\043\063\160\064\032\065\060" +
      "\074\161\075\014\076\021\077\047\100\051\101\142\102" +
      "\006\103\036\112\177\113\136\114\041\115\072\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\176\227\162\232\107\233\121" +
      "\234\061\235\103\241\123\246\067\001\002\000\002\001" +
      "\uff83\000\074\034\305\126\275\127\315\130\265\147\271" +
      "\151\264\152\306\153\266\154\277\155\307\156\313\157" +
      "\300\160\261\161\276\162\312\163\311\164\272\165\310" +
      "\166\304\167\301\170\314\171\273\172\303\173\267\174" +
      "\302\175\262\200\270\243\274\244\263\001\ufede\000\002" +
      "\001\uff8a\000\076\034\305\126\275\127\315\130\265\147" +
      "\271\150\u022c\151\264\152\306\153\266\154\277\155\307" +
      "\156\313\157\300\160\261\161\276\162\312\163\311\164" +
      "\272\165\310\166\304\167\301\170\314\171\273\172\303" +
      "\173\267\174\302\175\262\200\270\243\274\244\263\001" +
      "\002\000\002\001\uff89\000\004\024\u022e\001\002\000\004" +
      "\227\u022f\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\076\034\305\126\275\127\315" +
      "\130\265\147\271\151\264\152\306\153\266\154\277\155" +
      "\307\156\313\157\300\160\261\161\276\162\312\163\311" +
      "\164\272\165\310\166\304\167\301\170\314\171\273\172" +
      "\303\173\267\174\302\175\262\200\270\230\u0231\243\274" +
      "\244\263\001\002\000\004\150\u0232\001\002\000\002\001" +
      "\uff8f\000\004\070\u0235\001\uff56\000\004\107\u0240\001\002" +
      "\000\012\011\173\112\u0238\115\u0236\117\057\001\002\000" +
      "\006\011\173\117\057\001\002\000\004\125\u023d\001\uff55" +
      "\000\004\115\u023b\001\002\000\002\001\uff52\000\004\115" +
      "\u0110\001\ufe7d\000\006\011\173\117\057\001\002\000\004" +
      "\115\u0110\001\ufe7c\000\012\011\173\112\u0238\115\u0236\117" +
      "\057\001\002\000\002\001\uff51\000\004\115\u0110\001\ufe7b" +
      "\000\002\001\uff0e\000\026\057\u0246\061\u0244\110\u024b\116" +
      "\u0250\221\u0247\222\u024a\223\u024d\224\u024f\225\u0245\226\u0249" +
      "\001\ufeef\000\002\001\uff09\000\002\001\uff0f\000\002\001" +
      "\ufef0\000\002\001\ufeea\000\012\011\173\112\u0238\115\u0236" +
      "\117\057\001\002\000\002\001\ufee8\000\002\001\ufeed\000" +
      "\002\001\ufeeb\000\002\001\ufee7\000\002\001\uff5e\000\020" +
      "\011\173\075\205\112\177\115\072\117\057\147\211\240" +
      "\207\001\uff27\000\002\001\ufee6\000\022\046\ufeee\047\ufeee" +
      "\221\u0247\222\u024a\223\u024d\224\u024f\225\u0245\226\u0249\001" +
      "\ufef1\000\002\001\ufee9\000\242\003\124\004\155\005\166" +
      "\006\117\007\010\010\065\011\035\013\063\015\101\020" +
      "\137\021\022\022\130\023\125\024\046\026\034\030\110" +
      "\032\167\035\112\037\141\043\056\044\127\045\075\046" +
      "\200\050\150\051\012\052\043\053\042\055\164\057\227" +
      "\060\011\062\104\063\160\064\032\065\060\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\107\071\112\177\113\136\114\041\115\072\116\025\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\150\007\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\044\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\006\046\u0252\047\u0253\001\002\000\004\155\201\001" +
      "\uff62\000\212\004\u01c6\005\u01cf\011\173\022\u01bc\023\u01ba" +
      "\024\u0197\025\u019b\026\u0192\027\u01af\030\u01ac\031\u0198\032" +
      "\u01ce\033\u01b5\034\u019a\035\u01ae\036\u0193\037\u01c0\040\u01ab" +
      "\041\u0187\042\u019d\043\u019c\044\u01bb\045\u01a6\046\u01b1\047" +
      "\u01c1\050\u01c3\051\u0189\053\u0194\054\u01cb\055\u01cd\056\u019e" +
      "\057\u018e\060\u0188\061\u01cc\062\u01a8\063\u01c9\064\u0190\066" +
      "\u0191\067\u01c5\070\u018d\071\u01ad\074\u01ca\075\u018a\112\u01a9" +
      "\117\057\120\u018f\121\u01a5\122\u0199\123\u01be\124\u01b0\126" +
      "\u01c7\127\u01c8\130\u01c4\131\u01a1\215\u01a7\216\u01a3\217\u01a4" +
      "\220\u01b8\221\u0196\222\u019f\223\u018b\224\u01b4\225\u01b3\226" +
      "\u01c2\236\u01b2\237\u01b9\240\u018c\246\u01a0\001\002\000\002" +
      "\001\ufee0\000\004\132\u025a\001\002\000\006\125\u0257\150" +
      "\u0258\001\002\000\212\004\u01c6\005\u01cf\011\173\022\u01bc" +
      "\023\u01ba\024\u0197\025\u019b\026\u0192\027\u01af\030\u01ac\031" +
      "\u0198\032\u01ce\033\u01b5\034\u019a\035\u01ae\036\u0193\037\u01c0" +
      "\040\u01ab\041\u0187\042\u019d\043\u019c\044\u01bb\045\u01a6\046" +
      "\u01b1\047\u01c1\050\u01c3\051\u0189\053\u0194\054\u01cb\055\u01cd" +
      "\056\u019e\057\u018e\060\u0188\061\u01cc\062\u01a8\063\u01c9\064" +
      "\u0190\066\u0191\067\u01c5\070\u018d\071\u01ad\074\u01ca\075\u018a" +
      "\112\u01a9\117\057\120\u018f\121\u01a5\122\u0199\123\u01be\124" +
      "\u01b0\126\u01c7\127\u01c8\130\u01c4\131\u01a1\215\u01a7\216\u01a3" +
      "\217\u01a4\220\u01b8\221\u0196\222\u019f\223\u018b\224\u01b4\225" +
      "\u01b3\226\u01c2\236\u01b2\237\u01b9\240\u018c\246\u01a0\001\002" +
      "\000\002\001\uff0c\000\002\001\ufee1\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\074\034\305" +
      "\126\275\127\315\130\265\147\271\151\264\152\306\153" +
      "\266\154\277\155\307\156\313\157\300\160\261\161\276" +
      "\162\312\163\311\164\272\165\310\166\304\167\301\170" +
      "\314\171\273\172\303\173\267\174\302\175\262\200\270" +
      "\243\274\244\263\001\ufedf\000\212\004\u01c6\005\u01cf\011" +
      "\173\022\u01bc\023\u01ba\024\u0197\025\u019b\026\u0192\027\u01af" +
      "\030\u01ac\031\u0198\032\u01ce\033\u01b5\034\u019a\035\u01ae\036" +
      "\u0193\037\u01c0\040\u01ab\041\u0187\042\u019d\043\u019c\044\u01bb" +
      "\045\u01a6\046\u01b1\047\u01c1\050\u01c3\051\u0189\053\u0194\054" +
      "\u01cb\055\u01cd\056\u019e\057\u018e\060\u0188\061\u01cc\062\u01a8" +
      "\063\u01c9\064\u0190\066\u0191\067\u01c5\070\u018d\071\u01ad\074" +
      "\u01ca\075\u018a\112\u01a9\117\057\120\u018f\121\u01a5\122\u0199" +
      "\123\u01be\124\u01b0\126\u01c7\127\u01c8\130\u01c4\131\u01a1\215" +
      "\u01a7\216\u01a3\217\u01a4\220\u01b8\221\u0196\222\u019f\223\u018b" +
      "\224\u01b4\225\u01b3\226\u01c2\236\u01b2\237\u01b9\240\u018c\246" +
      "\u01a0\001\002\000\004\227\u025e\001\002\000\022\011\173" +
      "\075\205\112\177\115\072\117\057\147\211\230\uff30\240" +
      "\207\001\uff27\000\004\230\u0260\001\002\000\004\231\222" +
      "\001\uff1a\000\006\107\u0263\150\u0264\001\002\000\002\001" +
      "\uff0b\000\002\001\uff97\000\002\001\ufef3\000\256\003\124" +
      "\004\155\005\166\006\117\007\010\010\065\011\035\013" +
      "\063\015\101\020\137\021\022\022\130\023\125\024\046" +
      "\026\034\030\110\032\167\035\112\037\141\043\056\044" +
      "\127\045\075\046\116\050\150\051\012\052\043\053\042" +
      "\055\164\057\227\060\011\062\104\063\160\064\032\065" +
      "\060\066\033\067\153\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\107\071\110\u0266\112" +
      "\177\113\136\114\041\115\072\116\025\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\150\007\170" +
      "\114\171\074\176\156\177\016\201\054\202\163\203\030" +
      "\204\144\205\040\206\135\207\100\210\145\211\077\212" +
      "\037\213\053\215\102\221\044\222\064\223\017\227\162" +
      "\232\107\233\121\234\061\235\103\237\126\241\123\246" +
      "\067\001\002\000\002\001\ufef2\000\002\001\uff0a\000\002" +
      "\001\ufeec\000\004\013\u026a\001\002\000\004\132\u0271\001" +
      "\ufee3\000\006\125\u026c\150\u026d\001\002\000\004\013\u026e" +
      "\001\002\000\002\001\uff0d\000\004\132\u026f\001\ufee5\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\074\034\305\126\275\127\315\130\265\147\271\151" +
      "\264\152\306\153\266\154\277\155\307\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\244\263\001\ufee4\000\164\004" +
      "\155\006\117\007\010\010\065\011\173\013\063\020\137" +
      "\035\112\046\200\051\012\052\043\063\160\064\032\065" +
      "\060\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\112\177\113\136\114\041\115\072\117" +
      "\057\120\031\121\076\122\052\123\133\124\115\131\070" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\176\227\162\232\107\233" +
      "\121\234\061\235\103\241\123\246\067\001\002\000\074" +
      "\034\305\126\275\127\315\130\265\147\271\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\ufee2\000\010\107\u0276\125" +
      "\u0275\150\u0278\001\002\000\002\001\uff07\000\012\011\173" +
      "\112\u0238\115\u0236\117\057\001\002\000\012\011\u0281\112" +
      "\u0238\115\u0236\117\057\001\uff03\000\002\001\uff08\000\002" +
      "\001\uff05\000\004\036\u028d\001\002\000\004\150\u028c\001" +
      "\002\000\012\011\u0281\112\u0238\115\u0236\117\057\001\uff02" +
      "\000\004\110\u028a\001\002\000\004\236\u0285\001\ufef9\000" +
      "\004\111\u0283\001\002\000\002\001\uff01\000\004\150\u0282" +
      "\001\002\000\004\036\ufefa\001\ufe0c\000\002\001\ufeff\000" +
      "\004\011\u0284\001\002\000\002\001\ufef8\000\012\011\173" +
      "\112\u0238\115\u0236\117\057\001\002\000\004\125\u0288\001" +
      "\ufefd\000\002\001\ufefc\000\012\011\173\112\u0238\115\u0236" +
      "\117\057\001\002\000\002\001\ufefb\000\002\001\uff04\000" +
      "\002\001\uff00\000\002\001\ufefe\000\016\221\u0247\222\u024a" +
      "\223\u024d\224\u024f\225\u0245\226\u0249\001\ufef5\000\212\004" +
      "\u01c6\005\u01cf\011\173\022\u01bc\023\u01ba\024\u0197\025\u019b" +
      "\026\u0192\027\u01af\030\u01ac\031\u0198\032\u01ce\033\u01b5\034" +
      "\u019a\035\u01ae\036\u0193\037\u01c0\040\u01ab\041\u0187\042\u019d" +
      "\043\u019c\044\u01bb\045\u01a6\046\u01b1\047\u01c1\050\u01c3\051" +
      "\u0189\053\u0194\054\u01cb\055\u01cd\056\u019e\057\u018e\060\u0188" +
      "\061\u01cc\062\u01a8\063\u01c9\064\u0190\066\u0191\067\u01c5\070" +
      "\u018d\071\u01ad\074\u01ca\075\u018a\112\u01a9\117\057\120\u018f" +
      "\121\u01a5\122\u0199\123\u01be\124\u01b0\126\u01c7\127\u01c8\130" +
      "\u01c4\131\u01a1\215\u01a7\216\u01a3\217\u01a4\220\u01b8\221\u0196" +
      "\222\u019f\223\u018b\224\u01b4\225\u01b3\226\u01c2\236\u01b2\237" +
      "\u01b9\240\u018c\246\u01a0\001\002\000\004\150\ufef6\001\ufef4" +
      "\000\002\001\ufef7\000\002\001\uff06\000\016\013\u0294\016" +
      "\u02ad\017\u02ae\105\u0296\106\u0295\233\u02ac\001\002\000\002" +
      "\001\ufe22\000\006\072\u02a4\213\u02a3\001\ufe1f\000\030\011" +
      "\173\013\063\020\137\075\014\112\177\115\072\117\057" +
      "\213\u014e\221\332\227\u0150\232\107\001\002\000\166\004" +
      "\155\006\117\007\010\010\065\011\173\012\u029a\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\010\013\u0294\105\u0296\106\u0295\001\002\000\002\001" +
      "\ufe21\000\076\034\305\110\u02a0\126\275\127\315\130\265" +
      "\147\271\151\264\152\306\153\266\154\277\155\307\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\244\263\001\002" +
      "\000\006\110\u029b\213\u029c\001\002\000\002\001\ufe1b\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\076\034\305\126\275\127\315\130\265\147\271\151" +
      "\264\152\306\153\266\154\277\155\307\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\214\u029e\243\274\244\263\001\002\000" +
      "\004\110\u029f\001\002\000\002\001\ufe1a\000\002\001\ufe1c" +
      "\000\004\110\u02a2\001\ufe57\000\002\001\ufe20\000\012\011" +
      "\173\013\u02a7\014\u02a9\117\057\001\002\000\006\011\173" +
      "\117\057\001\002\000\002\001\ufe1d\000\004\214\u02aa\001" +
      "\002\000\002\001\ufe17\000\002\001\ufe19\000\002\001\ufe18" +
      "\000\002\001\ufe1e\000\002\001\ufe25\000\002\001\ufe63\000" +
      "\002\001\ufe23\000\002\001\ufe24\000\010\011\173\117\057" +
      "\227\203\001\002\000\004\227\u02b1\001\002\000\022\011" +
      "\173\075\205\112\177\115\072\117\057\147\211\230\uff30" +
      "\240\207\001\uff27\000\004\230\u02b3\001\002\000\004\231" +
      "\222\001\uff1a\000\004\107\u02b5\001\002\000\002\001\uff97" +
      "\000\256\003\124\004\155\005\166\006\117\007\010\010" +
      "\065\011\035\013\063\015\101\020\137\021\022\022\130" +
      "\023\125\024\046\026\034\030\110\032\167\035\112\037" +
      "\141\043\056\044\127\045\075\046\116\050\150\051\012" +
      "\052\043\053\042\055\164\057\227\060\011\062\104\063" +
      "\160\064\032\065\060\066\033\067\153\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\107" +
      "\071\110\u02b7\112\177\113\136\114\041\115\072\116\025" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\150\007\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\044\222\064" +
      "\223\017\227\162\232\107\233\121\234\061\235\103\237" +
      "\126\241\123\246\067\001\002\000\002\001\uff60\000\074" +
      "\034\305\126\275\127\315\130\265\147\271\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\ufe10\000\014\034\305\172" +
      "\303\173\267\174\302\175\262\001\ufeae\000\002\001\ufed1" +
      "\000\166\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\242\u01d5\246" +
      "\067\001\uff24\000\004\230\u02bd\001\002\000\002\001\ufe83" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\002\000\076\034\305\036\u02c0\126\275\127\315\130\265" +
      "\147\271\151\264\152\306\153\266\154\277\155\307\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\244\263\001\002" +
      "\000\034\011\173\013\063\020\137\074\u02c5\075\014\112" +
      "\177\115\072\117\057\155\u02c4\213\u02c2\221\332\227\u0150" +
      "\232\107\001\002\000\006\073\u02cd\230\u02cc\001\002\000" +
      "\170\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\u015a\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\155\u0153\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\242\u0159" +
      "\246\067\001\ufe30\000\006\073\uff50\230\uff50\001\ufe57\000" +
      "\030\011\173\013\063\020\137\075\014\112\177\115\072" +
      "\117\057\213\u014e\221\332\227\u0150\232\107\001\002\000" +
      "\004\227\u02c6\001\002\000\170\004\155\006\117\007\010" +
      "\010\065\011\173\013\063\020\137\035\112\046\200\051" +
      "\012\052\043\063\160\064\032\065\060\074\u015a\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\112" +
      "\177\113\136\114\041\115\072\117\057\120\031\121\076" +
      "\122\052\123\133\124\115\131\070\155\u0153\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\242\u0159\246\067\001\ufe30\000\004\230" +
      "\u02c8\001\002\000\002\001\uff4e\000\006\073\uff4f\230\uff4f" +
      "\001\ufe57\000\004\214\u02cb\001\002\000\006\073\uff4d\230" +
      "\uff4d\001\ufe50\000\244\003\124\004\155\005\166\006\117" +
      "\007\010\010\065\011\035\013\063\015\101\020\137\021" +
      "\022\022\130\023\125\024\046\026\034\030\110\032\167" +
      "\035\112\037\141\043\056\044\127\045\075\046\200\050" +
      "\150\051\012\052\043\053\042\055\164\057\227\060\011" +
      "\062\104\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\107\071" +
      "\112\177\113\136\114\041\115\072\116\025\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\150\007" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\044\227\162\231\u02d0\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\034\011\173\013\063\020\137\074\u02c5\075\014\112" +
      "\177\115\072\117\057\155\u02c4\213\u02c2\221\332\227\u0150" +
      "\232\107\001\002\000\004\230\u02cf\001\002\000\244\003" +
      "\124\004\155\005\166\006\117\007\010\010\065\011\035" +
      "\013\063\015\101\020\137\021\022\022\130\023\125\024" +
      "\046\026\034\030\110\032\167\035\112\037\141\043\056" +
      "\044\127\045\075\046\200\050\150\051\012\052\043\053" +
      "\042\055\164\057\227\060\011\062\104\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\107\071\112\177\113\136\114\041" +
      "\115\072\116\025\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\150\007\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\044\227\162\231\u02d0\232\107\233\121\234\061\235" +
      "\103\241\123\246\067\001\002\000\002\001\uff97\000\002" +
      "\001\uff4a\000\002\001\uff7d\000\256\003\124\004\155\005" +
      "\166\006\117\007\010\010\065\011\035\013\063\015\101" +
      "\020\137\021\022\022\130\023\125\024\046\026\034\030" +
      "\110\031\u02d4\032\167\035\112\037\141\043\056\044\127" +
      "\045\075\046\116\050\150\051\012\052\043\053\042\055" +
      "\164\057\227\060\011\062\104\063\160\064\032\065\060" +
      "\066\033\067\153\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\107\071\112\177\113\136" +
      "\114\041\115\072\116\025\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\150\007\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\044\222\064\223\017\227\162\232\107\233" +
      "\121\234\061\235\103\237\126\241\123\246\067\001\002" +
      "\000\002\001\uff49\000\002\001\uff7e\000\002\001\uff15\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\076\034\305\110\u02d9\126\275\127\315\130\265\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\002\000" +
      "\002\001\uff14\000\164\004\155\006\117\007\010\010\065" +
      "\011\173\013\063\020\137\035\112\046\200\051\012\052" +
      "\043\063\160\064\032\065\060\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\112\177\113" +
      "\136\114\041\115\072\117\057\120\031\121\076\122\052" +
      "\123\133\124\115\131\070\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\176\227\162\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\ufe3c\000\014\011\173\013\063\107\344" +
      "\117\057\232\107\001\002\000\004\227\u02de\001\ufe58\000" +
      "\166\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\242\u01d5\246\067" +
      "\001\uff24\000\004\230\u02e0\001\002\000\002\001\ufe4a\000" +
      "\004\214\u02e2\001\002\000\002\001\ufe4d\000\076\034\305" +
      "\110\u02e4\126\275\127\315\130\265\147\271\151\264\152" +
      "\306\153\266\154\277\155\307\156\313\157\300\160\261" +
      "\161\276\162\312\163\311\164\272\165\310\166\304\167" +
      "\301\170\314\171\273\172\303\173\267\174\302\175\262" +
      "\200\270\243\274\244\263\001\002\000\002\001\ufe4b\000" +
      "\002\001\uffb4\000\010\107\u02e7\115\u0110\150\u02e8\001\002" +
      "\000\002\001\uffb4\000\002\001\uffb0\000\260\003\124\004" +
      "\155\005\166\006\117\007\010\010\065\011\035\013\063" +
      "\015\101\020\137\021\022\022\130\023\125\024\046\026" +
      "\034\030\110\032\167\035\112\037\141\043\056\044\127" +
      "\045\075\046\116\047\146\050\150\051\012\052\043\053" +
      "\042\055\164\057\027\060\011\062\104\063\160\064\032" +
      "\065\060\066\033\067\153\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\107\071\110\u02ea" +
      "\112\105\113\136\114\041\115\072\116\025\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\150\007" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\044\222\064\223\017\227" +
      "\162\232\107\233\121\234\061\235\103\237\126\241\123" +
      "\246\067\001\002\000\002\001\uffaf\000\260\003\124\004" +
      "\155\005\166\006\117\007\010\010\065\011\035\013\063" +
      "\015\101\020\137\021\022\022\130\023\125\024\046\026" +
      "\034\030\110\032\167\035\112\037\141\043\056\044\127" +
      "\045\075\046\116\047\146\050\150\051\012\052\043\053" +
      "\042\055\164\057\027\060\011\062\104\063\160\064\032" +
      "\065\060\066\033\067\153\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\107\071\110\u02ec" +
      "\112\105\113\136\114\041\115\072\116\025\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\150\007" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\044\222\064\223\017\227" +
      "\162\232\107\233\121\234\061\235\103\237\126\241\123" +
      "\246\067\001\002\000\002\001\uffae\000\030\011\173\013" +
      "\063\020\137\075\014\112\177\115\072\117\057\213\u014e" +
      "\221\332\227\u0150\232\107\001\002\000\002\001\uff69\000" +
      "\004\125\u02f1\001\ufe5e\000\006\125\uff67\230\uff67\001\ufe57" +
      "\000\030\011\173\013\063\020\137\075\014\112\177\115" +
      "\072\117\057\213\u014e\221\332\227\u0150\232\107\001\ufe5d" +
      "\000\004\230\u02f3\001\002\000\004\150\u02f4\001\002\000" +
      "\002\001\uff7f\000\002\001\uff68\000\016\013\u0294\016\u02ad" +
      "\017\u02ae\105\u0296\106\u0295\235\u02f7\001\002\000\002\001" +
      "\ufe62\000\004\227\u02fb\001\ufe72\000\004\227\u02fb\001\ufe72" +
      "\000\004\070\u02ff\001\uff59\000\166\004\155\006\117\007" +
      "\010\010\065\011\173\013\063\020\137\035\112\046\200" +
      "\051\012\052\043\063\160\064\032\065\060\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\112\177\113\136\114\041\115\072\117\057\120\031\121" +
      "\076\122\052\123\133\124\115\131\070\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\176\227\162\232\107\233\121\234\061\235" +
      "\103\241\123\242\u01d5\246\067\001\uff24\000\004\230\u02fd" +
      "\001\002\000\002\001\ufe71\000\002\001\ufed6\000\012\011" +
      "\173\112\u0238\115\u0236\117\057\001\002\000\004\071\u0302" +
      "\001\uff54\000\004\107\u0304\001\002\000\012\011\173\112" +
      "\u0238\115\u0236\117\057\001\002\000\004\125\u023d\001\uff53" +
      "\000\002\001\uff0e\000\026\057\u0246\061\u0244\110\u0306\116" +
      "\u0250\221\u0247\222\u024a\223\u024d\224\u024f\225\u0245\226\u0249" +
      "\001\ufeef\000\002\001\ufed8\000\002\001\uff58\000\002\001" +
      "\ufed7\000\002\001\ufe95\000\002\001\ufe93\000\074\034\305" +
      "\126\275\127\315\130\265\147\271\151\264\152\306\153" +
      "\266\154\277\155\307\156\313\157\300\160\261\161\276" +
      "\162\312\163\311\164\272\165\310\166\304\167\301\170" +
      "\314\171\273\172\303\173\267\174\302\175\262\200\270" +
      "\243\274\244\263\001\ufe13\000\004\150\u030d\001\002\000" +
      "\002\001\uff78\000\014\034\305\172\303\173\267\174\302" +
      "\175\262\001\ufead\000\004\115\u0110\001\uffb6\000\256\003" +
      "\124\004\155\005\166\006\117\007\010\010\065\011\035" +
      "\013\063\015\101\020\137\021\022\022\130\023\125\024" +
      "\046\026\034\030\110\032\167\035\112\037\141\043\056" +
      "\044\127\045\075\046\116\050\150\051\012\052\043\053" +
      "\042\055\164\057\227\060\011\062\104\063\160\064\032" +
      "\065\060\066\033\067\153\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\107\071\110\u0311" +
      "\112\177\113\136\114\041\115\072\116\025\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\150\007" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\044\222\064\223\017\227" +
      "\162\232\107\233\121\234\061\235\103\237\126\241\123" +
      "\246\067\001\002\000\002\001\uff93\000\066\034\305\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\ufe8e\000" +
      "\004\227\u0314\001\002\000\022\011\173\075\205\112\177" +
      "\115\072\117\057\147\211\230\uff30\240\207\001\uff27\000" +
      "\004\230\u0316\001\002\000\004\231\222\001\uff1a\000\004" +
      "\073\u0318\001\002\000\164\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\170\114\171\074\176\156" +
      "\177\016\201\054\202\163\203\030\204\144\205\040\206" +
      "\135\207\100\210\145\211\077\212\037\213\053\215\102" +
      "\221\176\227\162\232\107\233\121\234\061\235\103\241" +
      "\123\246\067\001\002\000\050\034\305\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\243\274\001\ufe8b\000\002\001\uff5c\000" +
      "\220\004\u01c6\005\u01cf\011\173\013\063\022\u01bc\023\u01ba" +
      "\024\u0197\025\u019b\026\u0192\027\u01af\030\u01ac\031\u0198\032" +
      "\u01ce\033\u01b5\034\u019a\035\u01ae\036\u0193\037\u01c0\040\u01ab" +
      "\041\u0187\042\u019d\043\u019c\044\u01bb\045\u01a6\046\u01b1\047" +
      "\u01c1\050\u01c3\051\u0189\053\u0194\054\u01cb\055\u01cd\056\u019e" +
      "\057\u018e\060\u0188\061\u01cc\062\u01a8\063\u01c9\064\u0190\066" +
      "\u0191\067\u01c5\070\u018d\071\u01ad\074\u01ca\075\u018a\107\u01a2" +
      "\112\u01a9\117\057\120\u018f\121\u01a5\122\u0199\123\u01be\124" +
      "\u01b0\126\u01c7\127\u01c8\130\u01c4\131\u01a1\215\u01a7\216\u01a3" +
      "\217\u01a4\220\u01b8\221\u0196\222\u019f\223\u018b\224\u01b4\225" +
      "\u01b3\226\u01c2\232\107\236\u01b2\237\u01b9\240\u018c\246\u01a0" +
      "\001\002\000\004\227\ufe3a\001\ufe47\000\004\227\u031f\001" +
      "\002\000\004\227\ufe38\001\ufe45\000\166\004\155\006\117" +
      "\007\010\010\065\011\173\013\063\020\137\035\112\046" +
      "\200\051\012\052\043\063\160\064\032\065\060\074\161" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\112\177\113\136\114\041\115\072\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\242\u01d5\246\067\001\uff24\000\004\230" +
      "\u0321\001\002\000\002\001\ufe82\000\004\234\u0325\001\002" +
      "\000\014\013\u0294\016\u02ad\017\u02ae\105\u0296\106\u0295\001" +
      "\ufe73\000\010\013\u0294\105\u0296\106\u0295\001\ufe74\000\002" +
      "\001\ufe8f\000\166\004\155\006\117\007\010\010\065\011" +
      "\173\013\063\020\137\035\112\046\200\051\012\052\043" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\112\177\113\136" +
      "\114\041\115\072\117\057\120\031\121\076\122\052\123" +
      "\133\124\115\131\070\170\114\171\074\176\156\177\016" +
      "\201\054\202\163\203\030\204\144\205\040\206\135\207" +
      "\100\210\145\211\077\212\037\213\053\215\102\221\176" +
      "\227\162\232\107\233\121\234\061\235\103\241\123\242" +
      "\u01d5\246\067\001\uff24\000\004\230\u0328\001\002\000\002" +
      "\001\ufe0f\000\002\001\uff8c\000\076\034\305\126\275\127" +
      "\315\130\265\147\271\150\u032b\151\264\152\306\153\266" +
      "\154\277\155\307\156\313\157\300\160\261\161\276\162" +
      "\312\163\311\164\272\165\310\166\304\167\301\170\314" +
      "\171\273\172\303\173\267\174\302\175\262\200\270\243" +
      "\274\244\263\001\002\000\002\001\uff8b\000\012\072\ufe57" +
      "\107\ufe57\111\ufe57\213\ufe57\001\ufec2\000\004\214\u032e\001" +
      "\002\000\004\132\u032f\001\ufe50\000\164\004\155\006\117" +
      "\007\010\010\065\011\173\013\063\020\137\035\112\046" +
      "\200\051\012\052\043\063\160\064\032\065\060\074\161" +
      "\075\014\076\021\077\047\100\051\101\142\102\006\103" +
      "\036\112\177\113\136\114\041\115\072\117\057\120\031" +
      "\121\076\122\052\123\133\124\115\131\070\170\114\171" +
      "\074\176\156\177\016\201\054\202\163\203\030\204\144" +
      "\205\040\206\135\207\100\210\145\211\077\212\037\213" +
      "\053\215\102\221\176\227\162\232\107\233\121\234\061" +
      "\235\103\241\123\246\067\001\002\000\066\034\305\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\ufed4\000" +
      "\164\004\155\006\117\007\010\010\065\011\173\013\063" +
      "\020\137\035\112\046\200\051\012\052\043\063\160\064" +
      "\032\065\060\074\161\075\014\076\021\077\047\100\051" +
      "\101\142\102\006\103\036\112\177\113\136\114\041\115" +
      "\072\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\170\114\171\074\176\156\177\016\201\054\202" +
      "\163\203\030\204\144\205\040\206\135\207\100\210\145" +
      "\211\077\212\037\213\053\215\102\221\176\227\162\232" +
      "\107\233\121\234\061\235\103\241\123\246\067\001\002" +
      "\000\076\034\305\126\275\127\315\130\265\147\271\151" +
      "\264\152\306\153\266\154\277\155\307\156\313\157\300" +
      "\160\261\161\276\162\312\163\311\164\272\165\310\166" +
      "\304\167\301\170\314\171\273\172\303\173\267\174\302" +
      "\175\262\200\270\230\u0333\243\274\244\263\001\002\000" +
      "\002\001\ufe12\000\004\070\u02ff\001\uff59\000\004\071\u0302" +
      "\001\uff54\000\004\107\u0337\001\002\000\002\001\uff0e\000" +
      "\026\057\u0246\061\u0244\110\u0339\116\u0250\221\u0247\222\u024a" +
      "\223\u024d\224\u024f\225\u0245\226\u0249\001\ufeef\000\002\001" +
      "\uff5f\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\076\034\305\126\275\127\315\130\265\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\230\u033c\243\274\244\263\001" +
      "\002\000\244\003\124\004\155\005\166\006\117\007\010" +
      "\010\065\011\035\013\063\015\101\020\137\021\022\022" +
      "\130\023\125\024\046\026\034\030\110\032\167\035\112" +
      "\037\141\043\056\044\127\045\075\046\200\050\150\051" +
      "\012\052\043\053\042\055\164\057\227\060\011\062\104" +
      "\063\160\064\032\065\060\074\161\075\014\076\021\077" +
      "\047\100\051\101\142\102\006\103\036\107\071\112\177" +
      "\113\136\114\041\115\072\116\025\117\057\120\031\121" +
      "\076\122\052\123\133\124\115\131\070\150\007\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\044\227\162\231\u033d\232\107\233" +
      "\121\234\061\235\103\241\123\246\067\001\002\000\002" +
      "\001\uff97\000\002\001\uff90\000\002\001\uff3b\000\256\003" +
      "\124\004\155\005\166\006\117\007\010\010\065\011\035" +
      "\013\063\015\101\020\137\021\022\022\130\023\125\024" +
      "\046\025\u0341\026\034\030\110\032\167\035\112\037\141" +
      "\043\056\044\127\045\075\046\116\050\150\051\012\052" +
      "\043\053\042\055\164\057\227\060\011\062\104\063\160" +
      "\064\032\065\060\066\033\067\153\074\161\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\107\071" +
      "\112\177\113\136\114\041\115\072\116\025\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\150\007" +
      "\170\114\171\074\176\156\177\016\201\054\202\163\203" +
      "\030\204\144\205\040\206\135\207\100\210\145\211\077" +
      "\212\037\213\053\215\102\221\044\222\064\223\017\227" +
      "\162\232\107\233\121\234\061\235\103\237\126\241\123" +
      "\246\067\001\002\000\002\001\uff3a\000\004\132\u0348\001" +
      "\uff11\000\006\125\u0345\150\u0346\001\002\000\002\001\uff13" +
      "\000\004\013\u0342\001\002\000\002\001\uff84\000\002\001" +
      "\uff12\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\074\034\305\126\275\127\315\130\265\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\243\274\244\263\001\uff10\000" +
      "\050\034\305\156\313\157\300\160\261\161\276\162\312" +
      "\163\311\164\272\165\310\166\304\167\301\170\314\171" +
      "\273\172\303\173\267\174\302\175\262\200\270\243\274" +
      "\001\ufe07\000\002\001\uff97\000\256\003\124\004\155\005" +
      "\166\006\117\007\010\010\065\011\035\013\063\015\101" +
      "\020\137\021\022\022\130\023\125\024\046\026\034\030" +
      "\110\032\167\035\112\037\141\043\056\044\127\045\075" +
      "\046\116\050\150\051\012\052\043\053\042\055\164\057" +
      "\227\060\011\062\104\063\160\064\032\065\060\066\033" +
      "\067\153\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\107\071\110\u034d\112\177\113\136" +
      "\114\041\115\072\116\025\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\150\007\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\044\222\064\223\017\227\162\232\107\233" +
      "\121\234\061\235\103\237\126\241\123\246\067\001\002" +
      "\000\004\054\u034e\001\uff72\000\004\227\u0359\001\002\000" +
      "\002\001\uff71\000\004\056\u0355\001\uff6b\000\004\054\u034e" +
      "\001\uff73\000\002\001\uff70\000\002\001\uff6c\000\002\001" +
      "\uff7a\000\004\107\u0356\001\002\000\002\001\uff97\000\256" +
      "\003\124\004\155\005\166\006\117\007\010\010\065\011" +
      "\035\013\063\015\101\020\137\021\022\022\130\023\125" +
      "\024\046\026\034\030\110\032\167\035\112\037\141\043" +
      "\056\044\127\045\075\046\116\050\150\051\012\052\043" +
      "\053\042\055\164\057\227\060\011\062\104\063\160\064" +
      "\032\065\060\066\033\067\153\074\161\075\014\076\021" +
      "\077\047\100\051\101\142\102\006\103\036\107\071\110" +
      "\u0358\112\177\113\136\114\041\115\072\116\025\117\057" +
      "\120\031\121\076\122\052\123\133\124\115\131\070\150" +
      "\007\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\044\222\064\223\017" +
      "\227\162\232\107\233\121\234\061\235\103\237\126\241" +
      "\123\246\067\001\002\000\002\001\uff6a\000\012\011\173" +
      "\112\177\115\072\117\057\001\002\000\002\001\uff6e\000" +
      "\006\013\u035c\153\u035d\001\002\000\004\230\u035f\001\002" +
      "\000\012\011\173\112\177\115\072\117\057\001\002\000" +
      "\002\001\uff6d\000\004\107\u0360\001\002\000\002\001\uff97" +
      "\000\256\003\124\004\155\005\166\006\117\007\010\010" +
      "\065\011\035\013\063\015\101\020\137\021\022\022\130" +
      "\023\125\024\046\026\034\030\110\032\167\035\112\037" +
      "\141\043\056\044\127\045\075\046\116\050\150\051\012" +
      "\052\043\053\042\055\164\057\227\060\011\062\104\063" +
      "\160\064\032\065\060\066\033\067\153\074\161\075\014" +
      "\076\021\077\047\100\051\101\142\102\006\103\036\107" +
      "\071\110\u0362\112\177\113\136\114\041\115\072\116\025" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\150\007\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\044\222\064" +
      "\223\017\227\162\232\107\233\121\234\061\235\103\237" +
      "\126\241\123\246\067\001\002\000\002\001\uff6f\000\002" +
      "\001\ufe97\000\002\001\ufe91\000\016\013\u0294\016\u02ad\017" +
      "\u02ae\104\u0369\105\u0296\106\u0295\001\002\000\002\001\ufe64" +
      "\000\012\013\u0294\104\u0368\105\u0296\106\u0295\001\002\000" +
      "\002\001\ufe65\000\002\001\ufe61\000\002\001\uff77\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\ufedc\000" +
      "\074\034\305\126\275\127\315\130\265\147\271\151\264" +
      "\152\306\153\266\154\277\155\307\156\313\157\300\160" +
      "\261\161\276\162\312\163\311\164\272\165\310\166\304" +
      "\167\301\170\314\171\273\172\303\173\267\174\302\175" +
      "\262\200\270\243\274\244\263\001\ufed9\000\004\150\u0371" +
      "\001\002\000\004\125\u036f\001\ufedb\000\164\004\155\006" +
      "\117\007\010\010\065\011\173\013\063\020\137\035\112" +
      "\046\200\051\012\052\043\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\112\177\113\136\114\041\115\072\117\057\120" +
      "\031\121\076\122\052\123\133\124\115\131\070\170\114" +
      "\171\074\176\156\177\016\201\054\202\163\203\030\204" +
      "\144\205\040\206\135\207\100\210\145\211\077\212\037" +
      "\213\053\215\102\221\176\227\162\232\107\233\121\234" +
      "\061\235\103\241\123\246\067\001\002\000\074\034\305" +
      "\126\275\127\315\130\265\147\271\151\264\152\306\153" +
      "\266\154\277\155\307\156\313\157\300\160\261\161\276" +
      "\162\312\163\311\164\272\165\310\166\304\167\301\170" +
      "\314\171\273\172\303\173\267\174\302\175\262\200\270" +
      "\243\274\244\263\001\ufeda\000\164\004\155\006\117\007" +
      "\010\010\065\011\173\013\063\020\137\035\112\046\200" +
      "\051\012\052\043\063\160\064\032\065\060\074\161\075" +
      "\014\076\021\077\047\100\051\101\142\102\006\103\036" +
      "\112\177\113\136\114\041\115\072\117\057\120\031\121" +
      "\076\122\052\123\133\124\115\131\070\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\176\227\162\232\107\233\121\234\061\235" +
      "\103\241\123\246\067\001\ufedc\000\004\150\u0373\001\002" +
      "\000\164\004\155\006\117\007\010\010\065\011\173\013" +
      "\063\020\137\035\112\046\200\051\012\052\043\063\160" +
      "\064\032\065\060\074\161\075\014\076\021\077\047\100" +
      "\051\101\142\102\006\103\036\112\177\113\136\114\041" +
      "\115\072\117\057\120\031\121\076\122\052\123\133\124" +
      "\115\131\070\170\114\171\074\176\156\177\016\201\054" +
      "\202\163\203\030\204\144\205\040\206\135\207\100\210" +
      "\145\211\077\212\037\213\053\215\102\221\176\227\162" +
      "\232\107\233\121\234\061\235\103\241\123\246\067\001" +
      "\ufedc\000\004\230\u0375\001\002\000\244\003\124\004\155" +
      "\005\166\006\117\007\010\010\065\011\035\013\063\015" +
      "\101\020\137\021\022\022\130\023\125\024\046\026\034" +
      "\030\110\032\167\035\112\037\141\043\056\044\127\045" +
      "\075\046\200\050\150\051\012\052\043\053\042\055\164" +
      "\057\227\060\011\062\104\063\160\064\032\065\060\074" +
      "\161\075\014\076\021\077\047\100\051\101\142\102\006" +
      "\103\036\107\071\112\177\113\136\114\041\115\072\116" +
      "\025\117\057\120\031\121\076\122\052\123\133\124\115" +
      "\131\070\150\007\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\044\227" +
      "\162\231\u0377\232\107\233\121\234\061\235\103\241\123" +
      "\246\067\001\002\000\002\001\uff8e\000\002\001\uff97\000" +
      "\002\001\uff4c\000\256\003\124\004\155\005\166\006\117" +
      "\007\010\010\065\011\035\013\063\015\101\020\137\021" +
      "\022\022\130\023\125\024\046\026\034\027\u037a\030\110" +
      "\032\167\035\112\037\141\043\056\044\127\045\075\046" +
      "\116\050\150\051\012\052\043\053\042\055\164\057\227" +
      "\060\011\062\104\063\160\064\032\065\060\066\033\067" +
      "\153\074\161\075\014\076\021\077\047\100\051\101\142" +
      "\102\006\103\036\107\071\112\177\113\136\114\041\115" +
      "\072\116\025\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\150\007\170\114\171\074\176\156\177" +
      "\016\201\054\202\163\203\030\204\144\205\040\206\135" +
      "\207\100\210\145\211\077\212\037\213\053\215\102\221" +
      "\044\222\064\223\017\227\162\232\107\233\121\234\061" +
      "\235\103\237\126\241\123\246\067\001\002\000\002\001" +
      "\uff4b\000\164\004\155\006\117\007\010\010\065\011\173" +
      "\013\063\020\137\035\112\046\200\051\012\052\043\063" +
      "\160\064\032\065\060\074\161\075\014\076\021\077\047" +
      "\100\051\101\142\102\006\103\036\112\177\113\136\114" +
      "\041\115\072\117\057\120\031\121\076\122\052\123\133" +
      "\124\115\131\070\170\114\171\074\176\156\177\016\201" +
      "\054\202\163\203\030\204\144\205\040\206\135\207\100" +
      "\210\145\211\077\212\037\213\053\215\102\221\176\227" +
      "\162\232\107\233\121\234\061\235\103\241\123\246\067" +
      "\001\002\000\076\034\305\126\275\127\315\130\265\147" +
      "\271\151\264\152\306\153\266\154\277\155\307\156\313" +
      "\157\300\160\261\161\276\162\312\163\311\164\272\165" +
      "\310\166\304\167\301\170\314\171\273\172\303\173\267" +
      "\174\302\175\262\200\270\230\u037d\243\274\244\263\001" +
      "\002\000\002\001\ufe15\000\074\034\305\126\275\127\315" +
      "\130\265\147\271\151\264\152\306\153\266\154\277\155" +
      "\307\156\313\157\300\160\261\161\276\162\312\163\311" +
      "\164\272\165\310\166\304\167\301\170\314\171\273\172" +
      "\303\173\267\174\302\175\262\200\270\243\274\244\263" +
      "\001\ufe14\000\002\001\ufe99\000\006\036\u038e\115\u03aa\001" +
      "\uff9e\000\004\150\u03a9\001\002\000\004\107\u039f\001\002" +
      "\000\002\001\uffa8\000\010\011\173\115\u0386\117\057\001" +
      "\002\000\002\001\uff9f\000\006\011\173\117\057\001\002" +
      "\000\002\001\uffa7\000\006\125\u0389\150\u038a\001\002\000" +
      "\010\011\173\115\u038c\117\057\001\002\000\002\001\uffab" +
      "\000\002\001\uffa0\000\006\011\173\117\057\001\002\000" +
      "\006\036\u038e\115\u0110\001\uff9e\000\004\011\u038f\001\002" +
      "\000\002\001\uff9d\000\006\036\u0391\115\u0110\001\uff9c\000" +
      "\004\011\u0392\001\002\000\002\001\uff9b\000\006\036\u0391" +
      "\115\u0394\001\uff9c\000\006\011\173\117\057\001\uff99\000" +
      "\004\107\u039a\001\002\000\004\150\u0399\001\002\000\006" +
      "\125\u0389\150\u0398\001\002\000\002\001\uffaa\000\002\001" +
      "\uffac\000\010\011\173\115\u038c\117\057\001\002\000\004" +
      "\125\u039c\001\ufe5e\000\010\011\173\115\u038c\117\057\001" +
      "\ufe5d\000\004\110\u039e\001\002\000\002\001\uffa6\000\014" +
      "\011\173\046\u0383\047\u0387\115\u038c\117\057\001\002\000" +
      "\004\125\u03a5\001\ufe5e\000\010\011\173\115\u038c\117\057" +
      "\001\002\000\002\001\uffa2\000\002\001\uffa3\000\002\001" +
      "\uffa1\000\014\011\173\046\u0383\047\u0387\115\u038c\117\057" +
      "\001\ufe5d\000\004\110\u03a7\001\002\000\002\001\uffa5\000" +
      "\002\001\uffa4\000\002\001\uffad\000\006\011\173\117\057" +
      "\001\uff9a\000\002\001\uff75\000\006\125\u0227\150\u03ad\001" +
      "\002\000\002\001\uff74\000\002\001\uff81\000\002\001\uff5b" +
      "\000\002\001\ufeab\000\170\004\155\006\117\007\010\010" +
      "\065\011\173\013\063\020\137\035\112\046\200\051\012" +
      "\052\043\063\160\064\032\065\060\074\u015a\075\014\076" +
      "\021\077\047\100\051\101\142\102\006\103\036\112\177" +
      "\113\136\114\041\115\072\117\057\120\031\121\076\122" +
      "\052\123\133\124\115\131\070\155\u0153\170\114\171\074" +
      "\176\156\177\016\201\054\202\163\203\030\204\144\205" +
      "\040\206\135\207\100\210\145\211\077\212\037\213\053" +
      "\215\102\221\176\227\162\232\107\233\121\234\061\235" +
      "\103\241\123\242\u0159\246\067\001\ufe30\000\004\230\u03b3" +
      "\001\002\000\002\001\ufe51\000\052\034\305\073\u03b5\156" +
      "\313\157\300\160\261\161\276\162\312\163\311\164\272" +
      "\165\310\166\304\167\301\170\314\171\273\172\303\173" +
      "\267\174\302\175\262\200\270\243\274\001\ufe09\000\164" +
      "\004\155\006\117\007\010\010\065\011\173\013\063\020" +
      "\137\035\112\046\200\051\012\052\043\063\160\064\032" +
      "\065\060\074\161\075\014\076\021\077\047\100\051\101" +
      "\142\102\006\103\036\112\177\113\136\114\041\115\072" +
      "\117\057\120\031\121\076\122\052\123\133\124\115\131" +
      "\070\170\114\171\074\176\156\177\016\201\054\202\163" +
      "\203\030\204\144\205\040\206\135\207\100\210\145\211" +
      "\077\212\037\213\053\215\102\221\176\227\162\232\107" +
      "\233\121\234\061\235\103\241\123\246\067\001\002\000" +
      "\050\034\305\156\313\157\300\160\261\161\276\162\312" +
      "\163\311\164\272\165\310\166\304\167\301\170\314\171" +
      "\273\172\303\173\267\174\302\175\262\200\270\243\274" +
      "\001\ufe08\000\002\001\uff17\000\006\125\u03b9\150\u03ba\001" +
      "\002\000\006\013\063\232\107\001\002\000\002\001\uff85" +
      "\000\002\001\uff18\000\002\001\000" });
  
    /** 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\u03ba\000\006\002\003\017\004\001\001\000\002\001" +
      "\001\000\072\006\153\020\164\021\156\055\130\067\150" +
      "\070\044\073\014\075\017\076\151\114\072\115\133\116" +
      "\121\120\061\121\110\135\112\136\131\137\023\140\117" +
      "\141\105\142\137\143\054\150\142\151\025\152\047\160" +
      "\065\161\022\201\012\205\146\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\006\054\u03b7\055" +
      "\u03b6\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u03b3\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\002\001\001\000" +
      "\002\001\001\000\002\001\001\000\052\006\153\055\130" +
      "\067\150\070\044\073\014\075\u03af\076\151\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\002\001\001\000\002\001\001\000\002\001\001\000\054" +
      "\006\153\055\130\063\u03ab\067\150\070\044\073\014\075" +
      "\u0224\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\002\001\001" +
      "\000\054\006\153\021\u03aa\055\130\067\150\070\044\073" +
      "\014\075\017\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\022" +
      "\006\u037f\007\u0384\010\u0381\011\u0380\015\u0387\016\u0383\026" +
      "\233\115\133\001\001\000\052\006\153\055\130\067\150" +
      "\070\044\073\014\075\u037e\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u037d\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\002\001\001\000\006\110\u0364\112\u0292\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u0363\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\052\006\153\055\130\067\150" +
      "\070\044\073\014\075\u0362\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\002\001" +
      "\001\000\002\001\001\000\052\006\153\055\130\067\150" +
      "\070\044\073\014\075\u0349\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\006\056" +
      "\u0342\057\u0343\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\062\006\153\055\130\067\150\070\044" +
      "\073\014\075\u0153\076\151\104\u0154\105\u0156\106\u032c\107" +
      "\u0155\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\036\006\153\055\130\070\044\076\151" +
      "\115\133\120\061\121\110\137\u032b\140\117\141\105\142" +
      "\137\143\u014c\160\u014b\161\022\001\001\000\002\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u0329\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\002\001\001" +
      "\000\010\110\u0322\111\u0321\112\u0292\001\001\000\002\001" +
      "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
      "\000\002\001\001\000\004\062\u0312\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u0311\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\004\022\u030f\001\001\000\006\006\u030e\115" +
      "\133\001\001\000\002\001\001\000\052\006\153\055\130" +
      "\067\150\070\044\073\014\075\u030d\076\151\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\002\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u030a\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\052\006\153\055" +
      "\130\067\150\070\044\073\014\075\u0309\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u0308\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\020\006\153" +
      "\055\332\115\133\120\330\121\326\162\327\164\u02f7\001" +
      "\001\000\006\110\u02f5\112\u0292\001\001\000\002\001\001" +
      "\000\006\006\u02e5\115\133\001\001\000\002\001\001\000" +
      "\004\055\u02d5\001\001\000\002\001\001\000\002\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u02b9\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\u02b8\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\052\006\153\055\130\067\150\070\044\073\014" +
      "\075\u02b7\076\151\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\004\062\u02ae\001\001\000" +
      "\002\001\001\000\002\001\001\000\006\110\u0291\112\u0292" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\054\006\153\021\u022c\055\130\067\150\070\044" +
      "\073\014\075\017\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\002\001\001\000" +
      "\052\006\153\055\130\067\150\070\044\073\014\075\u022a" +
      "\076\151\114\072\115\133\120\061\121\110\137\023\140" +
      "\117\141\105\142\137\143\054\160\065\161\022\201\012" +
      "\205\146\001\001\000\054\006\153\055\130\063\u0225\067" +
      "\150\070\044\073\014\075\u0224\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\002" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0223\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\002" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\u0222\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\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\052\006\153\055\130\067\150" +
      "\070\044\073\014\075\u0205\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u0204\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\006\033\u0202\115\171\001\001\000\002\001" +
      "\001\000\052\006\153\055\130\067\u01df\070\044\073\014" +
      "\075\u01dd\076\151\114\072\115\133\120\061\121\110\137" +
      "\u01de\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\002\001" +
      "\001\000\002\001\001\000\002\001\001\000\004\071\u0181" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\u017f\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0173\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\036" +
      "\006\153\055\130\070\044\076\151\115\133\120\061\121" +
      "\110\137\u014e\140\117\141\105\142\137\143\u014c\160\u014b" +
      "\161\022\001\001\000\052\006\153\055\130\067\150\070" +
      "\044\073\014\075\u0149\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\006\033\170\115" +
      "\171\001\001\000\002\001\001\000\002\001\001\000\002" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\174\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\004\062\201\001\001\000" +
      "\002\001\001\000\002\001\001\000\024\006\153\044\214" +
      "\050\205\051\212\115\133\121\203\122\211\123\213\156" +
      "\207\001\001\000\002\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\012\006" +
      "\153\115\133\121\203\122\252\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\004\045\217\001\001\000\002\001\001\000\004\124\220" +
      "\001\001\000\002\001\001\000\014\006\153\115\133\121" +
      "\203\122\211\123\222\001\001\000\002\001\001\000\004" +
      "\022\224\001\001\000\072\006\153\021\232\023\225\055" +
      "\130\067\150\070\044\073\014\075\017\076\151\114\072" +
      "\115\133\116\121\120\061\121\110\135\227\136\231\137" +
      "\023\140\117\141\105\142\137\143\054\150\142\151\025" +
      "\152\047\160\065\161\022\201\012\205\146\001\001\000" +
      "\002\001\001\000\004\026\233\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\006\046" +
      "\244\047\243\001\001\000\002\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\004\047\250\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\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\257\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\002\001\001\000" +
      "\052\006\153\055\130\067\150\070\044\073\014\075\u0104" +
      "\076\151\114\072\115\133\120\061\121\110\137\023\140" +
      "\117\141\105\142\137\143\054\160\065\161\022\201\012" +
      "\205\146\001\001\000\052\006\153\055\130\067\150\070" +
      "\044\073\014\075\u0103\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\u0102\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\052\006\153\055\130\067\150\070\044\073\014" +
      "\075\u0101\076\151\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0100\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\052" +
      "\006\153\055\130\067\150\070\044\073\014\075\377\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\376\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\052\006\153\055" +
      "\130\067\150\070\044\073\014\075\375\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\370\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\052\006\153\055\130\067\150" +
      "\070\044\073\014\075\367\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\366\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\365\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\052\006\153\055\130" +
      "\067\150\070\044\073\014\075\364\076\151\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\052\006\153\055\130\067\150\070\044\073\014\075\363" +
      "\076\151\114\072\115\133\120\061\121\110\137\023\140" +
      "\117\141\105\142\137\143\054\160\065\161\022\201\012" +
      "\205\146\001\001\000\052\006\153\055\130\067\150\070" +
      "\044\073\014\075\362\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\361\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\052\006\153\055\130\067\150\070\044\073\014" +
      "\075\360\076\151\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\357\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\052" +
      "\006\153\055\130\067\150\070\044\073\014\075\356\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\355\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\020\006\153\055" +
      "\332\115\133\120\330\121\326\162\327\164\325\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\324\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\052\006\153\055\130\067\150" +
      "\070\044\073\014\075\323\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\322\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\321\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\052\006\153\055\130" +
      "\067\150\070\044\073\014\075\320\076\151\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\052\006\153\055\130\067\150\070\044\073\014\075\317" +
      "\076\151\114\072\115\133\120\061\121\110\137\023\140" +
      "\117\141\105\142\137\143\054\160\065\161\022\201\012" +
      "\205\146\001\001\000\052\006\153\055\130\067\150\070" +
      "\044\073\014\075\316\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\315\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\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\004\055\334\001\001\000\002" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\353\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\054\006\153\055\130" +
      "\067\150\070\044\073\014\075\350\076\151\077\351\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\004\055\347\001\001\000\010\055\341\101\342" +
      "\115\344\001\001\000\002\001\001\000\002\001\001\000" +
      "\052\006\153\055\130\067\150\070\044\073\014\075\345" +
      "\076\151\114\072\115\133\120\061\121\110\137\023\140" +
      "\117\141\105\142\137\143\054\160\065\161\022\201\012" +
      "\205\146\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\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\372\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\374\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\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\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u0108\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\002\001\001\000" +
      "\002\001\001\000\002\001\001\000\020\006\153\051\u010c" +
      "\115\133\121\203\122\211\123\213\156\207\001\001\000" +
      "\002\001\001\000\006\006\u010e\115\133\001\001\000\002" +
      "\001\001\000\004\115\u0110\001\001\000\002\001\001\000" +
      "\004\062\u011c\001\001\000\004\062\u0113\001\001\000\002" +
      "\001\001\000\024\006\153\044\u0115\050\205\051\212\115" +
      "\133\121\203\122\211\123\213\156\207\001\001\000\002" +
      "\001\001\000\004\045\u0117\001\001\000\004\124\u0118\001" +
      "\001\000\002\001\001\000\004\022\u011a\001\001\000\072" +
      "\006\153\021\232\023\225\055\130\067\150\070\044\073" +
      "\014\075\017\076\151\114\072\115\133\116\121\120\061" +
      "\121\110\135\227\136\231\137\023\140\117\141\105\142" +
      "\137\143\054\150\142\151\025\152\047\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\002\001" +
      "\001\000\024\006\153\044\u011e\050\205\051\212\115\133" +
      "\121\203\122\211\123\213\156\207\001\001\000\002\001" +
      "\001\000\004\124\u0120\001\001\000\002\001\001\000\052" +
      "\006\153\055\130\067\150\070\044\073\014\075\u0122\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\002\001\001\000\056\006\153\021\u012a" +
      "\032\u0128\055\130\067\150\070\044\073\014\075\017\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\004\115\u0125\001\001\000\002\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u0127\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\002\001\001" +
      "\000\004\022\u012b\001\001\000\002\001\001\000\072\006" +
      "\153\021\232\023\225\055\130\067\150\070\044\073\014" +
      "\075\017\076\151\114\072\115\133\116\121\120\061\121" +
      "\110\135\227\136\231\137\023\140\117\141\105\142\137" +
      "\143\054\150\142\151\025\152\047\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\u012e\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\002\001\001\000\054\006\153\021\u0131\055\130" +
      "\067\150\070\044\073\014\075\017\076\151\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\004\022\u013b\001\001\000\004\040\u0132\001\001\000\004" +
      "\042\u0133\001\001\000\002\001\001\000\054\006\153\021" +
      "\u013a\055\130\067\150\070\044\073\014\075\017\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0137\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\002" +
      "\001\001\000\054\006\153\021\u0139\055\130\067\150\070" +
      "\044\073\014\075\017\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\002\001\001" +
      "\000\002\001\001\000\074\006\153\021\232\023\225\041" +
      "\u013c\055\130\067\150\070\044\073\014\075\017\076\151" +
      "\114\072\115\133\116\121\120\061\121\110\135\227\136" +
      "\231\137\023\140\117\141\105\142\137\143\054\150\142" +
      "\151\025\152\047\160\065\161\022\201\012\205\146\001" +
      "\001\000\004\043\u013d\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0141\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\002" +
      "\001\001\000\002\001\001\000\004\022\u0144\001\001\000" +
      "\072\006\153\021\232\023\225\055\130\067\150\070\044" +
      "\073\014\075\017\076\151\114\072\115\133\116\121\120" +
      "\061\121\110\135\227\136\231\137\023\140\117\141\105" +
      "\142\137\143\054\150\142\151\025\152\047\160\065\161" +
      "\022\201\012\205\146\001\001\000\004\022\u0146\001\001" +
      "\000\072\006\153\021\232\023\225\055\130\067\150\070" +
      "\044\073\014\075\017\076\151\114\072\115\133\116\121" +
      "\120\061\121\110\135\227\136\231\137\023\140\117\141" +
      "\105\142\137\143\054\150\142\151\025\152\047\160\065" +
      "\161\022\201\012\205\146\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\062\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0153\076\151\104\u0154\105\u0156" +
      "\106\u0157\107\u0155\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u0150\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\002\001\001\000\036\006" +
      "\153\055\130\070\044\076\151\115\133\120\061\121\110" +
      "\137\u016f\140\117\141\105\142\137\143\u014c\160\u014b\161" +
      "\022\001\001\000\002\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u0163\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\062\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0153\076\151\102\u015d\103\u015c" +
      "\104\u015b\105\u0156\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\002\001" +
      "\001\000\002\001\001\000\002\001\001\000\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\u0160\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\002\001\001\000\056\006\153\055\130\067\150" +
      "\070\044\073\014\075\u0153\076\151\104\u0162\105\u0156\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
      "\000\056\006\153\055\130\067\150\070\044\073\014\075" +
      "\u0153\076\151\104\u0166\105\u0156\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\002\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u0169\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\036\006\153\055\130\070\044" +
      "\076\151\115\133\120\061\121\110\137\u016e\140\117\141" +
      "\105\142\137\143\u014c\160\u014b\161\022\001\001\000\002" +
      "\001\001\000\002\001\001\000\062\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0153\076\151\102\u016c\103\u015c" +
      "\104\u015b\105\u0156\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\002\001" +
      "\001\000\002\001\001\000\002\001\001\000\054\006\153" +
      "\055\130\067\150\070\044\073\014\075\350\076\151\077" +
      "\u0171\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\002\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\062\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0153\076\151\102\u0176\103\u015c" +
      "\104\u015b\105\u0156\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\002\001" +
      "\001\000\040\006\153\055\130\070\044\076\151\115\133" +
      "\120\061\121\110\137\u0179\140\117\141\105\142\137\143" +
      "\u014c\160\u014b\161\022\163\u017a\001\001\000\002\001\001" +
      "\000\004\074\u017c\001\001\000\036\006\153\055\130\070" +
      "\044\076\151\115\133\120\061\121\110\137\u017e\140\117" +
      "\141\105\142\137\143\u014c\160\u014b\161\022\001\001\000" +
      "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\u0182\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\016\003" +
      "\u01b5\004\u0194\005\u01a9\055\u01bc\100\u01b6\115\u01be\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\002\001\001\000\002\001\001" +
      "\000\002\001\001\000\052\006\153\055\130\067\150\070" +
      "\044\073\014\075\u01da\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\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\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\060\006\153\052\u01d0" +
      "\053\u01d3\055\130\066\u01d2\067\150\070\044\073\014\075" +
      "\u01d1\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\002\001\001" +
      "\000\002\001\001\000\004\074\u01d7\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u01d5\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\054\006\153\055\130\066" +
      "\u01d8\067\150\070\044\073\014\075\u01d1\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\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\052\006\153\055\130\067\150\070\044\073\014" +
      "\075\u0201\076\151\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u01ff\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\052" +
      "\006\153\055\130\067\150\070\044\073\014\075\u01fd\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u01fc\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\052\006\153\055" +
      "\130\067\150\070\044\073\014\075\u01fb\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u01fa\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\052\006\153\055\130\067\150" +
      "\070\044\073\014\075\u01f9\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u01f8\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\u01f7\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\052\006\153\055\130" +
      "\067\150\070\044\073\014\075\u01f6\076\151\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\002\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u01f5\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\002\001\001\000" +
      "\002\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u01f4\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\052\006\153\055" +
      "\130\067\150\070\044\073\014\075\u01f3\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u01f2\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\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\036\006\153\055\130\070\044\076\151\115\133" +
      "\120\061\121\110\137\u0200\140\117\141\105\142\137\143" +
      "\u014c\160\u014b\161\022\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\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\u0207\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\002\001\001\000\004\034\u0209\001\001\000\002" +
      "\001\001\000\004\035\u021a\001\001\000\004\035\u020c\001" +
      "\001\000\002\001\001\000\004\035\u020e\001\001\000\002" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0216\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\004" +
      "\036\u0212\001\001\000\004\022\u0215\001\001\000\002\001" +
      "\001\000\002\001\001\000\072\006\153\021\232\023\225" +
      "\055\130\067\150\070\044\073\014\075\017\076\151\114" +
      "\072\115\133\116\121\120\061\121\110\135\227\136\231" +
      "\137\023\140\117\141\105\142\137\143\054\150\142\151" +
      "\025\152\047\160\065\161\022\201\012\205\146\001\001" +
      "\000\004\036\u0217\001\001\000\004\022\u0218\001\001\000" +
      "\072\006\153\021\232\023\225\055\130\067\150\070\044" +
      "\073\014\075\017\076\151\114\072\115\133\116\121\120" +
      "\061\121\110\135\227\136\231\137\023\140\117\141\105" +
      "\142\137\143\054\150\142\151\025\152\047\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\002" +
      "\001\001\000\004\035\u021c\001\001\000\002\001\001\000" +
      "\002\001\001\000\002\001\001\000\060\006\153\052\u0220" +
      "\053\u01d3\055\130\066\u01d2\067\150\070\044\073\014\075" +
      "\u01d1\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\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\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u0228\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\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\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u022f\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\004\117\u0233\001\001\000\002\001\001\000\012" +
      "\006\u0239\115\133\125\u0238\155\u0236\001\001\000\006\006" +
      "\u023e\115\133\001\001\000\002\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\006\006\u023b\115" +
      "\133\001\001\000\002\001\001\000\010\006\u0239\115\133" +
      "\125\u023d\001\001\000\002\001\001\000\002\001\001\000" +
      "\004\060\u0240\001\001\000\016\061\u0242\131\u0250\133\u024d" +
      "\134\u0247\157\u024b\165\u0241\001\001\000\002\001\001\000" +
      "\002\001\001\000\002\001\001\000\002\001\001\000\012" +
      "\006\u0239\115\133\125\u0273\166\u0272\001\001\000\002\001" +
      "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
      "\000\002\001\001\000\016\006\153\115\133\121\203\122" +
      "\211\123\213\156\u0268\001\001\000\002\001\001\000\004" +
      "\134\u0267\001\001\000\002\001\001\000\054\006\153\021" +
      "\u0266\055\130\067\150\070\044\073\014\075\017\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\004\062\u025b\001\001\000" +
      "\016\003\u01b5\004\u0194\005\u0254\115\u01be\127\u0255\130\u0253" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\014\003\u01b5\004\u0194\005\u0254\115\u01be\130\u0258" +
      "\001\001\000\002\001\001\000\002\001\001\000\052\006" +
      "\153\055\130\067\150\070\044\073\014\075\u025a\076\151" +
      "\114\072\115\133\120\061\121\110\137\023\140\117\141" +
      "\105\142\137\143\054\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\012\003\u01b5\004\u0194\005" +
      "\u025c\115\u01be\001\001\000\002\001\001\000\024\006\153" +
      "\044\u025e\050\205\051\212\115\133\121\203\122\211\123" +
      "\213\156\207\001\001\000\002\001\001\000\004\124\u0260" +
      "\001\001\000\004\132\u0261\001\001\000\002\001\001\000" +
      "\004\022\u0264\001\001\000\002\001\001\000\072\006\153" +
      "\021\232\023\225\055\130\067\150\070\044\073\014\075" +
      "\017\076\151\114\072\115\133\116\121\120\061\121\110" +
      "\135\227\136\231\137\023\140\117\141\105\142\137\143" +
      "\054\150\142\151\025\152\047\160\065\161\022\201\012" +
      "\205\146\001\001\000\002\001\001\000\002\001\001\000" +
      "\002\001\001\000\004\126\u026a\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\002\001\001\000\052\006\153\055\130\067\150\070\044" +
      "\073\014\075\u026f\076\151\114\072\115\133\120\061\121" +
      "\110\137\023\140\117\141\105\142\137\143\054\160\065" +
      "\161\022\201\012\205\146\001\001\000\002\001\001\000" +
      "\052\006\153\055\130\067\150\070\044\073\014\075\u0271" +
      "\076\151\114\072\115\133\120\061\121\110\137\023\140" +
      "\117\141\105\142\137\143\054\160\065\161\022\201\012" +
      "\205\146\001\001\000\002\001\001\000\004\167\u0276\001" +
      "\001\000\002\001\001\000\010\006\u0239\115\133\125\u0290" +
      "\001\001\000\026\006\u0239\115\133\125\u027d\170\u027b\171" +
      "\u027a\172\u027e\173\u027f\175\u0278\176\u027c\177\u0279\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\002\001\001\000\022\006\u0239\115\133\125\u027d\172\u028a" +
      "\173\u027f\175\u0278\176\u027c\177\u0279\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\012\006\u0239\115\133" +
      "\125\u0286\174\u0285\001\001\000\002\001\001\000\002\001" +
      "\001\000\010\006\u0239\115\133\125\u0288\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\006\134\u028e\200\u028d\001\001\000\012\003\u01b5" +
      "\004\u0194\005\u028f\115\u01be\001\001\000\002\001\001\000" +
      "\002\001\001\000\002\001\001\000\004\112\u02aa\001\001" +
      "\000\002\001\001\000\002\001\001\000\036\006\153\055" +
      "\130\070\044\076\151\115\133\120\061\121\110\137\u02a0" +
      "\140\117\141\105\142\137\143\u014c\160\u014b\161\022\001" +
      "\001\000\052\006\153\055\130\067\150\070\044\073\014" +
      "\075\u0298\076\151\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\004\112\u0297\001\001\000" +
      "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
      "\001\001\000\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\u029c\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\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\006\113\u02a5\115\u02a7\001\001" +
      "\000\004\115\u02a4\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\004\115\u02af\001\001" +
      "\000\002\001\001\000\024\006\153\044\u02b1\050\205\051" +
      "\212\115\133\121\203\122\211\123\213\156\207\001\001" +
      "\000\002\001\001\000\004\124\u02b3\001\001\000\002\001" +
      "\001\000\004\022\u02b5\001\001\000\072\006\153\021\232" +
      "\023\225\055\130\067\150\070\044\073\014\075\017\076" +
      "\151\114\072\115\133\116\121\120\061\121\110\135\227" +
      "\136\231\137\023\140\117\141\105\142\137\143\054\150" +
      "\142\151\025\152\047\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\002\001\001\000\060\006\153\052\u02bb\053\u01d3" +
      "\055\130\066\u01d2\067\150\070\044\073\014\075\u01d1\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\002\001\001\000\002\001\001\000\052" +
      "\006\153\055\130\067\150\070\044\073\014\075\u02be\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\002\001\001\000\040\006\153\027\u02c0" +
      "\055\130\070\044\076\151\115\133\120\061\121\110\137" +
      "\u02c2\140\117\141\105\142\137\143\u014c\160\u014b\161\022" +
      "\001\001\000\002\001\001\000\062\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0153\076\151\104\u0154\105\u0156" +
      "\106\u02c9\107\u0155\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\036\006" +
      "\153\055\130\070\044\076\151\115\133\120\061\121\110" +
      "\137\u02c8\140\117\141\105\142\137\143\u014c\160\u014b\161" +
      "\022\001\001\000\002\001\001\000\062\006\153\055\130" +
      "\067\150\070\044\073\014\075\u0153\076\151\102\u02c6\103" +
      "\u015c\104\u015b\105\u0156\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\056\006\153\021\u02d0\031\u02d4\055\130\067\150" +
      "\070\044\073\014\075\017\076\151\114\072\115\133\120" +
      "\061\121\110\137\023\140\117\141\105\142\137\143\054" +
      "\160\065\161\022\201\012\205\146\001\001\000\040\006" +
      "\153\027\u02cd\055\130\070\044\076\151\115\133\120\061" +
      "\121\110\137\u02c2\140\117\141\105\142\137\143\u014c\160" +
      "\u014b\161\022\001\001\000\002\001\001\000\056\006\153" +
      "\021\u02d0\031\u02d1\055\130\067\150\070\044\073\014\075" +
      "\017\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\004\022\u02d2\001\001\000\002" +
      "\001\001\000\002\001\001\000\072\006\153\021\232\023" +
      "\225\055\130\067\150\070\044\073\014\075\017\076\151" +
      "\114\072\115\133\116\121\120\061\121\110\135\227\136" +
      "\231\137\023\140\117\141\105\142\137\143\054\150\142" +
      "\151\025\152\047\160\065\161\022\201\012\205\146\001" +
      "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u02d7\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\002\001\001\000\002\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u02e2\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\001\001\000\054\006\153\055\130\067\150" +
      "\070\044\073\014\075\350\076\151\077\u02e0\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\010\055\341\101\u02dc\115\344\001\001\000\002\001\001" +
      "\000\060\006\153\052\u02de\053\u01d3\055\130\066\u01d2\067" +
      "\150\070\044\073\014\075\u01d1\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\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\004\017\u02ea" +
      "\001\001\000\002\001\001\000\004\017\u02e8\001\001\000" +
      "\002\001\001\000\072\006\153\020\164\021\156\055\130" +
      "\067\150\070\044\073\014\075\017\076\151\114\072\115" +
      "\133\116\121\120\061\121\110\135\112\136\131\137\023" +
      "\140\117\141\105\142\137\143\054\150\142\151\025\152" +
      "\047\160\065\161\022\201\012\205\146\001\001\000\002" +
      "\001\001\000\072\006\153\020\164\021\156\055\130\067" +
      "\150\070\044\073\014\075\017\076\151\114\072\115\133" +
      "\116\121\120\061\121\110\135\112\136\131\137\023\140" +
      "\117\141\105\142\137\143\054\150\142\151\025\152\047" +
      "\160\065\161\022\201\012\205\146\001\001\000\002\001" +
      "\001\000\042\006\153\024\u02ee\025\u02ed\055\130\070\044" +
      "\076\151\115\133\120\061\121\110\137\u02ef\140\117\141" +
      "\105\142\137\143\u014c\160\u014b\161\022\001\001\000\002" +
      "\001\001\000\004\074\u02f1\001\001\000\002\001\001\000" +
      "\040\006\153\025\u02f4\055\130\070\044\076\151\115\133" +
      "\120\061\121\110\137\u02ef\140\117\141\105\142\137\143" +
      "\u014c\160\u014b\161\022\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\004\112" +
      "\u02aa\001\001\000\002\001\001\000\004\072\u0307\001\001" +
      "\000\004\072\u02f9\001\001\000\006\153\u02ff\202\u02fd\001" +
      "\001\000\060\006\153\052\u02fb\053\u01d3\055\130\066\u01d2" +
      "\067\150\070\044\073\014\075\u01d1\076\151\114\072\115" +
      "\133\120\061\121\110\137\023\140\117\141\105\142\137" +
      "\143\054\160\065\161\022\201\012\205\146\001\001\000" +
      "\002\001\001\000\002\001\001\000\002\001\001\000\010" +
      "\006\u0239\115\133\125\u0306\001\001\000\004\154\u0300\001" +
      "\001\000\002\001\001\000\012\006\u0239\115\133\125\u0238" +
      "\155\u0302\001\001\000\002\001\001\000\004\060\u0304\001" +
      "\001\000\016\061\u0242\131\u0250\133\u024d\134\u0247\157\u024b" +
      "\165\u0241\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\072\006\153\021\232\023\225" +
      "\055\130\067\150\070\044\073\014\075\017\076\151\114" +
      "\072\115\133\116\121\120\061\121\110\135\227\136\231" +
      "\137\023\140\117\141\105\142\137\143\054\150\142\151" +
      "\025\152\047\160\065\161\022\201\012\205\146\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\024\006\153\044\u0314\050\205\051\212\115\133\121\203" +
      "\122\211\123\213\156\207\001\001\000\002\001\001\000" +
      "\004\124\u0316\001\001\000\002\001\001\000\052\006\153" +
      "\055\130\067\150\070\044\073\014\075\u0318\076\151\114" +
      "\072\115\133\120\061\121\110\137\023\140\117\141\105" +
      "\142\137\143\054\160\065\161\022\201\012\205\146\001" +
      "\001\000\002\001\001\000\002\001\001\000\016\003\u01b5" +
      "\004\u0194\005\u031b\055\u031d\100\u031c\115\u01be\001\001\000" +
      "\002\001\001\000\002\001\001\000\002\001\001\000\060" +
      "\006\153\052\u031f\053\u01d3\055\130\066\u01d2\067\150\070" +
      "\044\073\014\075\u01d1\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\004\112\u02aa\001" +
      "\001\000\004\112\u0297\001\001\000\002\001\001\000\060" +
      "\006\153\052\u0326\053\u01d3\055\130\066\u01d2\067\150\070" +
      "\044\073\014\075\u01d1\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\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\052\006\153\055\130\067\150\070\044\073" +
      "\014\075\u032f\076\151\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\052" +
      "\006\153\055\130\067\150\070\044\073\014\075\u0331\076" +
      "\151\114\072\115\133\120\061\121\110\137\023\140\117" +
      "\141\105\142\137\143\054\160\065\161\022\201\012\205" +
      "\146\001\001\000\002\001\001\000\002\001\001\000\004" +
      "\153\u0334\001\001\000\004\154\u0335\001\001\000\002\001" +
      "\001\000\004\060\u0337\001\001\000\016\061\u0242\131\u0250" +
      "\133\u024d\134\u0247\157\u024b\165\u0241\001\001\000\002\001" +
      "\001\000\052\006\153\055\130\067\150\070\044\073\014" +
      "\075\u033a\076\151\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\002\001\001\000\056\006" +
      "\153\021\u033e\037\u033d\055\130\067\150\070\044\073\014" +
      "\075\017\076\151\114\072\115\133\120\061\121\110\137" +
      "\023\140\117\141\105\142\137\143\054\160\065\161\022" +
      "\201\012\205\146\001\001\000\004\022\u033f\001\001\000" +
      "\002\001\001\000\002\001\001\000\072\006\153\021\232" +
      "\023\225\055\130\067\150\070\044\073\014\075\017\076" +
      "\151\114\072\115\133\116\121\120\061\121\110\135\227" +
      "\136\231\137\023\140\117\141\105\142\137\143\054\150" +
      "\142\151\025\152\047\160\065\161\022\201\012\205\146" +
      "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
      "\001\000\002\001\001\000\004\057\u0346\001\001\000\002" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u0348\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\002" +
      "\001\001\000\002\001\001\000\004\022\u034b\001\001\000" +
      "\072\006\153\021\232\023\225\055\130\067\150\070\044" +
      "\073\014\075\017\076\151\114\072\115\133\116\121\120" +
      "\061\121\110\135\227\136\231\137\023\140\117\141\105" +
      "\142\137\143\054\150\142\151\025\152\047\160\065\161" +
      "\022\201\012\205\146\001\001\000\010\144\u034f\145\u0350" +
      "\147\u034e\001\001\000\002\001\001\000\002\001\001\000" +
      "\006\203\u0353\204\u0352\001\001\000\004\147\u0351\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\002\001\001\000\004\022\u0356\001\001\000\072\006\153" +
      "\021\232\023\225\055\130\067\150\070\044\073\014\075" +
      "\017\076\151\114\072\115\133\116\121\120\061\121\110" +
      "\135\227\136\231\137\023\140\117\141\105\142\137\143" +
      "\054\150\142\151\025\152\047\160\065\161\022\201\012" +
      "\205\146\001\001\000\002\001\001\000\012\006\153\115" +
      "\133\121\u0359\146\u035a\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\010\006\153\115\133\121" +
      "\u035d\001\001\000\002\001\001\000\002\001\001\000\004" +
      "\022\u0360\001\001\000\072\006\153\021\232\023\225\055" +
      "\130\067\150\070\044\073\014\075\017\076\151\114\072" +
      "\115\133\116\121\120\061\121\110\135\227\136\231\137" +
      "\023\140\117\141\105\142\137\143\054\150\142\151\025" +
      "\152\047\160\065\161\022\201\012\205\146\001\001\000" +
      "\002\001\001\000\002\001\001\000\002\001\001\000\004" +
      "\112\u02aa\001\001\000\002\001\001\000\004\112\u0297\001" +
      "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
      "\000\056\006\153\055\130\064\u036c\065\u036d\067\150\070" +
      "\044\073\014\075\u036b\076\151\114\072\115\133\120\061" +
      "\121\110\137\023\140\117\141\105\142\137\143\054\160" +
      "\065\161\022\201\012\205\146\001\001\000\002\001\001" +
      "\000\002\001\001\000\002\001\001\000\052\006\153\055" +
      "\130\067\150\070\044\073\014\075\u036f\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\002\001\001\000\056\006\153\055\130\064\u0371\065" +
      "\u036d\067\150\070\044\073\014\075\u036b\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\002\001\001\000\056\006\153\055\130\064\u0373\065" +
      "\u036d\067\150\070\044\073\014\075\u036b\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\002\001\001\000\056\006\153\021\u0377\030\u0375\055" +
      "\130\067\150\070\044\073\014\075\017\076\151\114\072" +
      "\115\133\120\061\121\110\137\023\140\117\141\105\142" +
      "\137\143\054\160\065\161\022\201\012\205\146\001\001" +
      "\000\002\001\001\000\004\022\u0378\001\001\000\002\001" +
      "\001\000\072\006\153\021\232\023\225\055\130\067\150" +
      "\070\044\073\014\075\017\076\151\114\072\115\133\116" +
      "\121\120\061\121\110\135\227\136\231\137\023\140\117" +
      "\141\105\142\137\143\054\150\142\151\025\152\047\160" +
      "\065\161\022\201\012\205\146\001\001\000\002\001\001" +
      "\000\052\006\153\055\130\067\150\070\044\073\014\075" +
      "\u037b\076\151\114\072\115\133\120\061\121\110\137\023" +
      "\140\117\141\105\142\137\143\054\160\065\161\022\201" +
      "\012\205\146\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\016" +
      "\006\u037f\007\u0384\010\u0394\012\u0395\015\u0396\115\133\001" +
      "\001\000\002\001\001\000\006\006\u0392\115\133\001\001" +
      "\000\002\001\001\000\002\001\001\000\010\006\u038c\007" +
      "\u038a\115\133\001\001\000\002\001\001\000\002\001\001" +
      "\000\006\006\u038f\115\133\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\004\115" +
      "\u0110\001\001\000\002\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\012\006" +
      "\u038c\007\u0384\015\u039a\115\133\001\001\000\004\074\u039c" +
      "\001\001\000\010\006\u038c\007\u038a\115\133\001\001\000" +
      "\002\001\001\000\002\001\001\000\016\006\u038c\007\u03a1" +
      "\013\u039f\014\u03a2\016\u03a0\115\133\001\001\000\004\074" +
      "\u03a5\001\001\000\010\006\u038c\007\u03a3\115\133\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\014\006\u038c\007\u03a1\014\u03a7\016\u03a0\115\133\001\001" +
      "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
      "\002\001\001\000\004\115\u0110\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\062\006\153\055\130" +
      "\067\150\070\044\073\014\075\u0153\076\151\104\u0154\105" +
      "\u0156\106\u03b1\107\u0155\114\072\115\133\120\061\121\110" +
      "\137\023\140\117\141\105\142\137\143\054\160\065\161" +
      "\022\201\012\205\146\001\001\000\002\001\001\000\002" +
      "\001\001\000\002\001\001\000\052\006\153\055\130\067" +
      "\150\070\044\073\014\075\u03b5\076\151\114\072\115\133" +
      "\120\061\121\110\137\023\140\117\141\105\142\137\143" +
      "\054\160\065\161\022\201\012\205\146\001\001\000\002" +
      "\001\001\000\002\001\001\000\002\001\001\000\004\055" +
      "\u03ba\001\001\000\002\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$PHPAstParser$actions action_obj;
  
    /** Action encapsulation object initializer. */
    protected void init_actions()
      {
        action_obj = new CUP$PHPAstParser$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$PHPAstParser$do_action(act_num, parser, stack, top);
    }
  
    /** Indicates start state. */
    public int start_state() {return 0;}
    /** Indicates start production. */
    public int start_production() {return 1;}
  
    /** <code>EOF</code> Symbol index. */
    public int EOF_sym() {return 0;}
  
    /** <code>error</code> Symbol index. */
    public int error_sym() {return 1;}
  
  
  
  
  	protected final static Integer PUBLIC = Integer.valueOf(Modifiers.AccPublic);
  	protected final static Integer PRIVATE = Integer.valueOf(Modifiers.AccPrivate);
  	protected final static Integer PROTECTED = Integer.valueOf(Modifiers.AccProtected);
  	protected final static Integer ABSTRACT = Integer.valueOf(Modifiers.AccAbstract);
  	protected final static Integer FINAL = Integer.valueOf(Modifiers.AccFinal);
  	protected final static Integer STATIC = Integer.valueOf(Modifiers.AccStatic);
  
  
      /** handles parsing errors **/
      protected ParseErrorManager parseErrorManager = new ParseErrorManager();
  
  	public void addErrorListener(ParseErrorListener l) {
  	    parseErrorManager.addListener(l);
  	}
  	public void removeErrorListener(ParseErrorListener l) {
          parseErrorManager.removeListener(l);
      }
  
  	AST ast;
  
  	/**
  	 * XXX: Reimplement scalars as NamespaceName
  	 */
  	protected VariableBase detectScalar(VariableBase expr) {
  		if (expr instanceof NamespaceName) {
  			NamespaceName name = (NamespaceName) expr;
  			if (name.segments().size() == 1) {
  				Identifier i = name.segments().get(0);
  				if (!name.isGlobal() && !name.isCurrent()) {
  					return new Scalar(i.getStart(), i.getEnd(), ast, i.getName(), Scalar.TYPE_STRING);
  				}
  			}
  		}
  		return expr;
  	}
  
  	public final void setAST (AST ast) {
  		this.ast = ast;
  	}
  
  	/** Report a non fatal error (or warning).  This method takes a message
  	 *  string and an additional object (to be used by specializations
  	 *  implemented in subclasses). Here in the base class a very simple
  	 *  implementation is provided which simply prints the message to
  	 *  System.err.
  	 *
  	 * @param message an error message.
  	 * @param info    an extra object reserved for use by specialized subclasses.
  	 */
  	@Override
  	public void report_error(String message, Object info)
  	{
  	    parseErrorManager.signalError(message, info, false);
  	}
  
  	@Override
  	public void syntax_error(Symbol cur_token) {
  		List<Integer> ids = expected_token_ids();
              LinkedList<String> list = new LinkedList<String>();
              for (Integer expected : ids){
                  list.add(symbl_name_from_id(expected));
              }
  	    parseErrorManager.signalSyntaxError(cur_token, list);
  	}
  
  	@Override
  	public void report_fatal_error(
  	String message,
  	Object info)
  	throws java.lang.Exception
  	{
  		/* stop parsing (not really necessary since we throw an exception, but) */
  		done_parsing();
  
  		/* use the normal error message reporting to put out the message */
  		parseErrorManager.signalError(message, info, true);
  
  		/* throw an exception */
  		throw new Exception("Can't recover from previous error(s)");
  	}
  
  
  /** Cup generated class to encapsulate user supplied action code.*/
  @SuppressWarnings({"rawtypes", "unchecked", "unused"})
  class CUP$PHPAstParser$actions {
    private final PHPAstParser parser;
  
    /** Constructor */
    CUP$PHPAstParser$actions(PHPAstParser parser) {
      this.parser = parser;
    }
  
    /** Method 0 with the actual generated action code for actions 0 to 300. */
    public final java_cup.runtime.Symbol CUP$PHPAstParser$do_action_part00000000(
      int                        CUP$PHPAstParser$act_num,
      java_cup.runtime.lr_parser CUP$PHPAstParser$parser,
      java.util.Stack            CUP$PHPAstParser$stack,
      int                        CUP$PHPAstParser$top)
      throws java.lang.Exception
      {
        /* Symbol object for return from actions */
        java_cup.runtime.Symbol CUP$PHPAstParser$result;
  
        /* select the action based on the action number */
        switch (CUP$PHPAstParser$act_num)
          {
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 0: // thestart ::= top_statement_list 
              {
                Program RESULT =null;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	PHPAstLexer phpAstLexer = (PHPAstLexer) parser.getScanner();
  	List commentList = phpAstLexer.getCommentList();
  	RESULT = new Program(sListleft, sListright, parser.ast, sList, commentList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("thestart",0, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 1: // $START ::= thestart EOF 
              {
                Object RESULT =null;
  		int start_valleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int start_valright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Program start_val = (Program)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		RESULT = start_val;
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("$START",0, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            /* ACCEPT */
            CUP$PHPAstParser$parser.done_parsing();
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 2: // reserved_non_modifiers ::= T_INCLUDE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 3: // reserved_non_modifiers ::= T_INCLUDE_ONCE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 4: // reserved_non_modifiers ::= T_EVAL 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 5: // reserved_non_modifiers ::= T_REQUIRE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 6: // reserved_non_modifiers ::= T_REQUIRE_ONCE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 7: // reserved_non_modifiers ::= T_LOGICAL_OR 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 8: // reserved_non_modifiers ::= T_LOGICAL_XOR 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 9: // reserved_non_modifiers ::= T_LOGICAL_AND 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 10: // reserved_non_modifiers ::= T_INSTANCEOF 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 11: // reserved_non_modifiers ::= T_NEW 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 12: // reserved_non_modifiers ::= T_CLONE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 13: // reserved_non_modifiers ::= T_EXIT 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 14: // reserved_non_modifiers ::= T_IF 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 15: // reserved_non_modifiers ::= T_ELSEIF 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 16: // reserved_non_modifiers ::= T_ELSE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 17: // reserved_non_modifiers ::= T_ENDIF 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 18: // reserved_non_modifiers ::= T_ECHO 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 19: // reserved_non_modifiers ::= T_DO 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 20: // reserved_non_modifiers ::= T_WHILE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 21: // reserved_non_modifiers ::= T_ENDWHILE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 22: // reserved_non_modifiers ::= T_FOR 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 23: // reserved_non_modifiers ::= T_ENDFOR 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 24: // reserved_non_modifiers ::= T_FOREACH 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 25: // reserved_non_modifiers ::= T_ENDFOREACH 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 26: // reserved_non_modifiers ::= T_DECLARE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 27: // reserved_non_modifiers ::= T_ENDDECLARE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 28: // reserved_non_modifiers ::= T_AS 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 29: // reserved_non_modifiers ::= T_TRY 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 30: // reserved_non_modifiers ::= T_CATCH 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 31: // reserved_non_modifiers ::= T_FINALLY 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 32: // reserved_non_modifiers ::= T_THROW 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 33: // reserved_non_modifiers ::= T_USE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 34: // reserved_non_modifiers ::= T_INSTEADOF 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 35: // reserved_non_modifiers ::= T_GLOBAL 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 36: // reserved_non_modifiers ::= T_VAR 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 37: // reserved_non_modifiers ::= T_UNSET 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 38: // reserved_non_modifiers ::= T_ISSET 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 39: // reserved_non_modifiers ::= T_EMPTY 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 40: // reserved_non_modifiers ::= T_CONTINUE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 41: // reserved_non_modifiers ::= T_GOTO 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 42: // reserved_non_modifiers ::= T_FUNCTION 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 43: // reserved_non_modifiers ::= T_CONST 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 44: // reserved_non_modifiers ::= T_RETURN 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 45: // reserved_non_modifiers ::= T_PRINT 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 46: // reserved_non_modifiers ::= T_YIELD 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 47: // reserved_non_modifiers ::= T_LIST 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 48: // reserved_non_modifiers ::= T_SWITCH 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 49: // reserved_non_modifiers ::= T_ENDSWITCH 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 50: // reserved_non_modifiers ::= T_CASE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 51: // reserved_non_modifiers ::= T_DEFAULT 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 52: // reserved_non_modifiers ::= T_BREAK 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 53: // reserved_non_modifiers ::= T_ARRAY 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 54: // reserved_non_modifiers ::= T_CALLABLE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 55: // reserved_non_modifiers ::= T_EXTENDS 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 56: // reserved_non_modifiers ::= T_IMPLEMENTS 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 57: // reserved_non_modifiers ::= T_NAMESPACE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 58: // reserved_non_modifiers ::= T_TRAIT 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 59: // reserved_non_modifiers ::= T_INTERFACE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 60: // reserved_non_modifiers ::= T_CLASS 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 61: // reserved_non_modifiers ::= T_FN 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	// https://wiki.php.net/rfc/arrow_functions
  	// Unfortunately the fn keyword must be a full keyword and not just a reserved function name;
  	// this is to break the ambiguities with => for array and yield keys.
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("reserved_non_modifiers",1, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 62: // semi_reserved ::= reserved_non_modifiers 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("semi_reserved",2, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 63: // semi_reserved ::= T_STATIC 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("semi_reserved",2, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 64: // semi_reserved ::= T_ABSTRACT 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("semi_reserved",2, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 65: // semi_reserved ::= T_FINAL 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("semi_reserved",2, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 66: // semi_reserved ::= T_PRIVATE 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("semi_reserved",2, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 67: // semi_reserved ::= T_PROTECTED 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("semi_reserved",2, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 68: // semi_reserved ::= T_PUBLIC 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("semi_reserved",2, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 69: // identifier ::= string_st 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("identifier",3, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 70: // identifier ::= semi_reserved 
              {
                String RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String v = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("identifier",3, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 71: // namespace_name ::= string_st 
              {
                List RESULT =null;
  		int nleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String n = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(new Identifier(nleft, nright, parser.ast, n));
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("namespace_name",4, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 72: // namespace_name ::= namespace_name T_NS_SEPARATOR string_st 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int nleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String n = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(new Identifier(nleft, nright, parser.ast, n));
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("namespace_name",4, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 73: // name ::= namespace_name 
              {
                NamespaceName RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceName(listleft, listright, parser.ast, list, false, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("name",79, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 74: // name ::= T_NAMESPACE T_NS_SEPARATOR namespace_name 
              {
                NamespaceName RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceName(sleft, listright, parser.ast, list, false, true);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("name",79, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 75: // name ::= T_NS_SEPARATOR namespace_name 
              {
                NamespaceName RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceName(sleft, listright, parser.ast, list, true, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("name",79, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 76: // top_statement_list ::= top_statement_list top_statement 
              {
                List RESULT =null;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (statement != null) {
  		if (!(statement instanceof NamespaceDeclaration) && sList.size() > 0) {
  			Statement lastStatement = (Statement) ((LinkedList) sList).getLast();
  			// EmptyStatement length == 2 means it is "?>",
  			// equals to 1 means it is ";"
  			if (!(statement instanceof EmptyStatement && statement.getLength() >= 2) && lastStatement instanceof NamespaceDeclaration && !((NamespaceDeclaration) lastStatement).isBracketed()) {
  				((NamespaceDeclaration) lastStatement).addStatement(statement);
  			} else {
  				sList.add(statement);
  			}
  		} else {
  			sList.add(statement);
  		}
  	}
  	RESULT = sList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement_list",13, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 77: // top_statement_list ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement_list",13, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 78: // top_statement ::= statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 79: // top_statement ::= function_declaration_statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FunctionDeclaration statement = (FunctionDeclaration)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 80: // top_statement ::= class_declaration_statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 81: // top_statement ::= T_NAMESPACE namespace_name T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceDeclaration(sleft, eright, parser.ast,
  		new NamespaceName(listleft, listright, parser.ast, list, false, false), null);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 82: // top_statement ::= T_NAMESPACE namespace_name T_CURLY_OPEN top_statement_list T_CURLY_CLOSE 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceDeclaration(sleft, eright, parser.ast,
  		new NamespaceName(listleft, listright, parser.ast, list, false, false),
  		new Block(tokenleft, eright, parser.ast, sList));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 83: // top_statement ::= T_NAMESPACE T_CURLY_OPEN top_statement_list T_CURLY_CLOSE 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceDeclaration(sleft, eright, parser.ast, null,
  		new Block(tokenleft, eright, parser.ast, sList));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 84: // top_statement ::= T_USE mixed_group_use_declaration T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int useStatementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int useStatementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		UseStatement useStatement = (UseStatement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	useStatement.setSourceRange(sleft, eright - sleft);
  	RESULT = useStatement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 85: // top_statement ::= T_USE use_type group_use_declaration T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int useTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int useTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Integer useType = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int useStatementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int useStatementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		UseStatement useStatement = (UseStatement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	useStatement.setSourceRange(sleft, eright - sleft);
  	useStatement.setStatementType(useType);
  	RESULT = useStatement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 86: // top_statement ::= T_USE use_declarations T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List<UseStatementPart> list = (List<UseStatementPart>)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UseStatement(sleft, eright, parser.ast, list);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 87: // top_statement ::= T_USE use_type use_declarations T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int useTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int useTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Integer useType = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List<UseStatementPart> list = (List<UseStatementPart>)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UseStatement(sleft, eright, parser.ast, list, useType);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 88: // top_statement ::= T_CONST const_list T_SEMICOLON 
              {
                Statement RESULT =null;
  		int leftleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int leftright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String left = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List[] list = (List[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ConstantDeclaration(leftleft, eright, parser.ast, list[0], list[1]);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("top_statement",14, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 89: // use_type ::= T_FUNCTION 
              {
                Integer RESULT =null;
  		
  	RESULT = UseStatement.T_FUNCTION;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_type",12, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 90: // use_type ::= T_CONST 
              {
                Integer RESULT =null;
  		
  	RESULT = UseStatement.T_CONST;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_type",12, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 91: // group_use_declaration ::= use_namespace_name T_CURLY_OPEN use_declarations possible_comma T_CURLY_CLOSE 
              {
                UseStatement RESULT =null;
  		int nsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int nsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		NamespaceName ns = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int useDeclListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int useDeclListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List<UseStatementPart> useDeclList = (List<UseStatementPart>)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int commaleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int commaright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String comma = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (comma != null) {
  		RESULT = new UseStatement(nsleft, endright, parser.ast, ns, useDeclList, new EmptyExpression(commaright, parser.ast));
  	} else {
  		RESULT = new UseStatement(nsleft, endright, parser.ast, ns, useDeclList);
  	}
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("group_use_declaration",8, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 92: // mixed_group_use_declaration ::= use_namespace_name T_CURLY_OPEN inline_use_declarations possible_comma T_CURLY_CLOSE 
              {
                UseStatement RESULT =null;
  		int nsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int nsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		NamespaceName ns = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int useDeclListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int useDeclListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List<UseStatementPart> useDeclList = (List<UseStatementPart>)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int commaleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int commaright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String comma = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (comma != null) {
  		RESULT = new UseStatement(nsleft, endright, parser.ast, ns, useDeclList, new EmptyExpression(commaright, parser.ast));
  	} else {
  		RESULT = new UseStatement(nsleft, endright, parser.ast, ns, useDeclList);
  	}
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("mixed_group_use_declaration",7, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 93: // inline_use_declarations ::= inline_use_declarations T_COMMA inline_use_declaration 
              {
                List<UseStatementPart> RESULT =null;
  		int useDeclListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int useDeclListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List<UseStatementPart> useDeclList = (List<UseStatementPart>)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int useDeclleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int useDeclright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		UseStatementPart useDecl = (UseStatementPart)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	useDeclList.add(useDecl);
  	RESULT = useDeclList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inline_use_declarations",9, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 94: // inline_use_declarations ::= inline_use_declaration 
              {
                List<UseStatementPart> RESULT =null;
  		int useDeclleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int useDeclright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		UseStatementPart useDecl = (UseStatementPart)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List<UseStatementPart> useDeclList = new LinkedList<UseStatementPart>();
  	useDeclList.add(useDecl);
  	RESULT = useDeclList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inline_use_declarations",9, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 95: // inline_use_declaration ::= use_declaration 
              {
                UseStatementPart RESULT =null;
  		int useDeclarationleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int useDeclarationright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		UseStatementPart useDeclaration = (UseStatementPart)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = useDeclaration;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inline_use_declaration",10, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 96: // inline_use_declaration ::= use_type use_declaration 
              {
                UseStatementPart RESULT =null;
  		int useTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int useTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Integer useType = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int useDeclarationleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int useDeclarationright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		UseStatementPart useDeclaration = (UseStatementPart)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	useDeclaration.setSourceRange(useTypeleft, useDeclaration.getEnd() - useTypeleft);
  	useDeclaration.setStatementType(useType);
  	RESULT = useDeclaration;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inline_use_declaration",10, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 97: // use_declarations ::= use_declarations T_COMMA use_declaration 
              {
                List<UseStatementPart> RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List<UseStatementPart> list = (List<UseStatementPart>)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int useDeclleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int useDeclright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		UseStatementPart useDecl = (UseStatementPart)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(useDecl);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_declarations",11, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 98: // use_declarations ::= use_declaration 
              {
                List<UseStatementPart> RESULT =null;
  		int useDeclleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int useDeclright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		UseStatementPart useDecl = (UseStatementPart)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(useDecl);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_declarations",11, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 99: // use_declaration ::= namespace_name 
              {
                UseStatementPart RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UseStatementPart(listleft, listright, parser.ast,
  		new NamespaceName(listleft, listright, parser.ast, list, false, false), null);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_declaration",5, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 100: // use_declaration ::= namespace_name T_AS T_STRING 
              {
                UseStatementPart RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int aliasNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int aliasNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String aliasName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UseStatementPart(listleft, aliasNameright, parser.ast,
  		new NamespaceName(listleft, listright, parser.ast, list, false, false),
  		new Identifier(aliasNameleft, aliasNameright, parser.ast, aliasName));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_declaration",5, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 101: // use_declaration ::= T_NS_SEPARATOR namespace_name 
              {
                UseStatementPart RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UseStatementPart(sleft, listright, parser.ast,
  		new NamespaceName(sright, listright, parser.ast, list, false, false), null);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_declaration",5, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 102: // use_declaration ::= T_NS_SEPARATOR namespace_name T_AS T_STRING 
              {
                UseStatementPart RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int aliasNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int aliasNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String aliasName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UseStatementPart(sleft, aliasNameright, parser.ast,
  		new NamespaceName(sright, listright, parser.ast, list, false, false),
  		new Identifier(aliasNameleft, aliasNameright, parser.ast, aliasName));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_declaration",5, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 103: // use_namespace_name ::= namespace_name T_NS_SEPARATOR 
              {
                NamespaceName RESULT =null;
  		int nnListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int nnListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List nnList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceName(nnListleft, endright, parser.ast, nnList, false, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_namespace_name",6, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 104: // use_namespace_name ::= T_NS_SEPARATOR namespace_name T_NS_SEPARATOR 
              {
                NamespaceName RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int nnListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int nnListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List nnList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	// NB: leading backslash is optional and has no special meaning here, so totally ignore it
  	RESULT = new NamespaceName(sright, endright, parser.ast, nnList, false, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_namespace_name",6, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 105: // inner_statement_list ::= inner_statement_list inner_statement 
              {
                List RESULT =null;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	// Ignore null statements
  	if (statement != null) {
  		sList.add(statement);
  	}
  	RESULT = sList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inner_statement_list",16, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 106: // inner_statement_list ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inner_statement_list",16, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 107: // inner_statement ::= statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inner_statement",17, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 108: // inner_statement ::= function_declaration_statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FunctionDeclaration statement = (FunctionDeclaration)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inner_statement",17, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 109: // inner_statement ::= class_declaration_statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("inner_statement",17, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 110: // statement ::= T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Block(tokenleft, eright, parser.ast, sList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 111: // statement ::= T_IF T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE statement elseif_list else_single 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int condleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int condright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Expression cond = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int iftrueleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int iftrueright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Statement iftrue = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int elseifleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int elseifright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List[] elseif = (List[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int iffalseleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int iffalseright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement iffalse = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Expression innerCondition = null;
  	Statement trueStatement = null;
  	Statement falseStatement = iffalse;
  
  	for (int i = 0; i < elseif[0].size(); i++) {
  		innerCondition = (Expression) elseif[0].get(i);
  		trueStatement = (Statement) elseif[1].get(i);
  		int s = ((Integer) elseif[2].get(i)).intValue();
  		falseStatement = new IfStatement(s, iffalseright, parser.ast, innerCondition, trueStatement, falseStatement);
  	}
  	RESULT = new IfStatement(tokenleft, iffalseright, parser.ast, cond, iftrue, falseStatement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 112: // statement ::= T_IF T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE T_NEKUDOTAIM inner_statement_list new_elseif_list new_else_single T_ENDIF T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).value;
  		int condleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).left;
  		int condright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).right;
  		Expression cond = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).value;
  		int colonleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int colonright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		Object colon = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int ifTrueStatementListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int ifTrueStatementListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List ifTrueStatementList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int elseifleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int elseifright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List[] elseif = (List[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int iffalseleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int iffalseright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Statement iffalse = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Expression innerCondition = null;
  	Statement trueStatement = null;
  	Statement falseStatement = iffalse;
  
  	for (int i = 0; i < elseif[0].size(); i++) {
  		innerCondition = (Expression) elseif[0].get(i);
  		trueStatement = (Statement) elseif[1].get(i);
  		int s = ((Integer) elseif[2].get(i)).intValue();
  		falseStatement = new IfStatement(s, iffalseright, parser.ast, innerCondition, trueStatement, falseStatement);
  	}
  	Block block = new Block(colonleft, ifTrueStatementListright, parser.ast, ifTrueStatementList, false);
  	RESULT = new IfStatement(tokenleft, eright, parser.ast, cond, block, falseStatement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 113: // statement ::= T_WHILE T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE while_statement 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new WhileStatement(tokenleft, statementright, parser.ast, expr, statement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 114: // statement ::= T_DO statement T_WHILE T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new DoStatement(tokenleft, eright, parser.ast, expr, statement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 115: // statement ::= T_FOR T_OPEN_PARENTHESE for_expr T_SEMICOLON for_expr T_SEMICOLON for_expr T_CLOSE_PARENTHESE for_statement 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).value;
  		int initializationsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int initializationsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		List initializations = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int condsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int condsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List conds = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int increasementsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int increasementsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List increasements = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ForStatement(tokenleft, statementright, parser.ast, initializations, conds, increasements, statement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 116: // statement ::= T_SWITCH T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE switch_case_list 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int caseBlockleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int caseBlockright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Block caseBlock = (Block)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new SwitchStatement(tokenleft, caseBlockright, parser.ast, expr, caseBlock);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 117: // statement ::= T_BREAK T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new BreakStatement(tokenleft, eright, parser.ast);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 118: // statement ::= T_BREAK expr T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new BreakStatement(tokenleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 119: // statement ::= T_CONTINUE T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ContinueStatement(tokenleft, eright, parser.ast);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 120: // statement ::= T_CONTINUE expr T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ContinueStatement(tokenleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 121: // statement ::= T_RETURN T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReturnStatement(tokenleft, eright, parser.ast);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 122: // statement ::= T_RETURN expr_without_variable T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReturnStatement(tokenleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 123: // statement ::= T_RETURN variable T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		VariableBase expr = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReturnStatement(tokenleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 124: // statement ::= T_GLOBAL simple_variable_list T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new GlobalStatement(sleft, eright, parser.ast, list);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 125: // statement ::= T_STATIC static_var_list T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticStatement(sleft, eright, parser.ast, list);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 126: // statement ::= T_ECHO echo_expr_list T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List exprList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new EchoStatement(sleft, eright, parser.ast, exprList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 127: // statement ::= T_INLINE_HTML 
              {
                Statement RESULT =null;
  		int htmlleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int htmlright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object html = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InLineHtml(htmlleft, htmlright, parser.ast);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 128: // statement ::= expr T_SEMICOLON 
              {
                Statement RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ExpressionStatement(exprleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 129: // statement ::= T_USE use_filename T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(expr);
  	RESULT = new ExpressionStatement(sleft, eright, parser.ast,
  		new FunctionInvocation(sleft, exprright, parser.ast,
  			new FunctionName(sleft, sright, parser.ast,
  				new Identifier(sleft, sright, parser.ast, "use")), list));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 130: // statement ::= T_UNSET T_OPEN_PARENTHESE unset_variables possible_comma T_CLOSE_PARENTHESE T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int commaleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int commaright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String comma = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int closeParleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int closeParright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object closePar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (comma != null) {
  		list.add(new EmptyExpression(commaright, parser.ast));
  	}
  	RESULT = new ExpressionStatement(sleft, eright, parser.ast,
  		new FunctionInvocation(sleft, closeParright, parser.ast,
  			new FunctionName(sleft, sright, parser.ast,
  				new Identifier(sleft, sright, parser.ast, "unset")), list));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 131: // statement ::= T_FOREACH T_OPEN_PARENTHESE expr T_AS foreach_variable T_CLOSE_PARENTHESE foreach_statement 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression var = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ForEachStatement(tokenleft, statementright, parser.ast, expr, var, statement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 132: // statement ::= T_FOREACH T_OPEN_PARENTHESE expr T_AS foreach_variable T_DOUBLE_ARROW foreach_variable T_CLOSE_PARENTHESE foreach_statement 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int keyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int keyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Expression key = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int valueleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int valueright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression value = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ForEachStatement(tokenleft, statementright, parser.ast, expr, key, value, statement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 133: // statement ::= T_DECLARE T_OPEN_PARENTHESE const_list T_CLOSE_PARENTHESE declare_statement 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int listsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List[] lists = (List[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new DeclareStatement(sleft, statementright, parser.ast, lists[0], lists[1], statement);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 134: // statement ::= T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new EmptyStatement(tokenleft, tokenright, parser.ast);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 135: // statement ::= T_TRY T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE catches_list finally_clause 
              {
                Statement RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		String start = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int tryBlockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int tryBlockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Object tryBlockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int tryListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int tryListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List tryList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int tryBlockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tryBlockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object tryBlockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int catchesListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int catchesListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List catchesList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int finallyClauseleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int finallyClauseright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FinallyClause finallyClause = (FinallyClause)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	TryStatement s = new TryStatement(startleft, finallyClause != null ? finallyClauseright : catchesListright, parser.ast, new Block(tryBlockStartleft, tryBlockEndright, parser.ast, tryList), catchesList, finallyClause);
  
  	RESULT = s;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 136: // statement ::= T_THROW expr T_SEMICOLON 
              {
                Statement RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ThrowStatement(tokenleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 137: // statement ::= T_GOTO T_STRING T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int labelleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int labelright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String label = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new GotoStatement(sleft, eright, parser.ast, new Identifier(labelleft, labelright, parser.ast, label));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 138: // statement ::= T_STRING T_NEKUDOTAIM 
              {
                Statement RESULT =null;
  		int labelleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int labelright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String label = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new GotoLabel(labelleft, eright, parser.ast, new Identifier(labelleft, labelright, parser.ast, label));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 139: // statement ::= error 
              {
                Statement RESULT =null;
  		int theErrorleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int theErrorright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object theError = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	ASTError error = new ASTError(theErrorleft, theErrorright, parser.ast);
  	RESULT = error;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 140: // statement ::= T_VAR_COMMENT statement 
              {
                Statement RESULT =null;
  		int varCommentleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int varCommentright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String varComment = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 141: // statement ::= T_OPEN_TAG_WITH_ECHO echo_expr_list T_SEMICOLON 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List exprList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new EchoStatement(exprListleft, eright, parser.ast, exprList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("statement",15, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 142: // catches_list ::= non_empty_catches_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("catches_list",98, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 143: // catches_list ::= 
              {
                List RESULT =null;
  		
  	List list = new LinkedList();
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("catches_list",98, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 144: // non_empty_catches_list ::= catch_clause 
              {
                List RESULT =null;
  		int catch_statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int catch_statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		CatchClause catch_statement = (CatchClause)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(catch_statement);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_catches_list",99, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 145: // non_empty_catches_list ::= non_empty_catches_list catch_clause 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int catch_statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int catch_statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		CatchClause catch_statement = (CatchClause)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(catch_statement);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_catches_list",99, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 146: // catch_clause ::= T_CATCH T_OPEN_PARENTHESE catch_name_list T_VARIABLE T_CLOSE_PARENTHESE T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE 
              {
                CatchClause RESULT =null;
  		int catch_wordleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).left;
  		int catch_wordright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).right;
  		String catch_word = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).value;
  		int catch_name_listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int catch_name_listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		List catch_name_list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int catchBlockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int catchBlockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object catchBlockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int catchListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int catchListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List catchList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int catchBlockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int catchBlockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object catchBlockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CatchClause(catch_wordleft, catchBlockEndright, parser.ast, catch_name_list,
  		new Variable(varleft, varright, parser.ast, var),
  		new Block(catchBlockStartleft, catchBlockEndright, parser.ast, catchList));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("catch_clause",101, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 147: // catch_name_list ::= name 
              {
                List RESULT =null;
  		int nameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName name = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(name);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("catch_name_list",100, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 148: // catch_name_list ::= catch_name_list T_OR name 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int nameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName name = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(name);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("catch_name_list",100, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 149: // finally_clause ::= non_empty_finally_clause 
              {
                FinallyClause RESULT =null;
  		int clauseleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int clauseright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FinallyClause clause = (FinallyClause)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = clause;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("finally_clause",129, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 150: // finally_clause ::= 
              {
                FinallyClause RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("finally_clause",129, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 151: // non_empty_finally_clause ::= T_FINALLY T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE 
              {
                FinallyClause RESULT =null;
  		int finally_wordleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int finally_wordright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String finally_word = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int finallyBlockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int finallyBlockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object finallyBlockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int finallyListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int finallyListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List finallyList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int finallyBlockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int finallyBlockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object finallyBlockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block finallyBlock = new Block(finallyBlockStartleft, finallyBlockEndright, parser.ast, finallyList);
  	FinallyClause finallyClause = new FinallyClause(finally_wordleft, finallyBlockEndright, parser.ast, finallyBlock);
  	RESULT = finallyClause;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_finally_clause",130, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 152: // unset_variables ::= unset_variable 
              {
                List RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("unset_variables",18, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 153: // unset_variables ::= unset_variables T_COMMA unset_variable 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("unset_variables",18, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 154: // unset_variable ::= variable 
              {
                VariableBase RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = var;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("unset_variable",19, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 155: // use_filename ::= T_CONSTANT_ENCAPSED_STRING 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String scalar = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, scalar, Scalar.TYPE_STRING);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_filename",20, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 156: // use_filename ::= T_OPEN_PARENTHESE T_CONSTANT_ENCAPSED_STRING T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String scalar = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, scalar, Scalar.TYPE_STRING);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("use_filename",20, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 157: // function_declaration_statement ::= unticked_function_declaration_statement 
              {
                FunctionDeclaration RESULT =null;
  		int functionDeclarationleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int functionDeclarationright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FunctionDeclaration functionDeclaration = (FunctionDeclaration)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = functionDeclaration;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("function_declaration_statement",91, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 158: // class_declaration_statement ::= unticked_class_declaration_statement 
              {
                Statement RESULT =null;
  		int classDeclarationleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classDeclarationright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement classDeclaration = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = classDeclaration;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_declaration_statement",92, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 159: // is_reference ::= 
              {
                Boolean RESULT =null;
  		
  	RESULT = Boolean.FALSE;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("is_reference",48, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 160: // is_reference ::= T_REFERENCE 
              {
                Boolean RESULT =null;
  		
  	RESULT = Boolean.TRUE;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("is_reference",48, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 161: // unticked_function_declaration_statement ::= T_FUNCTION is_reference string_st T_OPEN_PARENTHESE parameter_list T_CLOSE_PARENTHESE return_type T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE 
              {
                FunctionDeclaration RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).value;
  		int isReferenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).left;
  		int isReferenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).right;
  		Boolean isReference = (Boolean)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).value;
  		int fnleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).left;
  		int fnright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).right;
  		String fn = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).value;
  		int paramListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int paramListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		List paramList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int returnTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int returnTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Identifier returnType = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int blockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int blockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object blockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int blockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int blockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object blockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FunctionDeclaration(sleft, blockEndright, parser.ast,
  		new Identifier(fnleft, fnright, parser.ast, fn), paramList,
  		new Block(blockStartleft, blockEndright, parser.ast, sList), isReference.booleanValue(), returnType);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("unticked_function_declaration_statement",102, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 162: // unticked_class_declaration_statement ::= class_entry_type T_STRING extends_from implements_list T_CURLY_OPEN class_statement_list T_CURLY_CLOSE 
              {
                Statement RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		String className = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int superClassleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int superClassright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Expression superClass = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int interfacesleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int interfacesright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List interfaces = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int blockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int blockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object blockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int blockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int blockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object blockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (modifier.intValue() == ClassDeclaration.MODIFIER_TRAIT) {
  		RESULT = new TraitDeclaration(modifierleft, blockEndright, parser.ast, ClassDeclaration.MODIFIER_NONE,
  			new Identifier(classNameleft, classNameright, parser.ast, className), superClass, interfaces,
  			new Block(blockStartleft, blockEndright, parser.ast, sList));
  	}else{
  		RESULT = new ClassDeclaration(modifierleft, blockEndright, parser.ast, modifier.intValue(),
  			new Identifier(classNameleft, classNameright, parser.ast, className), superClass, interfaces,
  			new Block(blockStartleft, blockEndright, parser.ast, sList));
  	}
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("unticked_class_declaration_statement",103, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 163: // unticked_class_declaration_statement ::= interface_entry T_STRING interface_extends_list T_CURLY_OPEN class_statement_list T_CURLY_CLOSE 
              {
                Statement RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		Integer s = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String className = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int interfacesleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int interfacesright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List interfaces = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int blockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int blockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object blockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int blockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int blockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object blockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InterfaceDeclaration(sleft, blockEndright, parser.ast,
  		new Identifier(classNameleft, classNameright, parser.ast, className), interfaces,
  		new Block(blockStartleft, blockEndright, parser.ast, sList));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("unticked_class_declaration_statement",103, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 164: // class_entry_type ::= T_CLASS 
              {
                Integer RESULT =null;
  		
  	RESULT = Integer.valueOf(ClassDeclaration.MODIFIER_NONE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_entry_type",104, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 165: // class_entry_type ::= T_ABSTRACT T_CLASS 
              {
                Integer RESULT =null;
  		
  	RESULT = Integer.valueOf(ClassDeclaration.MODIFIER_ABSTRACT);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_entry_type",104, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 166: // class_entry_type ::= T_FINAL T_CLASS 
              {
                Integer RESULT =null;
  		
  	RESULT = Integer.valueOf(ClassDeclaration.MODIFIER_FINAL);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_entry_type",104, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 167: // class_entry_type ::= T_TRAIT 
              {
                Integer RESULT =null;
  		
  	RESULT = Integer.valueOf(ClassDeclaration.MODIFIER_TRAIT);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_entry_type",104, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 168: // extends_from ::= 
              {
                Expression RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("extends_from",105, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 169: // extends_from ::= T_EXTENDS fully_qualified_class_name 
              {
                Expression RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName className = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = className;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("extends_from",105, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 170: // interface_entry ::= T_INTERFACE 
              {
                Integer RESULT =null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("interface_entry",76, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 171: // interface_extends_list ::= 
              {
                List RESULT =null;
  		
  	List list = new LinkedList();
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("interface_extends_list",77, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 172: // interface_extends_list ::= T_EXTENDS interface_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("interface_extends_list",77, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 173: // implements_list ::= 
              {
                List RESULT =null;
  		
  	List list = new LinkedList();
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("implements_list",106, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 174: // implements_list ::= T_IMPLEMENTS interface_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("implements_list",106, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 175: // interface_list ::= fully_qualified_class_name 
              {
                List RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName className = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(className);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("interface_list",107, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 176: // interface_list ::= interface_list T_COMMA fully_qualified_class_name 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName className = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(className);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("interface_list",107, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 177: // foreach_variable ::= variable 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = var;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("foreach_variable",21, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 178: // foreach_variable ::= T_REFERENCE variable 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Reference (sleft, varright, parser.ast, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("foreach_variable",21, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 179: // foreach_variable ::= T_LIST T_OPEN_PARENTHESE assignment_list T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String start = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ListVariable(startleft, endright, parser.ast, list);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("foreach_variable",21, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 180: // foreach_variable ::= T_OPEN_RECT array_pair_list T_CLOSE_RECT 
              {
                Expression RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayCreation(startleft, endright, parser.ast, list, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("foreach_variable",21, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 181: // for_statement ::= statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("for_statement",22, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 182: // for_statement ::= T_NEKUDOTAIM inner_statement_list T_ENDFOR 
              {
                Statement RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int statementListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List statementList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String end = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(startleft, endright, parser.ast, statementList, false);
  	RESULT = block;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("for_statement",22, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 183: // foreach_statement ::= statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("foreach_statement",23, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 184: // foreach_statement ::= T_NEKUDOTAIM inner_statement_list T_ENDFOREACH 
              {
                Statement RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int statementListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List statementList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String end = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(startleft, endright, parser.ast, statementList, false);
  	RESULT = block;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("foreach_statement",23, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 185: // declare_statement ::= statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("declare_statement",24, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 186: // declare_statement ::= T_NEKUDOTAIM inner_statement_list T_ENDDECLARE 
              {
                Statement RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int statementListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List statementList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String end = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(startleft, endright, parser.ast, statementList, false);
  	RESULT = block;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("declare_statement",24, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 187: // const_list ::= string_st T_EQUAL expr 
              {
                List[] RESULT =null;
  		int keyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int keyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String key = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List listKeys = new LinkedList();
  	List listValues = new LinkedList();
  
  	listKeys.add(new Identifier(keyleft, keyright, parser.ast, key));
  	listValues.add(expr);
  
  	RESULT = new List[] { listKeys, listValues };
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("const_list",25, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 188: // const_list ::= const_list T_COMMA string_st T_EQUAL expr 
              {
                List[] RESULT =null;
  		int listsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int listsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List[] lists = (List[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int keyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int keyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String key = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	lists[0].add(new Identifier(keyleft, keyright, parser.ast, key));
  	lists[1].add(expr);
  	RESULT = lists;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("const_list",25, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 189: // switch_case_list ::= T_CURLY_OPEN case_list T_CURLY_CLOSE 
              {
                Block RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int caseListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int caseListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List caseList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Block(sleft, eright, parser.ast, caseList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("switch_case_list",26, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 190: // switch_case_list ::= T_CURLY_OPEN T_SEMICOLON case_list T_CURLY_CLOSE 
              {
                Block RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int caseListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int caseListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List caseList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Block(sleft, eright, parser.ast, caseList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("switch_case_list",26, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 191: // switch_case_list ::= T_NEKUDOTAIM case_list T_ENDSWITCH 
              {
                Block RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int caseListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int caseListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List caseList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String end = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(startleft, endright, parser.ast, caseList, false);
  	RESULT = block;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("switch_case_list",26, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 192: // switch_case_list ::= T_NEKUDOTAIM T_SEMICOLON case_list T_ENDSWITCH 
              {
                Block RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int caseListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int caseListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List caseList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String end = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(startleft, endright, parser.ast, caseList, false);
  	RESULT = block;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("switch_case_list",26, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 193: // case_list ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList(); // of SwitchCase
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("case_list",27, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 194: // case_list ::= case_list T_CASE expr case_separator inner_statement_list 
              {
                List RESULT =null;
  		int caseListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int caseListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List caseList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List statements = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	SwitchCase switchCase = new SwitchCase(tokenleft, statementsright, parser.ast, expr, statements, false);
  	if (caseList == null) {
  		caseList = new LinkedList(); // of switchCase
  	}
  	caseList.add(switchCase);
  	RESULT = caseList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("case_list",27, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 195: // case_list ::= case_list T_DEFAULT case_separator inner_statement_list 
              {
                List RESULT =null;
  		int caseListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int caseListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List caseList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List statements = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	SwitchCase switchCase = new SwitchCase(tokenleft, statementsright, parser.ast, null, statements, true);
  	if (caseList == null) {
  		caseList = new LinkedList(); // of SwitchCase
  	}
  	caseList.add(switchCase);
  	RESULT = caseList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("case_list",27, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 196: // case_separator ::= T_NEKUDOTAIM 
              {
                Object RESULT =null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("case_separator",28, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 197: // case_separator ::= T_SEMICOLON 
              {
                Object RESULT =null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("case_separator",28, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 198: // while_statement ::= statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("while_statement",29, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 199: // while_statement ::= T_NEKUDOTAIM inner_statement_list T_ENDWHILE 
              {
                Statement RESULT =null;
  		int colonleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int colonright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object colon = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int statementListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int statementListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List statementList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String end = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(colonleft, endright, parser.ast, statementList, false);
  	RESULT = block;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("while_statement",29, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 200: // elseif_list ::= 
              {
                List[] RESULT =null;
  		
  	List listConditions = new LinkedList();
  	List listStatements = new LinkedList();
  	List listTokens = new LinkedList();
  	RESULT = new List[] { listConditions, listStatements, listTokens };
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("elseif_list",30, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 201: // elseif_list ::= elseif_list T_ELSEIF T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE statement 
              {
                List[] RESULT =null;
  		int elseifListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int elseifListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		List[] elseifList = (List[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int condleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int condright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression cond = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int iftrueleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int iftrueright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement iftrue = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	((LinkedList) elseifList[0]).addFirst(cond);
  	((LinkedList) elseifList[1]).addFirst(iftrue);
  	((LinkedList) elseifList[2]).addFirst(Integer.valueOf(tokenleft));
  	RESULT = elseifList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("elseif_list",30, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 202: // new_elseif_list ::= 
              {
                List[] RESULT =null;
  		
  	List listConditions = new LinkedList();
  	List listStatements = new LinkedList();
  	List listTokens = new LinkedList();
  	RESULT = new List[] { listConditions, listStatements, listTokens };
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_elseif_list",31, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 203: // new_elseif_list ::= new_elseif_list T_ELSEIF T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE T_NEKUDOTAIM inner_statement_list 
              {
                List[] RESULT =null;
  		int elseifListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int elseifListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		List[] elseifList = (List[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int condleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int condright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression cond = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int colonleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int colonright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object colon = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(colonleft, sListright, parser.ast, sList, false);
  	((LinkedList) elseifList[0]).addFirst(cond);
  	((LinkedList) elseifList[1]).addFirst(block);
  	((LinkedList) elseifList[2]).addFirst(Integer.valueOf(tokenleft));
  	RESULT = elseifList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_elseif_list",31, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 204: // else_single ::= 
              {
                Statement RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("else_single",32, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 205: // else_single ::= T_ELSE statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("else_single",32, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 206: // new_else_single ::= 
              {
                Statement RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_else_single",33, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 207: // new_else_single ::= T_ELSE T_NEKUDOTAIM inner_statement_list 
              {
                Statement RESULT =null;
  		int colonleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int colonright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object colon = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Block(colonleft, listright, parser.ast, list, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_else_single",33, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 208: // parameter_list ::= non_empty_parameter_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter_list",34, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 209: // parameter_list ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter_list",34, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 210: // non_empty_parameter_list ::= parameter 
              {
                List RESULT =null;
  		int parameterleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int parameterright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FormalParameter parameter = (FormalParameter)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(parameter);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_parameter_list",38, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 211: // non_empty_parameter_list ::= non_empty_parameter_list T_COMMA parameter 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int parameterleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int parameterright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FormalParameter parameter = (FormalParameter)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(parameter);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_parameter_list",38, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 212: // parameter ::= optional_type T_VARIABLE 
              {
                FormalParameter RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression type = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int s = type == null ? varleft : typeleft;
  	Variable v = new Variable(varleft, varright, parser.ast, var);
  	RESULT = new FormalParameter(s, varright, parser.ast, type, v);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter",39, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 213: // parameter ::= optional_type T_ELLIPSIS T_VARIABLE 
              {
                FormalParameter RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression type = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int s = type == null ? eleft : typeleft;
  	Variable v = new Variable(varleft, varright, parser.ast, var);
  	RESULT = new FormalParameter(s, varright, parser.ast, type, v, null, false, true);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter",39, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 214: // parameter ::= optional_type T_REFERENCE T_VARIABLE 
              {
                FormalParameter RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression type = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int refleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int refright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object ref = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int s = type == null ? refleft : typeleft;
  	Variable v = new Variable(varleft, varright, parser.ast, var);
  	Reference ref_var = new Reference (refleft, varright, parser.ast, v);
  	RESULT = new FormalParameter(s, varright, parser.ast, type, ref_var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter",39, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 215: // parameter ::= optional_type T_REFERENCE T_ELLIPSIS T_VARIABLE 
              {
                FormalParameter RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression type = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int refleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int refright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object ref = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int s = type == null ? refleft : typeleft;
  	Variable v = new Variable(varleft, varright, parser.ast, var);
  	Reference ref_var = new Reference (refleft, varright, parser.ast, v);
  	RESULT = new FormalParameter(s, varright, parser.ast, type, ref_var, null, false, true);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter",39, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 216: // parameter ::= optional_type T_VARIABLE T_EQUAL expr 
              {
                FormalParameter RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression type = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int s = type == null ? varleft : typeleft;
  	Variable v = new Variable(varleft, varright, parser.ast, var);
  	RESULT = new FormalParameter(s, exprright, parser.ast, type, v, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter",39, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 217: // parameter ::= optional_type T_REFERENCE T_VARIABLE T_EQUAL expr 
              {
                FormalParameter RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Expression type = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int refleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int refright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Object ref = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int s = type == null ? refleft : typeleft;
  	Variable v = new Variable(varleft, varright, parser.ast, var);
  	Reference ref_var = new Reference (refleft, varright, parser.ast, v);
  	RESULT = new FormalParameter(s, exprright, parser.ast, type, ref_var, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("parameter",39, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 218: // optional_type ::= 
              {
                Expression RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("optional_type",108, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 219: // optional_type ::= type_expr 
              {
                Expression RESULT =null;
  		int type_exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int type_exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Identifier type_expr = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = type_expr;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("optional_type",108, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 220: // function_call_parameter_list ::= non_empty_argument_list possible_comma 
              {
                List RESULT =null;
  		int paramsListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int paramsListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List paramsList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int commaleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int commaright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String comma = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (comma != null) {
  		paramsList.add(new EmptyExpression(commaright, parser.ast));
  	}
  	RESULT = paramsList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("function_call_parameter_list",40, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 221: // function_call_parameter_list ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("function_call_parameter_list",40, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 222: // non_empty_argument_list ::= argument 
              {
                List RESULT =null;
  		int argumentleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int argumentright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression argument = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List paramsList = new LinkedList();
  	paramsList.add(argument);
  	RESULT = paramsList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_argument_list",41, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 223: // non_empty_argument_list ::= non_empty_argument_list T_COMMA argument 
              {
                List RESULT =null;
  		int paramsListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int paramsListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List paramsList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression var = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	paramsList.add(var);
  	RESULT = paramsList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_argument_list",41, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 224: // argument ::= expr 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = expr;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("argument",52, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 225: // argument ::= T_ELLIPSIS expr 
              {
                Expression RESULT =null;
  		int ellleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int ellright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object ell = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new PrefixExpression(ellleft, exprright, parser.ast, expr, PrefixExpression.OP_UNPACK);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("argument",52, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 226: // type_expr ::= type 
              {
                Identifier RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Identifier type = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = type;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("type_expr",81, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 227: // type_expr ::= T_QUESTION_MARK type 
              {
                Identifier RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Identifier type = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	type.setNullable(true);
  	RESULT = type;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("type_expr",81, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 228: // type ::= T_ARRAY 
              {
                Identifier RESULT =null;
  		int arrayleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int arrayright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String array = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Identifier(arrayleft, arrayright, parser.ast, "array");
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("type",80, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 229: // type ::= T_CALLABLE 
              {
                Identifier RESULT =null;
  		int callableleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int callableright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String callable = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Identifier(callableleft, callableright, parser.ast, "callable");
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("type",80, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 230: // type ::= name 
              {
                Identifier RESULT =null;
  		int nameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName name = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = name;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("type",80, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 231: // return_type ::= 
              {
                Identifier RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("return_type",82, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 232: // return_type ::= T_NEKUDOTAIM type_expr 
              {
                Identifier RESULT =null;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Identifier type = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = type;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("return_type",82, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 233: // simple_variable_list ::= simple_variable_list T_COMMA simple_variable 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("simple_variable_list",42, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 234: // simple_variable_list ::= simple_variable 
              {
                List RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("simple_variable_list",42, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 235: // simple_variable ::= T_VARIABLE 
              {
                Variable RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Variable(varleft, varright, parser.ast, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("simple_variable",43, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 236: // simple_variable ::= T_DOLLAR simple_variable 
              {
                Variable RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, varright, parser.ast, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("simple_variable",43, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 237: // simple_variable ::= T_DOLLAR T_CURLY_OPEN expr T_CURLY_CLOSE 
              {
                Variable RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression varName = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, eright, parser.ast, varName);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("simple_variable",43, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 238: // static_var_list ::= static_var 
              {
                List RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression v = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(v);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("static_var_list",44, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 239: // static_var_list ::= static_var_list T_COMMA static_var 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression v = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(v);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("static_var_list",44, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 240: // static_var ::= T_VARIABLE 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Variable(varleft, varright, parser.ast, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("static_var",45, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 241: // static_var ::= T_VARIABLE T_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Variable v = new Variable(varleft, varright, parser.ast, var);
  	RESULT = new Assignment(varleft, exprright, parser.ast, v, Assignment.OP_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("static_var",45, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 242: // class_statement_list ::= class_statement_list class_statement 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int classStatementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classStatementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement classStatement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(classStatement);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_statement_list",46, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 243: // class_statement_list ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_statement_list",46, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 244: // class_statement ::= variable_modifiers optional_type property_list T_SEMICOLON 
              {
                Statement RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int typeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int typeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression type = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int decListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int decListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List decList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FieldsDeclaration(modifierleft, eright, parser.ast, modifier.intValue(), type, decList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_statement",47, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 245: // class_statement ::= method_modifiers T_CONST class_const_list T_SEMICOLON 
              {
                Statement RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int cleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int cright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String c = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int methodStart = modifier == null ? cleft : modifierleft;
  	int modifierValue = modifier == null ? 0 : modifier.intValue();
  	RESULT = new ConstantDeclaration(methodStart, eright, parser.ast, modifierValue, list);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_statement",47, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 246: // class_statement ::= method_modifiers T_FUNCTION is_reference identifier T_OPEN_PARENTHESE parameter_list T_CLOSE_PARENTHESE return_type method_body 
              {
                Statement RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).value;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).value;
  		int isReferenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int isReferenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		Boolean isReference = (Boolean)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int fnleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int fnright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		String fn = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int paramListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int paramListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List paramList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int returnTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int returnTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Identifier returnType = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int bodyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int bodyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Block body = (Block)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int methodStart = modifier == null ? sleft : modifierleft;
  	modifier = modifier == null ? PHPAstParser.PUBLIC : modifier;
  	Identifier functionId = new Identifier(fnleft, fnright, parser.ast, fn);
  	FunctionDeclaration functionDeclaration = new FunctionDeclaration(sleft, bodyright, parser.ast, functionId, paramList, body, isReference.booleanValue(), returnType);
  	RESULT = new MethodDeclaration(methodStart, bodyright, parser.ast, modifier.intValue(), functionDeclaration, true);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_statement",47, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 247: // class_statement ::= T_VAR_COMMENT statement 
              {
                Statement RESULT =null;
  		int varCommentleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int varCommentright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String varComment = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Statement statement = (Statement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_statement",47, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 248: // class_statement ::= trait_use_statement 
              {
                Statement RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		TraitUseStatement statement = (TraitUseStatement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = statement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_statement",47, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 249: // trait_use_statement ::= T_USE trait_list trait_adaptations 
              {
                TraitUseStatement RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String start = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int adaptationsleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int adaptationsright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List adaptations = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	TraitUseStatement traitUseStatement = new TraitUseStatement(startleft, adaptationsright, parser.ast, list, adaptations);
  	RESULT = traitUseStatement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_use_statement",115, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 250: // trait_list ::= fully_qualified_class_name 
              {
                List RESULT =null;
  		int nameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName name = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List<NamespaceName> traitList = new LinkedList<NamespaceName>();
  	traitList.add(name);
  	RESULT = traitList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_list",116, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 251: // trait_list ::= trait_list T_COMMA fully_qualified_class_name 
              {
                List RESULT =null;
  		int traitListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int traitListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List traitList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int nameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName name = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	traitList.add(name);
  	RESULT = traitList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_list",116, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 252: // trait_adaptations ::= T_SEMICOLON 
              {
                List RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_adaptations",117, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 253: // trait_adaptations ::= T_CURLY_OPEN trait_adaptation_list T_CURLY_CLOSE 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_adaptations",117, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 254: // trait_adaptation_list ::= 
              {
                List RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_adaptation_list",118, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 255: // trait_adaptation_list ::= non_empty_trait_adaptation_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_adaptation_list",118, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 256: // non_empty_trait_adaptation_list ::= trait_adaptation_statement 
              {
                List RESULT =null;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		TraitStatement statement = (TraitStatement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List<TraitStatement> taList = new LinkedList<TraitStatement>();
  	taList.add(statement);
  	RESULT = taList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_trait_adaptation_list",119, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 257: // non_empty_trait_adaptation_list ::= non_empty_trait_adaptation_list trait_adaptation_statement 
              {
                List RESULT =null;
  		int taListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int taListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List taList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int statementleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int statementright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		TraitStatement statement = (TraitStatement)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	taList.add(statement);
  	RESULT = taList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_trait_adaptation_list",119, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 258: // trait_adaptation_statement ::= trait_precedence T_SEMICOLON 
              {
                TraitStatement RESULT =null;
  		int precedenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int precedenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		TraitPrecedence precedence = (TraitPrecedence)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	TraitPrecedenceStatement traitPrecedenceStatement = new TraitPrecedenceStatement(precedenceleft, endright, parser.ast, precedence);
  	RESULT = traitPrecedenceStatement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_adaptation_statement",120, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 259: // trait_adaptation_statement ::= trait_alias T_SEMICOLON 
              {
                TraitStatement RESULT =null;
  		int aliasleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int aliasright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		TraitAlias alias = (TraitAlias)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	TraitAliasStatement traitAliasStatement = new TraitAliasStatement(aliasleft, endright, parser.ast, alias);
  	RESULT = traitAliasStatement;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_adaptation_statement",120, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 260: // trait_precedence ::= trait_method_reference_fully_qualified T_INSTEADOF trait_reference_list 
              {
                TraitPrecedence RESULT =null;
  		int methodReferenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int methodReferenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		FullyQualifiedTraitMethodReference methodReference = (FullyQualifiedTraitMethodReference)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int trListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int trListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List trList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	TraitPrecedence traitPrecedence = new TraitPrecedence(methodReferenceleft, trListright, parser.ast, methodReference, trList);
  	RESULT = traitPrecedence;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_precedence",121, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 261: // trait_reference_list ::= fully_qualified_class_name 
              {
                List RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName className = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List<NamespaceName> trList = new LinkedList<NamespaceName>();
  	trList.add(className);
  	RESULT = trList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_reference_list",122, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 262: // trait_reference_list ::= trait_reference_list T_COMMA fully_qualified_class_name 
              {
                List RESULT =null;
  		int trListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int trListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List trList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName className = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	trList.add(className);
  	RESULT = trList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_reference_list",122, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 263: // trait_method_reference ::= T_STRING 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	//FunctionName name = new FunctionName(sleft, sright, parser.ast,
  	//		new Identifier(sleft, sright, parser.ast, s));
  	//SimpleReference name = new SimpleReference(functionNameleft, functionNameright, functionName);
  	RESULT = new Identifier(sleft, sright, parser.ast, s);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_method_reference",123, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 264: // trait_method_reference ::= trait_method_reference_fully_qualified 
              {
                Expression RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		FullyQualifiedTraitMethodReference className = (FullyQualifiedTraitMethodReference)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = className;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_method_reference",123, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 265: // trait_method_reference_fully_qualified ::= fully_qualified_class_name T_PAAMAYIM_NEKUDOTAYIM T_STRING 
              {
                FullyQualifiedTraitMethodReference RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		NamespaceName className = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int functionNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int functionNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String functionName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	//FunctionName name = new FunctionName(functionNameleft, functionNameright, parser.ast,
  	//		new Identifier(functionNameleft, functionNameright, parser.ast, s));
  	//SimpleReference name = new SimpleReference(functionNameleft, functionNameright, functionName);
  	Identifier name = new Identifier(functionNameleft, functionNameright, parser.ast, functionName);
  	FullyQualifiedTraitMethodReference methodReference = new FullyQualifiedTraitMethodReference(classNameleft, functionNameright, parser.ast, className, name);
  	RESULT = methodReference;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_method_reference_fully_qualified",124, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 266: // trait_alias ::= trait_method_reference T_AS trait_modifiers identifier 
              {
                TraitAlias RESULT =null;
  		int referenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int referenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression reference = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int functionNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int functionNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String functionName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int modifierValue = modifier == null ? Modifiers.AccPublic : modifier.intValue();
  	int modifierOffset = modifier == null ? functionNameleft : modifierleft;
  	//SimpleReference name = new SimpleReference(functionNameleft, functionNameright, functionName);
  	Identifier name = new Identifier(functionNameleft, functionNameright, parser.ast, functionName);
  	TraitAlias alias = new TraitAlias(referenceleft, functionNameright, parser.ast, reference, modifierValue, modifierOffset, name);
  	RESULT = alias;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_alias",125, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 267: // trait_alias ::= trait_method_reference T_AS member_modifier 
              {
                TraitAlias RESULT =null;
  		int referenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int referenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression reference = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int asleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int asright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String as = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int modifierValue = modifier == null ? Modifiers.AccPublic : modifier.intValue();
  	int modifierOffset = modifier == null ? asright + 1 : modifierleft;
  	TraitAlias alias = new TraitAlias(referenceleft, modifierright, parser.ast, reference, modifierValue, modifierOffset, null);
  	RESULT = alias;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_alias",125, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 268: // trait_modifiers ::= 
              {
                Integer RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_modifiers",126, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 269: // trait_modifiers ::= member_modifier 
              {
                Integer RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = modifier;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("trait_modifiers",126, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 270: // method_body ::= T_SEMICOLON 
              {
                Block RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("method_body",88, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 271: // method_body ::= T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE 
              {
                Block RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block block = new Block(sleft, eright, parser.ast, list);
  	RESULT = block;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("method_body",88, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 272: // variable_modifiers ::= non_empty_member_modifiers 
              {
                Integer RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int result = 0;
  	for (Iterator it = list.iterator(); it.hasNext();) {
  		Integer modifier = (Integer) it.next();
  		result |= modifier.intValue();
  	}
  	RESULT = Integer.valueOf(result);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("variable_modifiers",109, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 273: // variable_modifiers ::= T_VAR 
              {
                Integer RESULT =null;
  		
  	RESULT = PHPAstParser.PUBLIC;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("variable_modifiers",109, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 274: // method_modifiers ::= 
              {
                Integer RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("method_modifiers",87, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 275: // method_modifiers ::= non_empty_member_modifiers 
              {
                Integer RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	int result = 0;
  	for (Iterator it = list.iterator(); it.hasNext();) {
  		Integer modifier = (Integer) it.next();
  		result |= modifier.intValue();
  	}
  	RESULT = Integer.valueOf(result);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("method_modifiers",87, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 276: // non_empty_member_modifiers ::= member_modifier 
              {
                List RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(modifier);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_member_modifiers",89, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 277: // non_empty_member_modifiers ::= non_empty_member_modifiers member_modifier 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Integer modifier = (Integer)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(modifier);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_member_modifiers",89, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 278: // member_modifier ::= T_PUBLIC 
              {
                Integer RESULT =null;
  		
  	RESULT = PHPAstParser.PUBLIC;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_modifier",90, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 279: // member_modifier ::= T_PROTECTED 
              {
                Integer RESULT =null;
  		
  	RESULT = PHPAstParser.PROTECTED;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_modifier",90, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 280: // member_modifier ::= T_PRIVATE 
              {
                Integer RESULT =null;
  		
  	RESULT = PHPAstParser.PRIVATE;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_modifier",90, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 281: // member_modifier ::= T_STATIC 
              {
                Integer RESULT =null;
  		
  	RESULT = PHPAstParser.STATIC;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_modifier",90, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 282: // member_modifier ::= T_ABSTRACT 
              {
                Integer RESULT =null;
  		
  	RESULT = PHPAstParser.ABSTRACT;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_modifier",90, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 283: // member_modifier ::= T_FINAL 
              {
                Integer RESULT =null;
  		
  	RESULT = PHPAstParser.FINAL;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_modifier",90, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 284: // property_list ::= property_list T_COMMA T_VARIABLE 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Variable varId = new Variable(varleft, varright, parser.ast, var);
  	list.add(new ASTNode[] {varId, null});
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("property_list",84, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 285: // property_list ::= property_list T_COMMA T_VARIABLE T_EQUAL expr 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Variable varId = new Variable(varleft, varright, parser.ast, var);
  	list.add(new ASTNode[] {varId, expr});
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("property_list",84, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 286: // property_list ::= T_VARIABLE 
              {
                List RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	Variable varId = new Variable(varleft, varright, parser.ast, var);
  	list.add(new ASTNode[] {varId, null});
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("property_list",84, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 287: // property_list ::= T_VARIABLE T_EQUAL expr 
              {
                List RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	Variable varId = new Variable(varleft, varright, parser.ast, var);
  	list.add(new ASTNode[] {varId, expr});
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("property_list",84, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 288: // class_const_list ::= class_const_list T_COMMA class_const_decl 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int declleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int declright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		ASTNode[] decl = (ASTNode[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(decl);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_const_list",85, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 289: // class_const_list ::= class_const_decl 
              {
                List RESULT =null;
  		int declleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int declright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		ASTNode[] decl = (ASTNode[])((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(decl);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_const_list",85, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 290: // class_const_decl ::= identifier T_EQUAL expr 
              {
                ASTNode[] RESULT =null;
  		int constNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int constNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String constName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ASTNode[] { new Identifier(constNameleft, constNameright, parser.ast, constName), expr};
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_const_decl",86, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 291: // echo_expr_list ::= echo_expr_list T_COMMA expr 
              {
                List RESULT =null;
  		int exprListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int exprListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List exprList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	exprList.add(expr);
  	RESULT = exprList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("echo_expr_list",49, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 292: // echo_expr_list ::= expr 
              {
                List RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List exprList = new LinkedList();
  	exprList.add(expr);
  	RESULT = exprList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("echo_expr_list",49, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 293: // for_expr ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("for_expr",50, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 294: // for_expr ::= non_empty_for_expr 
              {
                List RESULT =null;
  		int exprListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List exprList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = exprList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("for_expr",50, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 295: // non_empty_for_expr ::= non_empty_for_expr T_COMMA expr 
              {
                List RESULT =null;
  		int exprListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int exprListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List exprList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	exprList.add(expr);
  	RESULT = exprList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_for_expr",51, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 296: // non_empty_for_expr ::= expr 
              {
                List RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List exprList = new LinkedList();
  	exprList.add(expr);
  	RESULT = exprList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_for_expr",51, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 297: // anonymous_class ::= extends_from implements_list T_CURLY_OPEN class_statement_list T_CURLY_CLOSE 
              {
                AnonymousClassDeclaration RESULT =null;
  		int superClassleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int superClassright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Expression superClass = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int interfacesleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int interfacesright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List interfaces = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int blockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int blockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object blockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int sListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List sList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int blockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int blockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object blockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	Block body = new Block(blockStartleft, blockEndright, parser.ast, sList);
  	RESULT = new AnonymousClassDeclaration(superClassleft, blockEndright, parser.ast, superClass, interfaces, body);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("anonymous_class",128, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 298: // new_expr ::= T_NEW class_name_reference ctor_arguments 
              {
                ClassInstanceCreation RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		ClassName className = (ClassName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int ctorleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int ctorright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List ctor = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ClassInstanceCreation(sleft, ctorright, parser.ast, className, ctor);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_expr",127, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 299: // new_expr ::= T_NEW T_CLASS ctor_arguments anonymous_class 
              {
                ClassInstanceCreation RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String start = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int tclassleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int tclassright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String tclass = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int ctorleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int ctorright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List ctor = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int acleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int acright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		AnonymousClassDeclaration ac = (AnonymousClassDeclaration)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	ClassName className = new ClassName(tclassleft, tclassright, parser.ast, new Identifier(tclassleft, tclassright, parser.ast, "class"));
  	RESULT = new ClassInstanceCreation(startleft, acright, parser.ast, className, ctor, ac);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_expr",127, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /* . . . . . .*/
            default:
              throw new Exception(
                 "Invalid action number "+CUP$PHPAstParser$act_num+"found in internal parse table");
  
          }
      } /* end of method */
    /** Method 1 with the actual generated action code for actions 300 to 600. */
    public final java_cup.runtime.Symbol CUP$PHPAstParser$do_action_part00000001(
      int                        CUP$PHPAstParser$act_num,
      java_cup.runtime.lr_parser CUP$PHPAstParser$parser,
      java.util.Stack            CUP$PHPAstParser$stack,
      int                        CUP$PHPAstParser$top)
      throws java.lang.Exception
      {
        /* Symbol object for return from actions */
        java_cup.runtime.Symbol CUP$PHPAstParser$result;
  
        /* select the action based on the action number */
        switch (CUP$PHPAstParser$act_num)
          {
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 300: // expr_without_variable ::= T_LIST T_OPEN_PARENTHESE assignment_list T_CLOSE_PARENTHESE T_EQUAL expr 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int varListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int varListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List varList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int closeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int closeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object close = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	ListVariable vars = new ListVariable(sleft, closeright, parser.ast, varList);
  	RESULT = new Assignment(sleft, exprright, parser.ast, vars, Assignment.OP_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 301: // expr_without_variable ::= T_OPEN_RECT array_pair_list T_CLOSE_RECT T_EQUAL expr 
              {
                Expression RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	ArrayCreation arrayCreation = new ArrayCreation(startleft, endright, parser.ast, list, false);
  	RESULT = new Assignment(startleft, exprright, parser.ast, arrayCreation, Assignment.OP_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 302: // expr_without_variable ::= variable T_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 303: // expr_without_variable ::= variable T_EQUAL T_REFERENCE variable 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int reftokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int reftokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object reftoken = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int refvarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int refvarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase refvar = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, refvarright, parser.ast, var, Assignment.OP_EQUAL, new Reference(reftokenleft, refvarright, parser.ast, refvar));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 304: // expr_without_variable ::= T_CLONE expr 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CloneExpression(sleft, exprright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 305: // expr_without_variable ::= variable T_PLUS_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_PLUS_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 306: // expr_without_variable ::= variable T_MINUS_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_MINUS_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 307: // expr_without_variable ::= variable T_MUL_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_MUL_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 308: // expr_without_variable ::= variable T_POW_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_POW_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 309: // expr_without_variable ::= variable T_DIV_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_DIV_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 310: // expr_without_variable ::= variable T_CONCAT_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_CONCAT_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 311: // expr_without_variable ::= variable T_MOD_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_MOD_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 312: // expr_without_variable ::= variable T_AND_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_AND_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 313: // expr_without_variable ::= variable T_OR_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_OR_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 314: // expr_without_variable ::= variable T_XOR_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_XOR_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 315: // expr_without_variable ::= variable T_SL_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_SL_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 316: // expr_without_variable ::= variable T_SR_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_SR_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 317: // expr_without_variable ::= variable T_COALESCE_EQUAL expr 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Assignment(varleft, exprright, parser.ast, var, Assignment.OP_COALESCE_EQUAL, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 318: // expr_without_variable ::= variable T_INC 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new PostfixExpression(varleft, tokenright, parser.ast, var, PostfixExpression.OP_INC);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 319: // expr_without_variable ::= T_INC variable 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new PrefixExpression(tokenleft, varright, parser.ast, var, PrefixExpression.OP_INC);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 320: // expr_without_variable ::= variable T_DEC 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new PostfixExpression(varleft, tokenright, parser.ast, var, PostfixExpression.OP_DEC);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 321: // expr_without_variable ::= T_DEC variable 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new PrefixExpression(tokenleft, varright, parser.ast, var, PrefixExpression.OP_DEC);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 322: // expr_without_variable ::= expr T_BOOLEAN_OR expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_BOOL_OR, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 323: // expr_without_variable ::= expr T_BOOLEAN_AND expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_BOOL_AND, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 324: // expr_without_variable ::= expr T_LOGICAL_OR expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_STRING_OR, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 325: // expr_without_variable ::= expr T_LOGICAL_AND expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_STRING_AND, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 326: // expr_without_variable ::= expr T_LOGICAL_XOR expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_STRING_XOR, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 327: // expr_without_variable ::= expr T_OR expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_OR, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 328: // expr_without_variable ::= expr T_REFERENCE expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_AND, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 329: // expr_without_variable ::= expr T_KOVA expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_XOR, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 330: // expr_without_variable ::= expr T_NEKUDA expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_CONCAT, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 331: // expr_without_variable ::= expr T_PLUS expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_PLUS, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 332: // expr_without_variable ::= expr T_MINUS expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_MINUS, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 333: // expr_without_variable ::= expr T_TIMES expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_MUL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 334: // expr_without_variable ::= expr T_POW expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_POW, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 335: // expr_without_variable ::= expr T_DIV expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_DIV, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 336: // expr_without_variable ::= expr T_PRECENT expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_MOD, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 337: // expr_without_variable ::= expr T_SL expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_SL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 338: // expr_without_variable ::= expr T_SR expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_SR, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 339: // expr_without_variable ::= T_PLUS expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UnaryOperation(tokenleft, exprright, parser.ast, expr, UnaryOperation.OP_PLUS);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 340: // expr_without_variable ::= T_MINUS expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UnaryOperation(tokenleft, exprright, parser.ast, expr, UnaryOperation.OP_MINUS);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 341: // expr_without_variable ::= T_NOT expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UnaryOperation(tokenleft, exprright, parser.ast, expr, UnaryOperation.OP_NOT);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 342: // expr_without_variable ::= T_TILDA expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new UnaryOperation(tokenleft, exprright, parser.ast, expr, UnaryOperation.OP_TILDA);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 343: // expr_without_variable ::= expr T_IS_IDENTICAL expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_IS_IDENTICAL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 344: // expr_without_variable ::= expr T_IS_NOT_IDENTICAL expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_IS_NOT_IDENTICAL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 345: // expr_without_variable ::= expr T_IS_EQUAL expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_IS_EQUAL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 346: // expr_without_variable ::= expr T_IS_NOT_EQUAL expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_IS_NOT_EQUAL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 347: // expr_without_variable ::= expr T_RGREATER expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_RGREATER, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 348: // expr_without_variable ::= expr T_IS_SMALLER_OR_EQUAL expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_IS_SMALLER_OR_EQUAL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 349: // expr_without_variable ::= expr T_LGREATER expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_LGREATER, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 350: // expr_without_variable ::= expr T_IS_GREATER_OR_EQUAL expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_IS_GREATER_OR_EQUAL, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 351: // expr_without_variable ::= expr T_SPACESHIP expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InfixExpression(expr1left, expr2right, parser.ast, expr1, InfixExpression.OP_SPACESHIP, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 352: // expr_without_variable ::= expr T_INSTANCEOF class_name_reference 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		ClassName className = (ClassName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new InstanceOfExpression(exprleft, classNameright, parser.ast, expr, className);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 353: // expr_without_variable ::= T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ParenthesisExpression(sleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 354: // expr_without_variable ::= new_expr 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		ClassInstanceCreation expr = (ClassInstanceCreation)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = expr;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 355: // expr_without_variable ::= yield_expr 
              {
                Expression RESULT =null;
  		int yieldleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int yieldright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		YieldExpression yield = (YieldExpression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = yield;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 356: // expr_without_variable ::= expr T_QUESTION_MARK expr T_NEKUDOTAIM expr 
              {
                Expression RESULT =null;
  		int condleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int condright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		Expression cond = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int ifTrueleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int ifTrueright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression ifTrue = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int ifFalseleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int ifFalseright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression ifFalse = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ConditionalExpression(condleft, ifFalseright, parser.ast, cond, ifTrue, ifFalse);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 357: // expr_without_variable ::= expr T_QUESTION_MARK T_NEKUDOTAIM expr 
              {
                Expression RESULT =null;
  		int condleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int condright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression cond = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int ifFalseleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int ifFalseright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression ifFalse = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ConditionalExpression(condleft, ifFalseright, parser.ast, cond, null, ifFalse);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 358: // expr_without_variable ::= expr T_COALESCE expr 
              {
                Expression RESULT =null;
  		int expr1left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int expr1right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression expr1 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int expr2left = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int expr2right = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr2 = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ConditionalExpression(expr1left, expr2right, parser.ast, expr1, expr2);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 359: // expr_without_variable ::= internal_functions_in_yacc 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = expr;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 360: // expr_without_variable ::= T_INT_CAST expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CastExpression(tokenleft, exprright, parser.ast, expr, CastExpression.TYPE_INT);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 361: // expr_without_variable ::= T_DOUBLE_CAST expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CastExpression(tokenleft, exprright, parser.ast, expr, CastExpression.TYPE_REAL);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 362: // expr_without_variable ::= T_STRING_CAST expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CastExpression(tokenleft, exprright, parser.ast, expr, CastExpression.TYPE_STRING);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 363: // expr_without_variable ::= T_ARRAY_CAST expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CastExpression(tokenleft, exprright, parser.ast, expr, CastExpression.TYPE_ARRAY);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 364: // expr_without_variable ::= T_OBJECT_CAST expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CastExpression(tokenleft, exprright, parser.ast, expr, CastExpression.TYPE_OBJECT);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 365: // expr_without_variable ::= T_BOOL_CAST expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CastExpression(tokenleft, exprright, parser.ast, expr, CastExpression.TYPE_BOOL);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 366: // expr_without_variable ::= T_UNSET_CAST expr 
              {
                Expression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new CastExpression(tokenleft, exprright, parser.ast, expr, CastExpression.TYPE_UNSET);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 367: // expr_without_variable ::= T_EXIT exit_expr 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List expList = new LinkedList();
  	if (expr != null) {
  		expList.add(expr);
  	}
  	RESULT = new FunctionInvocation(sleft, exprright, parser.ast,
  		new FunctionName(sleft, sright, parser.ast,
  			new Identifier(sleft, sright, parser.ast, s)), expList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 368: // expr_without_variable ::= T_AT expr 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new IgnoreError(sleft, exprright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 369: // expr_without_variable ::= scalar 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression scalar = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = scalar;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 370: // expr_without_variable ::= T_BACKQUATE backticks_expr T_BACKQUATE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new BackTickExpression(sleft, eright, parser.ast, list);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 371: // expr_without_variable ::= T_PRINT expr 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List expList = new LinkedList();
  	if (expr != null) {
  		expList.add(expr);
  	}
  	RESULT = new FunctionInvocation(sleft, exprright, parser.ast,
  		new FunctionName(sleft, sright, parser.ast,
  			new Identifier(sleft, sright, parser.ast, "print")), expList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 372: // expr_without_variable ::= T_FUNCTION is_reference T_OPEN_PARENTHESE parameter_list T_CLOSE_PARENTHESE lexical_vars return_type T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).value;
  		int isReferenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).left;
  		int isReferenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).right;
  		Boolean isReference = (Boolean)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).value;
  		int paramListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int paramListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		List paramList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int varsListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int varsListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List varsList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int returnTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int returnTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Identifier returnType = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int blockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int blockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object blockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int blockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int blockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object blockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new LambdaFunctionDeclaration(sleft, blockEndright, parser.ast, paramList, varsList,
  		new Block(blockStartleft, blockEndright, parser.ast, list), isReference.booleanValue(), false, -1, returnType);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 373: // expr_without_variable ::= T_STATIC T_FUNCTION is_reference T_OPEN_PARENTHESE parameter_list T_CLOSE_PARENTHESE lexical_vars return_type T_CURLY_OPEN inner_statement_list T_CURLY_CLOSE 
              {
                Expression RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-10)).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-10)).right;
  		String modifier = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-10)).value;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-9)).value;
  		int isReferenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).left;
  		int isReferenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).right;
  		Boolean isReference = (Boolean)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).value;
  		int paramListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int paramListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		List paramList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int varsListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int varsListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List varsList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int returnTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int returnTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Identifier returnType = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int blockStartleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int blockStartright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object blockStart = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int blockEndleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int blockEndright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object blockEnd = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new LambdaFunctionDeclaration(modifierleft, blockEndright, parser.ast, paramList, varsList,
  		new Block(blockStartleft, blockEndright, parser.ast, list), isReference.booleanValue(), true, returnType);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-10)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 374: // expr_without_variable ::= T_FN is_reference T_OPEN_PARENTHESE parameter_list T_CLOSE_PARENTHESE return_type T_DOUBLE_ARROW expr 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).value;
  		int isReferenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int isReferenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		Boolean isReference = (Boolean)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int paramListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int paramListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List paramList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int returnTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int returnTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Identifier returnType = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrowFunctionDeclaration(sleft, exprright, parser.ast, paramList,
  		expr, isReference.booleanValue(), false, returnType);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 375: // expr_without_variable ::= T_STATIC T_FN is_reference T_OPEN_PARENTHESE parameter_list T_CLOSE_PARENTHESE return_type T_DOUBLE_ARROW expr 
              {
                Expression RESULT =null;
  		int modifierleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).left;
  		int modifierright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).right;
  		String modifier = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)).value;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-7)).value;
  		int isReferenceleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).left;
  		int isReferenceright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).right;
  		Boolean isReference = (Boolean)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-6)).value;
  		int paramListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int paramListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		List paramList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int returnTypeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int returnTyperight = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Identifier returnType = (Identifier)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrowFunctionDeclaration(modifierleft, exprright, parser.ast, paramList,
  		expr, isReference.booleanValue(), true, returnType);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr_without_variable",53, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-8)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 376: // lexical_vars ::= 
              {
                List RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("lexical_vars",35, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 377: // lexical_vars ::= T_USE T_OPEN_PARENTHESE lexical_var_list T_CLOSE_PARENTHESE 
              {
                List RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("lexical_vars",35, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 378: // lexical_var_list ::= lexical_var_list T_COMMA lexical_var 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression var = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("lexical_var_list",36, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 379: // lexical_var_list ::= lexical_var 
              {
                List RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression var = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("lexical_var_list",36, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 380: // lexical_var ::= T_VARIABLE 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Variable(varleft, varright, parser.ast, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("lexical_var",37, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 381: // lexical_var ::= T_REFERENCE T_VARIABLE 
              {
                Expression RESULT =null;
  		int refleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int refright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object ref = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String var = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Reference(refleft, varright, parser.ast, new Variable(varleft, varright, parser.ast, var));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("lexical_var",37, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 382: // function_call ::= name T_OPEN_PARENTHESE function_call_parameter_list T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		NamespaceName list = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int parametersleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int parametersright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List parameters = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FunctionInvocation(listleft, eright, parser.ast,
  		new FunctionName(listleft, listright, parser.ast, list), parameters);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("function_call",54, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 383: // function_call ::= class_name T_PAAMAYIM_NEKUDOTAYIM member_name T_OPEN_PARENTHESE function_call_parameter_list T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		Expression className = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int reflectionNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int reflectionNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression reflectionName = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int parametersleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int parametersright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List parameters = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticMethodInvocation(classNameleft, eright, parser.ast, className,
  		new FunctionInvocation(reflectionNameleft, eright, parser.ast,
  			new FunctionName(reflectionNameleft, reflectionNameright, parser.ast, reflectionName), parameters));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("function_call",54, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 384: // function_call ::= variable_class_name T_PAAMAYIM_NEKUDOTAYIM member_name T_OPEN_PARENTHESE function_call_parameter_list T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		VariableBase className = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int reflectionNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int reflectionNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression reflectionName = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int parametersleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int parametersright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List parameters = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticMethodInvocation(classNameleft, eright, parser.ast, className,
  		new FunctionInvocation(reflectionNameleft, eright, parser.ast,
  			new FunctionName(reflectionNameleft, reflectionNameright, parser.ast, reflectionName), parameters));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("function_call",54, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 385: // function_call ::= callable_expr T_OPEN_PARENTHESE function_call_parameter_list T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		VariableBase expr = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int parametersleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int parametersright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List parameters = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FunctionInvocation(exprleft, eright, parser.ast,
  		new FunctionName(exprleft, exprright, parser.ast, expr), parameters);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("function_call",54, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 386: // class_name ::= T_STATIC 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Identifier(sleft, sright, parser.ast, "static");
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_name",78, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 387: // class_name ::= name 
              {
                Expression RESULT =null;
  		int nameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName name = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = name;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_name",78, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 388: // fully_qualified_class_name ::= namespace_name 
              {
                NamespaceName RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceName(listleft, listright, parser.ast, list, false, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("fully_qualified_class_name",83, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 389: // fully_qualified_class_name ::= T_NAMESPACE T_NS_SEPARATOR namespace_name 
              {
                NamespaceName RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceName(sleft, listright, parser.ast, list, false, true);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("fully_qualified_class_name",83, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 390: // fully_qualified_class_name ::= T_NS_SEPARATOR namespace_name 
              {
                NamespaceName RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new NamespaceName(sleft, listright, parser.ast, list, true, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("fully_qualified_class_name",83, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 391: // class_name_reference ::= class_name 
              {
                ClassName RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression className = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ClassName(classNameleft, classNameright, parser.ast, className);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_name_reference",114, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 392: // class_name_reference ::= new_variable 
              {
                ClassName RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase className = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ClassName(classNameleft, classNameright, parser.ast, className);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("class_name_reference",114, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 393: // exit_expr ::= 
              {
                Expression RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("exit_expr",55, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 394: // exit_expr ::= T_OPEN_PARENTHESE T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("exit_expr",55, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 395: // exit_expr ::= T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		
  	RESULT = expr;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("exit_expr",55, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 396: // backticks_expr ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("backticks_expr",71, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 397: // backticks_expr ::= T_ENCAPSED_AND_WHITESPACE 
              {
                List RESULT =null;
  		int stringleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int stringright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String string = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	Scalar scalar = new Scalar(stringleft, stringright, parser.ast, string == null ? "" : string, string == null ? Scalar.TYPE_UNKNOWN : Scalar.TYPE_STRING);
  	list.add(scalar);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("backticks_expr",71, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 398: // backticks_expr ::= encaps_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("backticks_expr",71, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 399: // ctor_arguments ::= 
              {
                List RESULT =null;
  		
  	RESULT = new LinkedList();
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("ctor_arguments",56, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 400: // ctor_arguments ::= T_OPEN_PARENTHESE function_call_parameter_list T_CLOSE_PARENTHESE 
              {
                List RESULT =null;
  		int paramsListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int paramsListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List paramsList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		
  	RESULT = paramsList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("ctor_arguments",56, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 401: // scalar ::= T_LNUMBER 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String scalar = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, scalar, Scalar.TYPE_INT);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 402: // scalar ::= T_DNUMBER 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String scalar = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, scalar, Scalar.TYPE_REAL);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 403: // scalar ::= T_BNUMBER 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String scalar = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, scalar, Scalar.TYPE_BIN);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 404: // scalar ::= T_LINE 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object scalar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__LINE__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 405: // scalar ::= T_FILE 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String scalar = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__FILE__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 406: // scalar ::= T_DIR 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object scalar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__DIR__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 407: // scalar ::= T_CLASS_C 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object scalar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__CLASS__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 408: // scalar ::= T_TRAIT_C 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object scalar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__TRAIT__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 409: // scalar ::= T_METHOD_C 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object scalar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__METHOD__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 410: // scalar ::= T_FUNC_C 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object scalar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__FUNCTION__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 411: // scalar ::= T_NS_C 
              {
                Expression RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object scalar = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, "__NAMESPACE__", Scalar.TYPE_SYSTEM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 412: // scalar ::= T_START_HEREDOC T_ENCAPSED_AND_WHITESPACE T_END_HEREDOC 
              {
                Expression RESULT =null;
  		int labelleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int labelright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String label = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int stringleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int stringright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String string = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(new Scalar(stringleft, stringright, parser.ast, string == null ? "" : string, string == null ? Scalar.TYPE_UNKNOWN : Scalar.TYPE_STRING));
  	RESULT = new Quote(labelleft, eright, parser.ast, list, label.charAt(0) == '\'' ? Quote.QT_NOWDOC : Quote.QT_HEREDOC);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 413: // scalar ::= T_START_HEREDOC T_END_HEREDOC 
              {
                Expression RESULT =null;
  		int labelleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int labelright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String label = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Quote(labelleft, eright, parser.ast, new LinkedList(), label.charAt(0) == '\'' ? Quote.QT_NOWDOC : Quote.QT_HEREDOC);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 414: // scalar ::= T_QUATE encaps_list T_QUATE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Quote(sleft, eright, parser.ast, list, Quote.QT_QUOTE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 415: // scalar ::= T_SINGLE_QUATE encaps_list T_SINGLE_QUATE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Quote(sleft, eright, parser.ast, list, Quote.QT_SINGLE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 416: // scalar ::= T_START_HEREDOC encaps_list T_END_HEREDOC 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Quote(sleft, eright, parser.ast, list, Quote.QT_HEREDOC);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 417: // scalar ::= dereferencable_scalar 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase s = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = s;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 418: // scalar ::= constant 
              {
                Expression RESULT =null;
  		int refleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int refright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase ref = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = ref;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("scalar",57, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 419: // possible_comma ::= 
              {
                String RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("possible_comma",58, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 420: // possible_comma ::= T_COMMA 
              {
                String RESULT =null;
  		
  	RESULT = "";
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("possible_comma",58, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 421: // expr ::= variable 
              {
                Expression RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		 RESULT = var; 
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr",59, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 422: // expr ::= expr_without_variable 
              {
                Expression RESULT =null;
  		int ewvleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int ewvright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression ewv = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		 RESULT = ewv; 
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("expr",59, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 423: // variable ::= callable_variable 
              {
                VariableBase RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = var;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("variable",93, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 424: // variable ::= static_member 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase s = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = s;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("variable",93, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 425: // variable ::= dereferencable T_OBJECT_OPERATOR property_name 
              {
                VariableBase RESULT =null;
  		int dispatchleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int dispatchright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase dispatch = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int propertyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int propertyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable property = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FieldAccess(dispatchleft, propertyright, parser.ast, dispatch, property);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("variable",93, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 426: // dereferencable ::= variable 
              {
                VariableBase RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase v = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("dereferencable",95, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 427: // dereferencable ::= T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ParenthesisExpression(sleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("dereferencable",95, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 428: // dereferencable ::= dereferencable_scalar 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase s = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = s;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("dereferencable",95, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 429: // callable_expr ::= callable_variable 
              {
                VariableBase RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase v = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_expr",96, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 430: // callable_expr ::= T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ParenthesisExpression(sleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_expr",96, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 431: // callable_expr ::= dereferencable_scalar 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase s = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = s;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_expr",96, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 432: // dereferencable_scalar ::= T_ARRAY T_OPEN_PARENTHESE array_pair_list T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String start = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayCreation(startleft, endright, parser.ast, list, true);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("dereferencable_scalar",97, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 433: // dereferencable_scalar ::= T_OPEN_RECT array_pair_list T_CLOSE_RECT 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayCreation(sleft, eright, parser.ast, list, false);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("dereferencable_scalar",97, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 434: // dereferencable_scalar ::= T_CONSTANT_ENCAPSED_STRING 
              {
                VariableBase RESULT =null;
  		int scalarleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int scalarright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String scalar = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(scalarleft, scalarright, parser.ast, scalar, Scalar.TYPE_STRING);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("dereferencable_scalar",97, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 435: // callable_variable ::= simple_variable 
              {
                VariableBase RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = var;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_variable",94, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 436: // callable_variable ::= dereferencable T_OPEN_RECT optional_expr T_CLOSE_RECT 
              {
                VariableBase RESULT =null;
  		int dleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int dright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		VariableBase d = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int fleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int fright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object f = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int dimleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int dimright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression dim = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayAccess(dleft, eright, parser.ast, d, dim, ArrayAccess.VARIABLE_ARRAY);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_variable",94, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 437: // callable_variable ::= constant T_OPEN_RECT optional_expr T_CLOSE_RECT 
              {
                VariableBase RESULT =null;
  		int dleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int dright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		VariableBase d = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int fleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int fright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object f = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int dimleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int dimright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression dim = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayAccess(dleft, eright, parser.ast, d, dim, ArrayAccess.VARIABLE_ARRAY);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_variable",94, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 438: // callable_variable ::= dereferencable T_CURLY_OPEN expr T_CURLY_CLOSE 
              {
                VariableBase RESULT =null;
  		int dleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int dright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		VariableBase d = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int dimleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int dimright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression dim = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayAccess(dleft, eright, parser.ast, d, dim, ArrayAccess.VARIABLE_HASHTABLE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_variable",94, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 439: // callable_variable ::= dereferencable T_OBJECT_OPERATOR property_name T_OPEN_PARENTHESE function_call_parameter_list T_CLOSE_PARENTHESE 
              {
                VariableBase RESULT =null;
  		int chleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int chright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		VariableBase ch = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int memberPropertyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int memberPropertyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Variable memberProperty = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object start = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int paramsListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int paramsListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List paramsList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new MethodInvocation(chleft, endright, parser.ast, ch, new FunctionInvocation(memberPropertyleft, endright, parser.ast,
  			new FunctionName(memberPropertyleft, memberPropertyright, parser.ast, memberProperty), paramsList));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_variable",94, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 440: // callable_variable ::= function_call 
              {
                VariableBase RESULT =null;
  		int cleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int cright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase c = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = c;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("callable_variable",94, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 441: // constant ::= name 
              {
                VariableBase RESULT =null;
  		int nameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int nameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		NamespaceName name = (NamespaceName)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = detectScalar(name);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("constant",110, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 442: // constant ::= class_name T_PAAMAYIM_NEKUDOTAYIM identifier 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression className = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int constNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int constNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String constName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticConstantAccess(classNameleft, constNameright, parser.ast, className, new Identifier(constNameleft, constNameright, parser.ast, constName));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("constant",110, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 443: // constant ::= variable_class_name T_PAAMAYIM_NEKUDOTAYIM identifier 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase className = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int constNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int constNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String constName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticConstantAccess(classNameleft, constNameright, parser.ast, className, new Identifier(constNameleft, constNameright, parser.ast, constName));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("constant",110, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 444: // static_member ::= class_name T_PAAMAYIM_NEKUDOTAYIM simple_variable 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression className = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticFieldAccess(classNameleft, varright, parser.ast, className, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("static_member",111, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 445: // static_member ::= variable_class_name T_PAAMAYIM_NEKUDOTAYIM simple_variable 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase className = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticFieldAccess(classNameleft, varright, parser.ast, className, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("static_member",111, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 446: // new_variable ::= simple_variable 
              {
                VariableBase RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable v = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_variable",112, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 447: // new_variable ::= new_variable T_OPEN_RECT optional_expr T_CLOSE_RECT 
              {
                VariableBase RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		VariableBase varName = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int indexleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int indexright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression index = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayAccess(varNameleft, eright, parser.ast, varName, index, ArrayAccess.VARIABLE_ARRAY);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_variable",112, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 448: // new_variable ::= new_variable T_CURLY_OPEN expr T_CURLY_CLOSE 
              {
                VariableBase RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		VariableBase varName = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int indexleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int indexright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression index = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayAccess(varNameleft, eright, parser.ast, varName, index, ArrayAccess.VARIABLE_HASHTABLE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_variable",112, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 449: // new_variable ::= new_variable T_OBJECT_OPERATOR property_name 
              {
                VariableBase RESULT =null;
  		int dispatcherleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int dispatcherright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase dispatcher = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int propertyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int propertyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable property = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FieldAccess(dispatcherleft, propertyright, parser.ast, dispatcher, property);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_variable",112, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 450: // new_variable ::= class_name T_PAAMAYIM_NEKUDOTAYIM simple_variable 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression className = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticFieldAccess(classNameleft, varright, parser.ast, className, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_variable",112, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 451: // new_variable ::= new_variable T_PAAMAYIM_NEKUDOTAYIM simple_variable 
              {
                VariableBase RESULT =null;
  		int classNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int classNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		VariableBase className = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable var = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new StaticFieldAccess(classNameleft, varright, parser.ast, className, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("new_variable",112, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 452: // variable_class_name ::= dereferencable 
              {
                VariableBase RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = var;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("variable_class_name",60, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 453: // optional_expr ::= 
              {
                Expression RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("optional_expr",61, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 454: // optional_expr ::= expr 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = expr;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("optional_expr",61, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 455: // member_name ::= identifier 
              {
                Expression RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Variable(varNameleft, varNameright, parser.ast, varName);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_name",62, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 456: // member_name ::= T_CURLY_OPEN expr T_CURLY_CLOSE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_name",62, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 457: // member_name ::= simple_variable 
              {
                Expression RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable v = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("member_name",62, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 458: // property_name ::= string_st 
              {
                Variable RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Variable(varNameleft, varNameright, parser.ast, varName);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("property_name",63, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 459: // property_name ::= T_CURLY_OPEN expr T_CURLY_CLOSE 
              {
                Variable RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("property_name",63, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 460: // property_name ::= simple_variable 
              {
                Variable RESULT =null;
  		int vleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int vright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Variable v = (Variable)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = v;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("property_name",63, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 461: // assignment_list ::= non_empty_assignment_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("assignment_list",64, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 462: // non_empty_assignment_list ::= possible_array_pair 
              {
                List RESULT =null;
  		int pairleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int pairright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression pair = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	if (pair != null) {
  		list.add(pair);
  	} else {
  		list.add(new EmptyExpression(pairright, parser.ast));
  	}
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_assignment_list",65, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 463: // non_empty_assignment_list ::= non_empty_assignment_list T_COMMA possible_array_pair 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int pairleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int pairright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression pair = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (pair != null) {
  		list.add(pair);
  	} else {
  		list.add(new EmptyExpression(pairright, parser.ast));
  	}
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_assignment_list",65, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 464: // array_pair_list ::= non_empty_array_pair_list 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair_list",68, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 465: // possible_array_pair ::= 
              {
                Expression RESULT =null;
  		
  	RESULT = null;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("possible_array_pair",66, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 466: // possible_array_pair ::= array_pair 
              {
                Expression RESULT =null;
  		int pairleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int pairright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression pair = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = pair;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("possible_array_pair",66, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 467: // non_empty_array_pair_list ::= possible_array_pair 
              {
                List RESULT =null;
  		int pairleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int pairright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression pair = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	if (pair != null) {
  		list.add(pair);
  	}
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_array_pair_list",69, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 468: // non_empty_array_pair_list ::= non_empty_array_pair_list T_COMMA possible_array_pair 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int pairleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int pairright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression pair = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (pair != null) {
  		list.add(pair);
  	} else {
  		list.add(new EmptyExpression(pairright, parser.ast));
  	}
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("non_empty_array_pair_list",69, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 469: // array_pair ::= expr T_DOUBLE_ARROW expr 
              {
                Expression RESULT =null;
  		int keyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int keyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression key = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int valueleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int valueright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression value = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayElement(keyleft, valueright, parser.ast, key, value);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair",67, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 470: // array_pair ::= expr 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = expr;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair",67, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 471: // array_pair ::= expr T_DOUBLE_ARROW T_REFERENCE variable 
              {
                Expression RESULT =null;
  		int keyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int keyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Expression key = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayElement(keyleft, varright, parser.ast, key, new Reference(sleft, varright, parser.ast, var));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair",67, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 472: // array_pair ::= T_REFERENCE variable 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Reference(sleft, varright, parser.ast, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair",67, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 473: // array_pair ::= T_ELLIPSIS expr 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArraySpreadElement(sleft, exprright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair",67, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 474: // array_pair ::= expr T_DOUBLE_ARROW T_LIST T_OPEN_PARENTHESE assignment_list T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String start = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	ListVariable listVariable = new ListVariable(startleft, endright, parser.ast, list);
  	RESULT = new ArrayElement(exprleft, endright, parser.ast, expr, listVariable);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair",67, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 475: // array_pair ::= T_LIST T_OPEN_PARENTHESE assignment_list T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int startleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int startright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String start = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int endleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int endright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object end = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ListVariable(startleft, endright, parser.ast, list);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("array_pair",67, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 476: // encaps_list ::= encaps_list encaps_var 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_list",70, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 477: // encaps_list ::= encaps_list T_ENCAPSED_AND_WHITESPACE 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int stringleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int stringright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String string = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(new Scalar(stringleft, stringright, parser.ast, string == null ? "" : string, string == null ? Scalar.TYPE_UNKNOWN : Scalar.TYPE_STRING));
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_list",70, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 478: // encaps_list ::= encaps_list T_CHARACTER 
              {
                List RESULT =null;
  		int listleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int listright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List list = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int stringleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int stringright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String string = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	list.add(new Scalar(stringleft, stringright, parser.ast, string, Scalar.TYPE_STRING));
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_list",70, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 479: // encaps_list ::= encaps_var 
              {
                List RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_list",70, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 480: // encaps_list ::= T_ENCAPSED_AND_WHITESPACE encaps_var 
              {
                List RESULT =null;
  		int stringleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int stringright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String string = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(new Scalar(stringleft, stringright, parser.ast, string == null ? "" : string, string == null ? Scalar.TYPE_UNKNOWN : Scalar.TYPE_STRING));
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_list",70, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 481: // encaps_var ::= T_CURLY_OPEN_WITH_DOLAR variable T_CURLY_CLOSE 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, eright, parser.ast, var);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var",72, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 482: // encaps_var ::= T_VARIABLE 
              {
                VariableBase RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Variable(varNameleft, varNameright, parser.ast, varName);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var",72, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 483: // encaps_var ::= T_VARIABLE T_OPEN_RECT encaps_var_offset T_CLOSE_RECT 
              {
                VariableBase RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int indexleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int indexright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression index = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ArrayAccess(varNameleft, eright, parser.ast, new Variable(varNameleft, varNameright, parser.ast, varName), index, ArrayAccess.VARIABLE_ARRAY);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var",72, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 484: // encaps_var ::= T_VARIABLE T_OBJECT_OPERATOR string_st 
              {
                VariableBase RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int stringleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int stringright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String string = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FieldAccess(varNameleft, stringright, ast, new Variable(varNameleft, varNameright, parser.ast, varName), new Variable(stringleft, stringright, parser.ast, string));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var",72, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 485: // encaps_var ::= T_DOLLAR_OPEN_CURLY_BRACES expr T_CURLY_CLOSE 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, eright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var",72, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 486: // encaps_var ::= T_DOLLAR_OPEN_CURLY_BRACES T_STRING_VARNAME T_CURLY_CLOSE 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, eright, parser.ast, new Variable(varNameleft, varNameright, parser.ast, varName));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var",72, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 487: // encaps_var ::= T_DOLLAR_OPEN_CURLY_BRACES T_STRING_VARNAME T_OPEN_RECT expr T_CLOSE_RECT T_CURLY_CLOSE 
              {
                VariableBase RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)).value;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int indexleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int indexright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression index = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int cleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int cright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object c = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new ReflectionVariable(sleft, eright, parser.ast, new ArrayAccess(varNameleft, cright, parser.ast,
  		new Variable(varNameleft, varNameright, parser.ast, varName), index, ArrayAccess.VARIABLE_ARRAY));
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var",72, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-5)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 488: // encaps_var_offset ::= string_st 
              {
                Expression RESULT =null;
  		int stringleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int stringright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String string = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Identifier(stringleft, stringright, parser.ast, string);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var_offset",73, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 489: // encaps_var_offset ::= T_NUM_STRING 
              {
                Expression RESULT =null;
  		int numleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int numright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String num = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Scalar(numleft, numright, parser.ast, num, Scalar.TYPE_REAL);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var_offset",73, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 490: // encaps_var_offset ::= T_VARIABLE 
              {
                Expression RESULT =null;
  		int varNameleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varNameright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String varName = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Variable(varNameleft, varNameright, parser.ast, varName);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("encaps_var_offset",73, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 491: // internal_functions_in_yacc ::= T_ISSET T_OPEN_PARENTHESE isset_variables possible_comma T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)).value;
  		int varListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List varList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int commaleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int commaright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String comma = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	if (comma != null) {
  		varList.add(new EmptyExpression(commaright, parser.ast));
  	}
  	RESULT = new FunctionInvocation(sleft, eright, parser.ast,
  		new FunctionName(sleft, sright, parser.ast,
  			new Identifier(sleft, sright, parser.ast, "isset")), varList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-4)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 492: // internal_functions_in_yacc ::= T_EMPTY T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	LinkedList exprList = new LinkedList();
  	exprList.add(expr);
  	RESULT = new FunctionInvocation(sleft, eright, parser.ast,
  		new FunctionName(sleft, sright, parser.ast, new Identifier(sleft, sright, parser.ast, "empty")), exprList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 493: // internal_functions_in_yacc ::= T_INCLUDE expr 
              {
                Expression RESULT =null;
  		int includeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int includeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String include = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Include(includeleft, exprright, parser.ast, expr, Include.IT_INCLUDE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 494: // internal_functions_in_yacc ::= T_INCLUDE_ONCE expr 
              {
                Expression RESULT =null;
  		int includeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int includeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String include = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Include(includeleft, exprright, parser.ast, expr, Include.IT_INCLUDE_ONCE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 495: // internal_functions_in_yacc ::= T_EVAL T_OPEN_PARENTHESE expr T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String s = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	LinkedList exprList = new LinkedList();
  	exprList.add(expr);
  	RESULT = new FunctionInvocation(sleft, eright, parser.ast,
  		new FunctionName(sleft, sright, parser.ast, new Identifier(sleft, sright, parser.ast, "eval")), exprList);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 496: // internal_functions_in_yacc ::= T_REQUIRE expr 
              {
                Expression RESULT =null;
  		int includeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int includeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String include = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Include(includeleft, exprright, parser.ast, expr, Include.IT_REQUIRE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 497: // internal_functions_in_yacc ::= T_REQUIRE_ONCE expr 
              {
                Expression RESULT =null;
  		int includeleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int includeright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String include = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new Include(includeleft, exprright, parser.ast, expr, Include.IT_REQUIRE_ONCE);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 498: // internal_functions_in_yacc ::= T_HALT_COMPILER T_OPEN_PARENTHESE function_call_parameter_list T_CLOSE_PARENTHESE 
              {
                Expression RESULT =null;
  		int sleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int sright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		Object s = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int parametersleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int parametersright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		List parameters = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int eleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int eright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Object e = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new FunctionInvocation(sleft, eright, parser.ast,
  		new FunctionName(sleft, sright, parser.ast,
  			new Identifier(sleft, sright, parser.ast, "__halt_compiler")), parameters);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("internal_functions_in_yacc",74, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 499: // isset_variables ::= variable 
              {
                List RESULT =null;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	List list = new LinkedList();
  	list.add(var);
  	RESULT = list;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("isset_variables",113, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 500: // isset_variables ::= isset_variables T_COMMA variable 
              {
                List RESULT =null;
  		int varListleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int varListright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		List varList = (List)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int varleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int varright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		VariableBase var = (VariableBase)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	varList.add(var);
  	RESULT = varList;
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("isset_variables",113, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 501: // string_st ::= T_STRING 
              {
                String RESULT =null;
  		int valueleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int valueright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String value = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		 RESULT = value; 
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("string_st",75, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 502: // string_st ::= T_DEFINE 
              {
                String RESULT =null;
  		int valueleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int valueright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String value = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		 RESULT = value; 
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("string_st",75, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 503: // yield_expr ::= T_YIELD 
              {
                YieldExpression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new YieldExpression(tokenleft, tokenright, parser.ast);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("yield_expr",131, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 504: // yield_expr ::= T_YIELD expr 
              {
                YieldExpression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new YieldExpression(tokenleft, exprright, parser.ast, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("yield_expr",131, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 505: // yield_expr ::= T_YIELD expr T_DOUBLE_ARROW expr 
              {
                YieldExpression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).right;
  		String token = (String)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)).value;
  		int keyleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).left;
  		int keyright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).right;
  		Expression key = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-2)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new YieldExpression(tokenleft, exprright, parser.ast, key, expr);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("yield_expr",131, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-3)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /*. . . . . . . . . . . . . . . . . . . .*/
            case 506: // yield_expr ::= T_YIELD_FROM expr 
              {
                YieldExpression RESULT =null;
  		int tokenleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).left;
  		int tokenright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).right;
  		Object token = (Object)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)).value;
  		int exprleft = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).left;
  		int exprright = ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()).right;
  		Expression expr = (Expression)((java_cup.runtime.Symbol) CUP$PHPAstParser$stack.peek()).value;
  		
  	RESULT = new YieldExpression(tokenleft, exprright, parser.ast, expr, YieldExpression.OP_FROM);
  
                CUP$PHPAstParser$result = parser.getSymbolFactory().newSymbol("yield_expr",131, ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.elementAt(CUP$PHPAstParser$top-1)), ((java_cup.runtime.Symbol)CUP$PHPAstParser$stack.peek()), RESULT);
              }
            return CUP$PHPAstParser$result;
  
            /* . . . . . .*/
            default:
              throw new Exception(
                 "Invalid action number "+CUP$PHPAstParser$act_num+"found in internal parse table");
  
          }
      } /* end of method */
  
    /** Method splitting the generated action code into several parts. */
    public final java_cup.runtime.Symbol CUP$PHPAstParser$do_action(
      int                        CUP$PHPAstParser$act_num,
      java_cup.runtime.lr_parser CUP$PHPAstParser$parser,
      java.util.Stack            CUP$PHPAstParser$stack,
      int                        CUP$PHPAstParser$top)
      throws java.lang.Exception
      {
        /* select the action handler based on the action number */
        switch (CUP$PHPAstParser$act_num/300)
          {
            /*. . . . . . . . 0 < #action < 300. . . . . . . . . . . .*/
            case 0: 
                return CUP$PHPAstParser$do_action_part00000000(
                                 CUP$PHPAstParser$act_num,
                                 CUP$PHPAstParser$parser,
                                 CUP$PHPAstParser$stack,
                                 CUP$PHPAstParser$top);
            /*. . . . . . . . 300 < #action < 600. . . . . . . . . . . .*/
            case 1: 
                return CUP$PHPAstParser$do_action_part00000001(
                                 CUP$PHPAstParser$act_num,
                                 CUP$PHPAstParser$parser,
                                 CUP$PHPAstParser$stack,
                                 CUP$PHPAstParser$top);
            /* . . . no valid action number: . . .*/
            default:
              throw new Exception("Invalid action number found in internal parse table");
  
          }      /* end of switch */
      }
  }
  
  }
  