From f375faea308f60a8ff9d5b97770d79a69566ad52 Mon Sep 17 00:00:00 2001
From: jgeldart <jgeldart@91dfdad4-c543-0410-b26a-7d79dded8189>
Date: Fri, 4 Apr 2008 18:07:26 +0000
Subject: [PATCH] Made the extensional and intensional image syntax a lot nicer
 to use.

---
 .../googlecode/opennars/parser/loan/Loan.cf   |   4 +-
 .../googlecode/opennars/parser/loan/Loan.pdf  | Bin 44023 -> 43743 bytes
 .../opennars/parser/loan/Loan/Loan.cup        |  55 +-
 .../parser/loan/Loan/PrettyPrinter.java       |   6 +-
 .../opennars/parser/loan/Loan/Yylex           |  27 +-
 .../opennars/parser/loan/Loan/Yylex.java      | 403 +++-----
 .../opennars/parser/loan/Loan/parser.java     | 916 +++++++++---------
 .../opennars/parser/loan/Loan/sym.java        |  13 +-
 8 files changed, 653 insertions(+), 771 deletions(-)

diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan.cf b/open-nars/com/googlecode/opennars/parser/loan/Loan.cf
index 97ab2d5..b42e51e 100644
--- a/open-nars/com/googlecode/opennars/parser/loan/Loan.cf
+++ b/open-nars/com/googlecode/opennars/parser/loan/Loan.cf
@@ -51,8 +51,8 @@ TrmExDif.	Term1 ::= Term1 "-" Term2 ;									-- Extensional difference
 TrmInDif.	Term1 ::= Term1 "~" Term2 ;									-- Intensional difference
 --TrmProd.	Term2 ::= Term2 "*" Term3 ;									-- Product
 --TrmProd.	Term2 ::= [Prod] ;
-TrmExImg.	Term2 ::= Term "extension" "(" [Term] "_|_" [Term] ")" ;	-- Extensional image
-TrmInImg.	Term2 ::= Term "intension" "(" [Term] "_|_" [Term] ")" ;	-- Intensional image
+TrmExImg.	Term2 ::= Term "(" [Term] "/" [Term] ")" ;	-- Extensional image
+TrmInImg.	Term2 ::= Term "(" [Term] "\\" [Term] ")" ;	-- Intensional image
 TrmExSet.	Term3 ::= "{" [Term] "}" ;									-- Extensional set
 TrmInSet.	Term3 ::= "[" [Term] "]" ;									-- Intensional set
 TrmProd.	Term3 ::= "(" [Term] ")" ;
diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan.pdf b/open-nars/com/googlecode/opennars/parser/loan/Loan.pdf
index 4dfc3fd0c8b29e8cb551582ee94e77dbfa17b65b..93f19f74d14507d552a80416c012ff8db1053220 100644
GIT binary patch
delta 4859
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

delta 5130
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
E08VF6YybcN

diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan/Loan.cup b/open-nars/com/googlecode/opennars/parser/loan/Loan/Loan.cup
index 5a2f448..34a369c 100644
--- a/open-nars/com/googlecode/opennars/parser/loan/Loan/Loan.cup
+++ b/open-nars/com/googlecode/opennars/parser/loan/Loan/Loan.cup
@@ -71,22 +71,21 @@ terminal _SYMB_26;    //   &
 terminal _SYMB_27;    //   |
 terminal _SYMB_28;    //   -
 terminal _SYMB_29;    //   ~
-terminal _SYMB_30;    //   _|_
-terminal _SYMB_31;    //   {
-terminal _SYMB_32;    //   }
-terminal _SYMB_33;    //   [
-terminal _SYMB_34;    //   ]
-terminal _SYMB_35;    //   #
-terminal _SYMB_36;    //   :
-terminal _SYMB_37;    //   %
-terminal _SYMB_38;    //   extension
+terminal _SYMB_30;    //   /
+terminal _SYMB_31;    //   \
+terminal _SYMB_32;    //   {
+terminal _SYMB_33;    //   }
+terminal _SYMB_34;    //   [
+terminal _SYMB_35;    //   ]
+terminal _SYMB_36;    //   #
+terminal _SYMB_37;    //   :
+terminal _SYMB_38;    //   %
 terminal _SYMB_39;    //   false
 terminal _SYMB_40;    //   future
-terminal _SYMB_41;    //   intension
-terminal _SYMB_42;    //   not
-terminal _SYMB_43;    //   past
-terminal _SYMB_44;    //   present
-terminal _SYMB_45;    //   true
+terminal _SYMB_41;    //   not
+terminal _SYMB_42;    //   past
+terminal _SYMB_43;    //   present
+terminal _SYMB_44;    //   true
 
 terminal String _STRING_;
 
@@ -131,9 +130,9 @@ Stm1 ::= Stm1:p_1 _SYMB_15 Stm2:p_3  {: RESULT = new com.googlecode.opennars.par
   | Stm1:p_1 _SYMB_18 Stm2:p_3  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmSeq(p_1,p_3); :}
   | Stm2:p_1  {: RESULT = p_1; :}
 ;
-Stm2 ::= _SYMB_42 Stm3:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmNot(p_2); :} 
-  | _SYMB_43 Stm3:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmPst(p_2); :}
-  | _SYMB_44 Stm3:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmPres(p_2); :}
+Stm2 ::= _SYMB_41 Stm3:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmNot(p_2); :} 
+  | _SYMB_42 Stm3:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmPst(p_2); :}
+  | _SYMB_43 Stm3:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmPres(p_2); :}
   | _SYMB_40 Stm3:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.StmFut(p_2); :}
   | Stm3:p_1  {: RESULT = p_1; :}
 ;
@@ -154,12 +153,12 @@ Term1 ::= Term1:p_1 _SYMB_28 Term2:p_3  {: RESULT = new com.googlecode.opennars.
   | Term1:p_1 _SYMB_29 Term2:p_3  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInDif(p_1,p_3); :}
   | Term2:p_1  {: RESULT = p_1; :}
 ;
-Term2 ::= Term:p_1 _SYMB_38 _SYMB_24 ListTerm:p_4 _SYMB_30 ListTerm:p_6 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExImg(p_1,p_4,p_6); :} 
-  | Term:p_1 _SYMB_41 _SYMB_24 ListTerm:p_4 _SYMB_30 ListTerm:p_6 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInImg(p_1,p_4,p_6); :}
+Term2 ::= Term:p_1 _SYMB_24 ListTerm:p_3 _SYMB_30 ListTerm:p_5 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExImg(p_1,p_3,p_5); :} 
+  | Term:p_1 _SYMB_24 ListTerm:p_3 _SYMB_31 ListTerm:p_5 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInImg(p_1,p_3,p_5); :}
   | Term3:p_1  {: RESULT = p_1; :}
 ;
-Term3 ::= _SYMB_31 ListTerm:p_2 _SYMB_32  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExSet(p_2); :} 
-  | _SYMB_33 ListTerm:p_2 _SYMB_34  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInSet(p_2); :}
+Term3 ::= _SYMB_32 ListTerm:p_2 _SYMB_33  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExSet(p_2); :} 
+  | _SYMB_34 ListTerm:p_2 _SYMB_35  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInSet(p_2); :}
   | _SYMB_24 ListTerm:p_2 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmProd(p_2); :}
   | Literal:p_1  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmLit(p_1); :}
   | _SYMB_24 Stm:p_2 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmStm(p_2); :}
@@ -178,20 +177,20 @@ URIRef ::= URILit:p_1  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.
 ;
 Literal ::= _SYMB_6 _IDENT_:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitQVar(p_2); :} 
   | _SYMB_6  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitQVarAn(); :}
-  | _SYMB_35 _IDENT_:p_2 _SYMB_24 ListIdent:p_4 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitSVarD(p_2,p_4); :}
-  | _SYMB_35 _IDENT_:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitSVarI(p_2); :}
+  | _SYMB_36 _IDENT_:p_2 _SYMB_24 ListIdent:p_4 _SYMB_25  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitSVarD(p_2,p_4); :}
+  | _SYMB_36 _IDENT_:p_2  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitSVarI(p_2); :}
   | URIRef:p_1  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitURI(p_1); :}
   | _INTEGER_:p_1  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitInt(p_1); :}
   | _DOUBLE_:p_1  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitDbl(p_1); :}
   | _STRING_:p_1  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitString(p_1); :}
-  | _SYMB_45  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitTrue(); :}
+  | _SYMB_44  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitTrue(); :}
   | _SYMB_39  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitFalse(); :}
 ;
-NSPrefix ::= _IDENT_:p_1 _SYMB_36  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.NSPrefix1(p_1); :} 
-  | _SYMB_36  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.NSPrefix2(); :}
+NSPrefix ::= _IDENT_:p_1 _SYMB_37  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.NSPrefix1(p_1); :} 
+  | _SYMB_37  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.NSPrefix2(); :}
 ;
 TruthValue ::=  /* empty */  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TruthE(); :} 
-  | _SYMB_37 _DOUBLE_:p_2 _SYMB_37  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TruthF(p_2); :}
-  | _SYMB_37 _DOUBLE_:p_2 _SYMB_17 _DOUBLE_:p_4 _SYMB_37  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TruthFC(p_2,p_4); :}
+  | _SYMB_38 _DOUBLE_:p_2 _SYMB_38  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TruthF(p_2); :}
+  | _SYMB_38 _DOUBLE_:p_2 _SYMB_17 _DOUBLE_:p_4 _SYMB_38  {: RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TruthFC(p_2,p_4); :}
 ;
 
diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan/PrettyPrinter.java b/open-nars/com/googlecode/opennars/parser/loan/Loan/PrettyPrinter.java
index 0bb7940..84f4b4e 100644
--- a/open-nars/com/googlecode/opennars/parser/loan/Loan/PrettyPrinter.java
+++ b/open-nars/com/googlecode/opennars/parser/loan/Loan/PrettyPrinter.java
@@ -594,10 +594,9 @@ public class PrettyPrinter
        com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExImg _trmeximg = (com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExImg) foo;
        if (_i_ > 2) render(_L_PAREN);
        pp(_trmeximg.term_, 0);
-       render("extension");
        render("(");
        pp(_trmeximg.listterm_1, 0);
-       render("_|_");
+       render("/");
        pp(_trmeximg.listterm_2, 0);
        render(")");
        if (_i_ > 2) render(_R_PAREN);
@@ -607,10 +606,9 @@ public class PrettyPrinter
        com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInImg _trminimg = (com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInImg) foo;
        if (_i_ > 2) render(_L_PAREN);
        pp(_trminimg.term_, 0);
-       render("intension");
        render("(");
        pp(_trminimg.listterm_1, 0);
-       render("_|_");
+       render("\\");
        pp(_trminimg.listterm_2, 0);
        render(")");
        if (_i_ > 2) render(_R_PAREN);
diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex b/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex
index 26b5a5b..5149a5b 100644
--- a/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex
+++ b/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex
@@ -54,22 +54,21 @@ IDENT = ({LETTER}|{DIGIT}|['_])
 <YYINITIAL>\| { return new Symbol(sym._SYMB_27); }
 <YYINITIAL>- { return new Symbol(sym._SYMB_28); }
 <YYINITIAL>~ { return new Symbol(sym._SYMB_29); }
-<YYINITIAL>_\|_ { return new Symbol(sym._SYMB_30); }
-<YYINITIAL>\{ { return new Symbol(sym._SYMB_31); }
-<YYINITIAL>\} { return new Symbol(sym._SYMB_32); }
-<YYINITIAL>\[ { return new Symbol(sym._SYMB_33); }
-<YYINITIAL>\] { return new Symbol(sym._SYMB_34); }
-<YYINITIAL># { return new Symbol(sym._SYMB_35); }
-<YYINITIAL>: { return new Symbol(sym._SYMB_36); }
-<YYINITIAL>% { return new Symbol(sym._SYMB_37); }
-<YYINITIAL>extension { return new Symbol(sym._SYMB_38); }
+<YYINITIAL>/ { return new Symbol(sym._SYMB_30); }
+<YYINITIAL>\\ { return new Symbol(sym._SYMB_31); }
+<YYINITIAL>\{ { return new Symbol(sym._SYMB_32); }
+<YYINITIAL>\} { return new Symbol(sym._SYMB_33); }
+<YYINITIAL>\[ { return new Symbol(sym._SYMB_34); }
+<YYINITIAL>\] { return new Symbol(sym._SYMB_35); }
+<YYINITIAL># { return new Symbol(sym._SYMB_36); }
+<YYINITIAL>: { return new Symbol(sym._SYMB_37); }
+<YYINITIAL>% { return new Symbol(sym._SYMB_38); }
 <YYINITIAL>false { return new Symbol(sym._SYMB_39); }
 <YYINITIAL>future { return new Symbol(sym._SYMB_40); }
-<YYINITIAL>intension { return new Symbol(sym._SYMB_41); }
-<YYINITIAL>not { return new Symbol(sym._SYMB_42); }
-<YYINITIAL>past { return new Symbol(sym._SYMB_43); }
-<YYINITIAL>present { return new Symbol(sym._SYMB_44); }
-<YYINITIAL>true { return new Symbol(sym._SYMB_45); }
+<YYINITIAL>not { return new Symbol(sym._SYMB_41); }
+<YYINITIAL>past { return new Symbol(sym._SYMB_42); }
+<YYINITIAL>present { return new Symbol(sym._SYMB_43); }
+<YYINITIAL>true { return new Symbol(sym._SYMB_44); }
 <YYINITIAL>"//"[^\n]*\n { /* BNFC single-line comment */ }
 <YYINITIAL>"/*" { yybegin(COMMENT); }
 <COMMENT>"*/" { yybegin(YYINITIAL); }
diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex.java b/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex.java
index bc6b050..f875a84 100644
--- a/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex.java
+++ b/open-nars/com/googlecode/opennars/parser/loan/Loan/Yylex.java
@@ -64,12 +64,12 @@ public class Yylex implements java_cup.runtime.Scanner {
 	private final int CHAR = 2;
 	private final int yy_state_dtrans[] = {
 		0,
-		117,
-		118,
-		118,
-		118,
-		119,
-		120
+		111,
+		112,
+		112,
+		112,
+		113,
+		114
 	};
 	private void yybegin (int state) {
 		yy_lexical_state = state;
@@ -286,25 +286,25 @@ public class Yylex implements java_cup.runtime.Scanner {
 		/* 63 */ YY_NO_ANCHOR,
 		/* 64 */ YY_NO_ANCHOR,
 		/* 65 */ YY_NO_ANCHOR,
-		/* 66 */ YY_NO_ANCHOR,
-		/* 67 */ YY_NOT_ACCEPT,
+		/* 66 */ YY_NOT_ACCEPT,
+		/* 67 */ YY_NO_ANCHOR,
 		/* 68 */ YY_NO_ANCHOR,
 		/* 69 */ YY_NO_ANCHOR,
-		/* 70 */ YY_NO_ANCHOR,
-		/* 71 */ YY_NOT_ACCEPT,
-		/* 72 */ YY_NO_ANCHOR,
-		/* 73 */ YY_NOT_ACCEPT,
-		/* 74 */ YY_NO_ANCHOR,
-		/* 75 */ YY_NOT_ACCEPT,
-		/* 76 */ YY_NO_ANCHOR,
-		/* 77 */ YY_NOT_ACCEPT,
-		/* 78 */ YY_NO_ANCHOR,
-		/* 79 */ YY_NOT_ACCEPT,
-		/* 80 */ YY_NO_ANCHOR,
+		/* 70 */ YY_NOT_ACCEPT,
+		/* 71 */ YY_NO_ANCHOR,
+		/* 72 */ YY_NOT_ACCEPT,
+		/* 73 */ YY_NO_ANCHOR,
+		/* 74 */ YY_NOT_ACCEPT,
+		/* 75 */ YY_NO_ANCHOR,
+		/* 76 */ YY_NOT_ACCEPT,
+		/* 77 */ YY_NO_ANCHOR,
+		/* 78 */ YY_NOT_ACCEPT,
+		/* 79 */ YY_NO_ANCHOR,
+		/* 80 */ YY_NOT_ACCEPT,
 		/* 81 */ YY_NOT_ACCEPT,
-		/* 82 */ YY_NO_ANCHOR,
+		/* 82 */ YY_NOT_ACCEPT,
 		/* 83 */ YY_NOT_ACCEPT,
-		/* 84 */ YY_NO_ANCHOR,
+		/* 84 */ YY_NOT_ACCEPT,
 		/* 85 */ YY_NOT_ACCEPT,
 		/* 86 */ YY_NOT_ACCEPT,
 		/* 87 */ YY_NOT_ACCEPT,
@@ -335,100 +335,67 @@ public class Yylex implements java_cup.runtime.Scanner {
 		/* 112 */ YY_NOT_ACCEPT,
 		/* 113 */ YY_NOT_ACCEPT,
 		/* 114 */ YY_NOT_ACCEPT,
-		/* 115 */ YY_NOT_ACCEPT,
+		/* 115 */ YY_NO_ANCHOR,
 		/* 116 */ YY_NOT_ACCEPT,
 		/* 117 */ YY_NOT_ACCEPT,
 		/* 118 */ YY_NOT_ACCEPT,
 		/* 119 */ YY_NOT_ACCEPT,
-		/* 120 */ YY_NOT_ACCEPT,
-		/* 121 */ YY_NO_ANCHOR,
-		/* 122 */ YY_NOT_ACCEPT,
-		/* 123 */ YY_NOT_ACCEPT,
-		/* 124 */ YY_NOT_ACCEPT,
-		/* 125 */ YY_NOT_ACCEPT,
+		/* 120 */ YY_NO_ANCHOR,
+		/* 121 */ YY_NOT_ACCEPT,
+		/* 122 */ YY_NO_ANCHOR,
+		/* 123 */ YY_NO_ANCHOR,
+		/* 124 */ YY_NO_ANCHOR,
+		/* 125 */ YY_NO_ANCHOR,
 		/* 126 */ YY_NO_ANCHOR,
-		/* 127 */ YY_NOT_ACCEPT,
+		/* 127 */ YY_NO_ANCHOR,
 		/* 128 */ YY_NO_ANCHOR,
 		/* 129 */ YY_NO_ANCHOR,
 		/* 130 */ YY_NO_ANCHOR,
 		/* 131 */ YY_NO_ANCHOR,
 		/* 132 */ YY_NO_ANCHOR,
 		/* 133 */ YY_NO_ANCHOR,
-		/* 134 */ YY_NO_ANCHOR,
-		/* 135 */ YY_NO_ANCHOR,
-		/* 136 */ YY_NO_ANCHOR,
-		/* 137 */ YY_NO_ANCHOR,
-		/* 138 */ YY_NO_ANCHOR,
-		/* 139 */ YY_NO_ANCHOR,
-		/* 140 */ YY_NO_ANCHOR,
-		/* 141 */ YY_NO_ANCHOR,
-		/* 142 */ YY_NO_ANCHOR,
-		/* 143 */ YY_NO_ANCHOR,
-		/* 144 */ YY_NO_ANCHOR,
-		/* 145 */ YY_NO_ANCHOR,
-		/* 146 */ YY_NO_ANCHOR,
-		/* 147 */ YY_NO_ANCHOR,
-		/* 148 */ YY_NO_ANCHOR,
-		/* 149 */ YY_NO_ANCHOR,
-		/* 150 */ YY_NO_ANCHOR,
-		/* 151 */ YY_NO_ANCHOR,
-		/* 152 */ YY_NO_ANCHOR,
-		/* 153 */ YY_NO_ANCHOR,
-		/* 154 */ YY_NO_ANCHOR
+		/* 134 */ YY_NO_ANCHOR
 	};
 	private int yy_cmap[] = unpackFromString(1,65538,
-"47:9,52,44,47,52,43,47:18,52,19,48,38,47,40,26,51,32,33,45,47,28,29,6,23,49" +
-":10,39,27,22,20,21,18,1,50:26,31,24,37,47,35,46,3,2,50,15,5,9,50:2,10,50:2," +
-"16,12,41,13,7,50,8,4,14,42,50:2,11,17,50,36,25,30,34,47:65,50:23,47,50:31,4" +
-"7,50:8,47:65280,0:2")[0];
+"46:9,51,43,46,51,42,46:18,51,19,47,37,46,39,26,50,32,33,44,46,28,29,6,23,48" +
+":10,38,27,22,20,21,18,1,49:26,31,24,36,46,50,45,3,2,49,15,5,9,49:2,10,49:2," +
+"16,12,41,13,7,49,8,4,14,40,49:2,11,17,49,35,25,30,34,46:65,49:23,46,49:31,4" +
+"6,49:8,46:65280,0:2")[0];
 
-	private int yy_rmap[] = unpackFromString(1,155,
-"0,1,2,1:3,3,4,1:2,5,6,1:11,7,1:18,2,8,2:2,1,2,1,2,1:2,2,1,2:2,1:11,9,10,11," +
-"12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36," +
-"37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,11,53,54,55,56,57,58,59,60," +
-"61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85," +
-"86,87,88,89,90,91,92,93,94,95")[0];
+	private int yy_rmap[] = unpackFromString(1,135,
+"0,1,2,1:3,3,1,4,5,1:2,6,7,1:11,8,1:17,2,9,2:2,1,2,1,2,1:2,2,1:12,10,11,12,1" +
+"3,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,3" +
+"8,39,40,41,42,43,44,45,46,47,48,12,49,50,51,52,53,54,55,56,57,58,59,60,61,6" +
+"2,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77")[0];
 
-	private int yy_nxt[][] = unpackFromString(96,53,
-"1,67,2:3,153,3,134,2,141,154,2:3,135,2:3,4,5,71,-1,73,75,-1,6,7,8,9,10,11,1" +
-"2,13,14,15,77,16,17,18,19,20,121,2,21:2,-1:3,22,23,2,-1,21,-1:55,2:4,-1,2:1" +
-"1,-1:17,2,-1:5,2:2,-1:6,2:3,-1:26,26,-1:53,27,-1:55,97,-1:52,98,-1:29,100,-" +
-"1:42,23,-1:8,108,-1:43,43,-1:5,79,-1:4,81,-1:2,83,-1:2,85,-1,86,-1:39,2:4,-" +
-"1,2:7,42,2:3,-1:17,2,-1:5,2:2,-1:6,2:3,-1:50,69,-1:26,58,-1:49,87,-1:2,88,8" +
-"9,90,-1:29,2:4,-1,2:7,44,2:3,-1:17,2,-1:5,2:2,-1:6,2:3,-1:2,91:19,92,24,-1," +
-"93,-1,94,91:3,95,-1,91:5,-1,91:9,-1,91,-1,91:4,-1:2,2:3,45,-1,2:11,-1:17,2," +
-"-1:5,2:2,-1:6,2:3,-1:24,96,-1:21,25,-1:9,2:3,47,-1,2:11,-1:17,2,-1:5,2:2,-1" +
-":6,2:3,-1:26,99,-1:29,2:3,49,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:4,101,-1:" +
-"51,2:4,-1,2:7,52,2:3,-1:17,2,-1:5,2:2,-1:6,2:3,-1:9,123,-1:46,2:4,-1,2:11,-" +
-"1:17,2,-1:5,54,2,-1:6,2:3,-1:13,122,-1:42,2:4,-1,2:11,-1:17,2,-1:5,55,2,-1:" +
-"6,2:3,-1:8,127,-1:50,102,-1:68,28,-1:52,29,-1:52,30,-1:52,31,-1:32,91:20,24" +
-",-1,91,-1:2,91:4,-1,91:5,-1,91:9,-1,91,-1,91:4,-1,91:20,32,-1,91,-1:2,91:4," +
-"-1,91:5,-1,91:9,-1,91,-1,91:4,-1,91:20,33,-1,91,-1:2,91:4,-1,91:5,-1,91:9,-" +
-"1,91,-1,91:4,-1:21,34,-1:32,91:20,35,-1,91,-1:2,91:4,-1,91:5,-1,91:9,-1,91," +
-"-1,91:4,-1,96:43,36,96:8,-1:21,37,-1:9,38,-1:42,39,-1:9,40,-1:56,41,-1:66,4" +
-"3,-1:7,103,-1:64,107,-1:41,46,-1:56,109,-1:56,124,-1:47,125,-1:47,110,-1:78" +
-",111,-1:19,69,-1:13,112,-1:59,48,-1:46,50,-1:55,51,-1:52,115,-1:51,116,-1:4" +
-"7,53,-1:44,1,56:42,-1,57,70,56:7,1,-1:52,1,59:23,60,59:18,-1:2,59:3,61,59:4" +
-",1,62:13,63,62:9,64,62:16,65,62,-1:2,62:3,66,62:4,-1:2,2:4,-1,2:6,68,2:4,-1" +
-":17,2,-1:5,2:2,-1:6,2:3,-1:8,105,-1:50,104,-1:55,113,-1:47,114,-1:51,2:2,72" +
-",2,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:6,106,-1:49,2:4,-1,2:11,-1:17,2,-1:" +
-"5,2,74,-1:6,2:3,-1:3,2:2,76,2,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1" +
-",2,78,2:9,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:11,-1:17,2,-1:5,80,2,-1:6" +
-",2:3,-1:3,2:4,-1,2:6,82,2:4,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:6,84,2:" +
-"4,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2,126,2:2,-1,2,146,2:9,-1:17,2,-1:5,2:2,-1" +
-":6,2:3,-1:3,2:4,-1,2,128,2:9,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:9,129," +
-"2,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:11,-1:17,2,-1:5,2,130,-1:6,2:3,-1" +
-":3,2:3,131,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:3,132,2:7,-1:17," +
-"2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:3,133,2:7,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3," +
-"2,136,2:2,-1,2:11,-1:17,2,-1:5,2,142,-1:6,2:3,-1:3,2:4,-1,2:7,137,2:3,-1:17" +
-",2,-1:5,2:2,-1:6,2:3,-1:3,2:2,138,2,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3," +
-"2:2,139,2,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:2,140,2,-1,2:11,-1:17,2," +
-"-1:5,2:2,-1:6,2:3,-1:3,2:3,143,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-" +
-"1,2:11,-1:17,2,-1:5,144,2,-1:6,2:3,-1:3,2:4,-1,2:11,-1:17,2,-1:5,145,2,-1:6" +
-",2:3,-1:3,2:3,147,-1,2:11,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:3,148,-1,2:11,-1" +
-":17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:7,149,2:3,-1:17,2,-1:5,2:2,-1:6,2:3,-" +
-"1:3,2:4,-1,2:7,150,2:3,-1:17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:4,151,2:6,-1" +
-":17,2,-1:5,2:2,-1:6,2:3,-1:3,2:4,-1,2:11,-1:17,2,-1:5,152,2,-1:6,2:3,-1");
+	private int yy_nxt[][] = unpackFromString(78,52,
+"1,66,2:4,3,126,2,131,2:4,127,2:3,4,5,70,-1,72,6,7,8,9,10,11,12,13,14,15,16," +
+"17,18,19,20,21,22,2,115,23:2,-1:3,24,25,2,-1,23,-1:54,2:4,-1,2:11,-1:22,2:2" +
+",-1:6,2:3,-1:24,91,-1:20,27,-1:32,28,-1:52,29,-1:54,92,-1:51,93,-1:28,94,-1" +
+":41,25,-1:8,102,-1:42,44,-1:5,74,-1:4,76,-1:2,78,-1:2,80,-1,81,-1:38,2:4,-1" +
+",2:7,43,2:3,-1:22,2:2,-1:6,2:3,-1:49,68,-1:26,57,-1:48,82,-1:2,83,84,85,-1:" +
+"28,2:4,-1,2:7,45,2:3,-1:22,2:2,-1:6,2:3,-1:2,86:19,87,26,-1,88,-1,89,86:3,9" +
+"0,-1,86:4,-1,86:9,-1,86,-1,86:4,-1:2,2:3,46,-1,2:11,-1:22,2:2,-1:6,2:3,-1:4" +
+",95,-1:50,2:3,48,-1,2:11,-1:22,2:2,-1:6,2:3,-1:9,117,-1:45,2:3,50,-1,2:11,-" +
+"1:22,2:2,-1:6,2:3,-1:13,116,-1:41,2:4,-1,2:7,53,2:3,-1:22,2:2,-1:6,2:3,-1:8" +
+",121,-1:49,96,-1:67,30,-1:51,31,-1:51,32,-1:51,33,-1:31,86:20,26,-1,86,-1:2" +
+",86:4,-1,86:4,-1,86:9,-1,86,-1,86:4,-1,86:20,34,-1,86,-1:2,86:4,-1,86:4,-1," +
+"86:9,-1,86,-1,86:4,-1,86:20,35,-1,86,-1:2,86:4,-1,86:4,-1,86:9,-1,86,-1,86:" +
+"4,-1:21,36,-1:31,86:20,37,-1,86,-1:2,86:4,-1,86:4,-1,86:9,-1,86,-1,86:4,-1," +
+"91:42,38,91:8,-1:21,39,-1:9,40,-1:41,41,-1:9,42,-1:68,44,-1:7,97,-1:63,101," +
+"-1:40,47,-1:55,103,-1:55,118,-1:46,119,-1:46,104,-1:77,105,-1:18,68,-1:13,1" +
+"06,-1:58,49,-1:45,51,-1:54,52,-1:51,109,-1:50,110,-1:46,54,-1:43,1,55:41,-1" +
+",56,69,55:7,1,-1:51,1,58:23,59,58:17,-1:2,58:3,60,58:4,1,61:13,62,61:9,63,6" +
+"1:16,64,-1:2,61:3,65,61:4,-1:2,2:4,-1,2:6,67,2:4,-1:22,2:2,-1:6,2:3,-1:8,99" +
+",-1:49,98,-1:54,107,-1:46,108,-1:50,2:2,71,2,-1,2:11,-1:22,2:2,-1:6,2:3,-1:" +
+"6,100,-1:48,2:4,-1,2:11,-1:22,73,2,-1:6,2:3,-1:3,2:2,75,2,-1,2:11,-1:22,2:2" +
+",-1:6,2:3,-1:3,2:4,-1,2,77,2:9,-1:22,2:2,-1:6,2:3,-1:3,2:4,-1,2:11,-1:22,2," +
+"79,-1:6,2:3,-1:3,2,120,2:2,-1,2,134,2:9,-1:22,2:2,-1:6,2:3,-1:3,2:4,-1,2,12" +
+"2,2:9,-1:22,2:2,-1:6,2:3,-1:3,2:4,-1,2:9,123,2,-1:22,2:2,-1:6,2:3,-1:3,2:4," +
+"-1,2:11,-1:22,124,2,-1:6,2:3,-1:3,2:3,125,-1,2:11,-1:22,2:2,-1:6,2:3,-1:3,2" +
+",128,2:2,-1,2:11,-1:22,132,2,-1:6,2:3,-1:3,2:4,-1,2:7,129,2:3,-1:22,2:2,-1:" +
+"6,2:3,-1:3,2:2,130,2,-1,2:11,-1:22,2:2,-1:6,2:3,-1:3,2:3,133,-1,2:11,-1:22," +
+"2:2,-1:6,2:3,-1");
 
 	public java_cup.runtime.Symbol next_token ()
 		throws java.io.IOException {
@@ -495,203 +462,203 @@ public class Yylex implements java_cup.runtime.Scanner {
 					case -6:
 						break;
 					case 6:
-						{ return new Symbol(sym._SYMB_27); }
+						{ return new Symbol(sym._SYMB_30); }
 					case -7:
 						break;
 					case 7:
-						{ return new Symbol(sym._SYMB_26); }
+						{ return new Symbol(sym._SYMB_31); }
 					case -8:
 						break;
 					case 8:
-						{ return new Symbol(sym._SYMB_17); }
+						{ return new Symbol(sym._SYMB_27); }
 					case -9:
 						break;
 					case 9:
-						{ return new Symbol(sym._SYMB_18); }
+						{ return new Symbol(sym._SYMB_26); }
 					case -10:
 						break;
 					case 10:
-						{ return new Symbol(sym._SYMB_28); }
+						{ return new Symbol(sym._SYMB_17); }
 					case -11:
 						break;
 					case 11:
-						{ return new Symbol(sym._SYMB_32); }
+						{ return new Symbol(sym._SYMB_18); }
 					case -12:
 						break;
 					case 12:
-						{ return new Symbol(sym._SYMB_33); }
+						{ return new Symbol(sym._SYMB_28); }
 					case -13:
 						break;
 					case 13:
-						{ return new Symbol(sym._SYMB_24); }
+						{ return new Symbol(sym._SYMB_33); }
 					case -14:
 						break;
 					case 14:
-						{ return new Symbol(sym._SYMB_25); }
+						{ return new Symbol(sym._SYMB_34); }
 					case -15:
 						break;
 					case 15:
-						{ return new Symbol(sym._SYMB_29); }
+						{ return new Symbol(sym._SYMB_24); }
 					case -16:
 						break;
 					case 16:
-						{ return new Symbol(sym._SYMB_31); }
+						{ return new Symbol(sym._SYMB_25); }
 					case -17:
 						break;
 					case 17:
-						{ return new Symbol(sym._SYMB_34); }
+						{ return new Symbol(sym._SYMB_29); }
 					case -18:
 						break;
 					case 18:
-						{ return new Symbol(sym._SYMB_35); }
+						{ return new Symbol(sym._SYMB_32); }
 					case -19:
 						break;
 					case 19:
-						{ return new Symbol(sym._SYMB_36); }
+						{ return new Symbol(sym._SYMB_35); }
 					case -20:
 						break;
 					case 20:
-						{ return new Symbol(sym._SYMB_37); }
+						{ return new Symbol(sym._SYMB_36); }
 					case -21:
 						break;
 					case 21:
-						{ /* ignore white space. */ }
+						{ return new Symbol(sym._SYMB_37); }
 					case -22:
 						break;
 					case 22:
-						{ yybegin(STRING); }
+						{ return new Symbol(sym._SYMB_38); }
 					case -23:
 						break;
 					case 23:
-						{ return new Symbol(sym._INTEGER_, new Integer(yytext())); }
+						{ /* ignore white space. */ }
 					case -24:
 						break;
 					case 24:
-						{ return new Symbol(sym.URILit, yytext().intern()); }
+						{ yybegin(STRING); }
 					case -25:
 						break;
 					case 25:
-						{ yybegin(COMMENT); }
+						{ return new Symbol(sym._INTEGER_, new Integer(yytext())); }
 					case -26:
 						break;
 					case 26:
-						{ return new Symbol(sym._SYMB_16); }
+						{ return new Symbol(sym.URILit, yytext().intern()); }
 					case -27:
 						break;
 					case 27:
-						{ return new Symbol(sym._SYMB_15); }
+						{ yybegin(COMMENT); }
 					case -28:
 						break;
 					case 28:
-						{ return new Symbol(sym._SYMB_8); }
+						{ return new Symbol(sym._SYMB_16); }
 					case -29:
 						break;
 					case 29:
-						{ return new Symbol(sym._SYMB_10); }
+						{ return new Symbol(sym._SYMB_15); }
 					case -30:
 						break;
 					case 30:
-						{ return new Symbol(sym._SYMB_11); }
+						{ return new Symbol(sym._SYMB_8); }
 					case -31:
 						break;
 					case 31:
-						{ return new Symbol(sym._SYMB_12); }
+						{ return new Symbol(sym._SYMB_10); }
 					case -32:
 						break;
 					case 32:
-						{ return new Symbol(sym._SYMB_9); }
+						{ return new Symbol(sym._SYMB_11); }
 					case -33:
 						break;
 					case 33:
-						{ return new Symbol(sym._SYMB_13); }
+						{ return new Symbol(sym._SYMB_12); }
 					case -34:
 						break;
 					case 34:
-						{ return new Symbol(sym._SYMB_14); }
+						{ return new Symbol(sym._SYMB_9); }
 					case -35:
 						break;
 					case 35:
-						{ return new Symbol(sym._SYMB_20); }
+						{ return new Symbol(sym._SYMB_13); }
 					case -36:
 						break;
 					case 36:
-						{ /* BNFC single-line comment */ }
+						{ return new Symbol(sym._SYMB_14); }
 					case -37:
 						break;
 					case 37:
-						{ return new Symbol(sym._SYMB_19); }
+						{ return new Symbol(sym._SYMB_20); }
 					case -38:
 						break;
 					case 38:
-						{ return new Symbol(sym._SYMB_22); }
+						{ /* BNFC single-line comment */ }
 					case -39:
 						break;
 					case 39:
-						{ return new Symbol(sym._SYMB_21); }
+						{ return new Symbol(sym._SYMB_19); }
 					case -40:
 						break;
 					case 40:
-						{ return new Symbol(sym._SYMB_23); }
+						{ return new Symbol(sym._SYMB_22); }
 					case -41:
 						break;
 					case 41:
-						{ return new Symbol(sym._SYMB_30); }
+						{ return new Symbol(sym._SYMB_21); }
 					case -42:
 						break;
 					case 42:
-						{ return new Symbol(sym._SYMB_42); }
+						{ return new Symbol(sym._SYMB_23); }
 					case -43:
 						break;
 					case 43:
-						{ return new Symbol(sym._DOUBLE_, new Double(yytext())); }
+						{ return new Symbol(sym._SYMB_41); }
 					case -44:
 						break;
 					case 44:
-						{ return new Symbol(sym._SYMB_43); }
+						{ return new Symbol(sym._DOUBLE_, new Double(yytext())); }
 					case -45:
 						break;
 					case 45:
-						{ return new Symbol(sym._SYMB_45); }
+						{ return new Symbol(sym._SYMB_42); }
 					case -46:
 						break;
 					case 46:
-						{ return new Symbol(sym._SYMB_0); }
+						{ return new Symbol(sym._SYMB_44); }
 					case -47:
 						break;
 					case 47:
-						{ return new Symbol(sym._SYMB_39); }
+						{ return new Symbol(sym._SYMB_0); }
 					case -48:
 						break;
 					case 48:
-						{ return new Symbol(sym._SYMB_4); }
+						{ return new Symbol(sym._SYMB_39); }
 					case -49:
 						break;
 					case 49:
-						{ return new Symbol(sym._SYMB_40); }
+						{ return new Symbol(sym._SYMB_4); }
 					case -50:
 						break;
 					case 50:
-						{ return new Symbol(sym._SYMB_2); }
+						{ return new Symbol(sym._SYMB_40); }
 					case -51:
 						break;
 					case 51:
-						{ return new Symbol(sym._SYMB_3); }
+						{ return new Symbol(sym._SYMB_2); }
 					case -52:
 						break;
 					case 52:
-						{ return new Symbol(sym._SYMB_44); }
+						{ return new Symbol(sym._SYMB_3); }
 					case -53:
 						break;
 					case 53:
-						{ return new Symbol(sym._SYMB_5); }
+						{ return new Symbol(sym._SYMB_43); }
 					case -54:
 						break;
 					case 54:
-						{ return new Symbol(sym._SYMB_38); }
+						{ return new Symbol(sym._SYMB_5); }
 					case -55:
 						break;
 					case 55:
-						{ return new Symbol(sym._SYMB_41); }
+						{ }
 					case -56:
 						break;
 					case 56:
@@ -699,201 +666,133 @@ public class Yylex implements java_cup.runtime.Scanner {
 					case -57:
 						break;
 					case 57:
-						{ }
+						{ yybegin(YYINITIAL); }
 					case -58:
 						break;
 					case 58:
-						{ yybegin(YYINITIAL); }
+						{ pstring += yytext(); }
 					case -59:
 						break;
 					case 59:
-						{ pstring += yytext(); }
+						{ yybegin(ESCAPED); }
 					case -60:
 						break;
 					case 60:
-						{ yybegin(ESCAPED); }
+						{ String foo = pstring; pstring = new String(); yybegin(YYINITIAL); return new Symbol(sym._STRING_, foo.intern()); }
 					case -61:
 						break;
 					case 61:
-						{ String foo = pstring; pstring = new String(); yybegin(YYINITIAL); return new Symbol(sym._STRING_, foo.intern()); }
+						{ pstring += yytext(); yybegin(STRING); }
 					case -62:
 						break;
 					case 62:
-						{ pstring += yytext(); yybegin(STRING); }
+						{ pstring += "\t"; yybegin(STRING); }
 					case -63:
 						break;
 					case 63:
-						{ pstring += "\t"; yybegin(STRING); }
+						{ pstring += "\\"; yybegin(STRING); }
 					case -64:
 						break;
 					case 64:
-						{ pstring += "\\"; yybegin(STRING); }
+						{ pstring +=  "\n"; yybegin(STRING); }
 					case -65:
 						break;
 					case 65:
-						{ pstring +=  "\n"; yybegin(STRING); }
+						{ pstring += "\""; yybegin(STRING); }
 					case -66:
 						break;
-					case 66:
-						{ pstring += "\""; yybegin(STRING); }
+					case 67:
+						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -67:
 						break;
 					case 68:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
+						{ return new Symbol(sym._DOUBLE_, new Double(yytext())); }
 					case -68:
 						break;
 					case 69:
-						{ return new Symbol(sym._DOUBLE_, new Double(yytext())); }
+						{ }
 					case -69:
 						break;
-					case 70:
-						{ }
+					case 71:
+						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -70:
 						break;
-					case 72:
+					case 73:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -71:
 						break;
-					case 74:
+					case 75:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -72:
 						break;
-					case 76:
+					case 77:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -73:
 						break;
-					case 78:
+					case 79:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -74:
 						break;
-					case 80:
+					case 115:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -75:
 						break;
-					case 82:
+					case 120:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -76:
 						break;
-					case 84:
+					case 122:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -77:
 						break;
-					case 121:
+					case 123:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -78:
 						break;
-					case 126:
+					case 124:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -79:
 						break;
-					case 128:
+					case 125:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -80:
 						break;
-					case 129:
+					case 126:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -81:
 						break;
-					case 130:
+					case 127:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -82:
 						break;
-					case 131:
+					case 128:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -83:
 						break;
-					case 132:
+					case 129:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -84:
 						break;
-					case 133:
+					case 130:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -85:
 						break;
-					case 134:
+					case 131:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -86:
 						break;
-					case 135:
+					case 132:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -87:
 						break;
-					case 136:
+					case 133:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -88:
 						break;
-					case 137:
+					case 134:
 						{ return new Symbol(sym._IDENT_, yytext().intern()); }
 					case -89:
 						break;
-					case 138:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -90:
-						break;
-					case 139:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -91:
-						break;
-					case 140:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -92:
-						break;
-					case 141:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -93:
-						break;
-					case 142:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -94:
-						break;
-					case 143:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -95:
-						break;
-					case 144:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -96:
-						break;
-					case 145:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -97:
-						break;
-					case 146:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -98:
-						break;
-					case 147:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -99:
-						break;
-					case 148:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -100:
-						break;
-					case 149:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -101:
-						break;
-					case 150:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -102:
-						break;
-					case 151:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -103:
-						break;
-					case 152:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -104:
-						break;
-					case 153:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -105:
-						break;
-					case 154:
-						{ return new Symbol(sym._IDENT_, yytext().intern()); }
-					case -106:
-						break;
 					default:
 						yy_error(YY_E_INTERNAL,false);
 					case -1:
diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan/parser.java b/open-nars/com/googlecode/opennars/parser/loan/Loan/parser.java
index 961061d..30ab0b9 100644
--- a/open-nars/com/googlecode/opennars/parser/loan/Loan/parser.java
+++ b/open-nars/com/googlecode/opennars/parser/loan/Loan/parser.java
@@ -1,14 +1,14 @@
 
 //----------------------------------------------------
 // The following code was generated by CUP v0.10k
-// Fri Apr 04 05:03:03 BST 2008
+// Fri Apr 04 18:55:20 BST 2008
 //----------------------------------------------------
 
 package com.googlecode.opennars.parser.loan.Loan;
 
 
 /** CUP v0.10k generated parser.
-  * @version Fri Apr 04 05:03:03 BST 2008
+  * @version Fri Apr 04 18:55:20 BST 2008
   */
 public class parser extends java_cup.runtime.lr_parser {
 
@@ -35,7 +35,7 @@ public class parser extends java_cup.runtime.lr_parser {
     "\002\012\005\000\002\012\006\000\002\012\003\000\002" +
     "\012\005\000\002\013\005\000\002\013\005\000\002\013" +
     "\003\000\002\014\005\000\002\014\005\000\002\014\003" +
-    "\000\002\015\011\000\002\015\011\000\002\015\003\000" +
+    "\000\002\015\010\000\002\015\010\000\002\015\003\000" +
     "\002\016\005\000\002\016\005\000\002\016\005\000\002" +
     "\016\003\000\002\016\005\000\002\016\005\000\002\017" +
     "\002\000\002\017\003\000\002\017\005\000\002\020\002" +
@@ -52,392 +52,383 @@ public class parser extends java_cup.runtime.lr_parser {
   /** Parse-action table. */
   protected static final short[][] _action_table = 
     unpackFromStrings(new String[] {
-    "\000\223\000\060\002\ufffd\004\006\006\ufffd\007\ufffd\010" +
-    "\ufffd\011\ufffd\012\ufffd\034\ufffd\043\ufffd\045\ufffd\047\ufffd" +
-    "\050\ufffd\053\ufffd\054\ufffd\056\ufffd\057\ufffd\060\ufffd\061" +
-    "\ufffd\062\ufffd\063\ufffd\064\ufffd\065\ufffd\066\ufffd\001\002" +
+    "\000\217\000\060\002\ufffd\004\006\006\ufffd\007\ufffd\010" +
+    "\ufffd\011\ufffd\012\ufffd\034\ufffd\044\ufffd\046\ufffd\050\ufffd" +
+    "\051\ufffd\053\ufffd\054\ufffd\055\ufffd\056\ufffd\057\ufffd\060" +
+    "\ufffd\061\ufffd\062\ufffd\063\ufffd\064\ufffd\065\ufffd\001\002" +
     "\000\056\002\ufffd\006\ufffd\007\ufffd\010\ufffd\011\ufffd\012" +
-    "\ufffd\034\ufffd\043\ufffd\045\ufffd\047\ufffd\050\ufffd\053\ufffd" +
-    "\054\ufffd\056\ufffd\057\ufffd\060\ufffd\061\ufffd\062\ufffd\063" +
-    "\ufffd\064\ufffd\065\ufffd\066\ufffd\001\002\000\004\002\224" +
-    "\001\002\000\004\066\222\001\002\000\056\002\uffff\006" +
-    "\040\007\035\010\033\011\032\012\031\034\041\043\020" +
-    "\045\014\047\012\050\011\053\045\054\030\056\026\057" +
-    "\025\060\024\061\023\062\013\063\010\064\022\065\017" +
-    "\066\016\001\002\000\100\005\uffbe\012\uffbe\013\uffbe\014" +
+    "\ufffd\034\ufffd\044\ufffd\046\ufffd\050\ufffd\051\ufffd\053\ufffd" +
+    "\054\ufffd\055\ufffd\056\ufffd\057\ufffd\060\ufffd\061\ufffd\062" +
+    "\ufffd\063\ufffd\064\ufffd\065\ufffd\001\002\000\004\002\220" +
+    "\001\002\000\004\065\216\001\002\000\056\002\uffff\006" +
+    "\037\007\034\010\032\011\031\012\030\034\040\044\017" +
+    "\046\013\050\011\051\047\053\044\054\027\055\026\056" +
+    "\024\057\023\060\022\061\012\062\010\063\021\064\016" +
+    "\065\015\001\002\000\076\005\uffbe\012\uffbe\013\uffbe\014" +
     "\uffbe\015\uffbe\016\uffbe\017\uffbe\020\uffbe\021\uffbe\022\uffbe" +
     "\023\uffbe\024\uffbe\025\uffbe\026\uffbe\027\uffbe\030\uffbe\031" +
     "\uffbe\032\uffbe\033\uffbe\034\uffbe\035\uffbe\036\uffbe\037\uffbe" +
-    "\040\uffbe\041\uffbe\042\uffbe\044\uffbe\046\uffbe\051\uffbe\052" +
-    "\uffbe\055\uffbe\001\002\000\006\065\uffb8\066\uffb8\001\002" +
-    "\000\004\065\213\001\002\000\100\005\uffbc\012\uffbc\013" +
-    "\uffbc\014\uffbc\015\uffbc\016\uffbc\017\uffbc\020\uffbc\021\uffbc" +
-    "\022\uffbc\023\uffbc\024\uffbc\025\uffbc\026\uffbc\027\uffbc\030" +
-    "\uffbc\031\uffbc\032\uffbc\033\uffbc\034\uffbc\035\uffbc\036\uffbc" +
-    "\037\uffbc\040\uffbc\041\uffbc\042\uffbc\044\uffbc\046\uffbc\051" +
-    "\uffbc\052\uffbc\055\uffbc\001\002\000\036\012\031\034\053" +
-    "\043\020\045\014\046\uffcb\047\012\050\011\053\045\061" +
-    "\023\062\013\063\010\064\022\065\017\066\016\001\002" +
-    "\000\030\005\uffb7\012\177\013\uffb7\014\126\015\124\016" +
-    "\123\017\132\020\131\021\130\022\125\051\201\001\002" +
-    "\000\100\005\uffc5\012\uffc5\013\uffc5\014\uffc5\015\uffc5\016" +
-    "\uffc5\017\uffc5\020\uffc5\021\uffc5\022\uffc5\023\uffc5\024\uffc5" +
-    "\025\uffc5\026\uffc5\027\uffc5\030\uffc5\031\uffc5\032\uffc5\033" +
-    "\uffc5\034\uffc5\035\uffc5\036\uffc5\037\uffc5\040\uffc5\041\uffc5" +
-    "\042\uffc5\044\uffc5\046\uffc5\051\uffc5\052\uffc5\055\uffc5\001" +
-    "\002\000\004\050\176\001\002\000\036\012\031\034\053" +
-    "\043\020\044\uffcb\045\014\047\012\050\011\053\045\061" +
-    "\023\062\013\063\010\064\022\065\017\066\016\001\002" +
-    "\000\100\005\uffbf\012\uffbf\013\uffbf\014\uffbf\015\uffbf\016" +
-    "\uffbf\017\uffbf\020\uffbf\021\uffbf\022\uffbf\023\uffbf\024\uffbf" +
-    "\025\uffbf\026\uffbf\027\uffbf\030\uffbf\031\uffbf\032\uffbf\033" +
-    "\uffbf\034\uffbf\035\uffbf\036\uffbf\037\uffbf\040\uffbf\041\uffbf" +
-    "\042\uffbf\044\uffbf\046\uffbf\051\uffbf\052\uffbf\055\uffbf\001" +
-    "\002\000\100\005\uffbd\012\uffbd\013\uffbd\014\uffbd\015\uffbd" +
-    "\016\uffbd\017\uffbd\020\uffbd\021\uffbd\022\uffbd\023\uffbd\024" +
-    "\uffbd\025\uffbd\026\uffbd\027\uffbd\030\uffbd\031\uffbd\032\uffbd" +
-    "\033\uffbd\034\uffbd\035\uffbd\036\uffbd\037\uffbd\040\uffbd\041" +
-    "\uffbd\042\uffbd\044\uffbd\046\uffbd\051\uffbd\052\uffbd\055\uffbd" +
-    "\001\002\000\100\005\uffbb\012\uffbb\013\uffbb\014\uffbb\015" +
-    "\uffbb\016\uffbb\017\uffbb\020\uffbb\021\uffbb\022\uffbb\023\uffbb" +
-    "\024\uffbb\025\uffbb\026\uffbb\027\uffbb\030\uffbb\031\uffbb\032" +
-    "\uffbb\033\uffbb\034\uffbb\035\uffbb\036\uffbb\037\uffbb\040\uffbb" +
-    "\041\uffbb\042\uffbb\044\uffbb\046\uffbb\051\uffbb\052\uffbb\055" +
-    "\uffbb\001\002\000\034\012\031\034\041\043\020\045\014" +
-    "\047\012\050\011\053\045\061\023\062\013\063\010\064" +
-    "\022\065\017\066\016\001\002\000\034\012\031\034\041" +
-    "\043\020\045\014\047\012\050\011\053\045\061\023\062" +
-    "\013\063\010\064\022\065\017\066\016\001\002\000\034" +
-    "\012\031\034\041\043\020\045\014\047\012\050\011\053" +
-    "\045\061\023\062\013\063\010\064\022\065\017\066\016" +
-    "\001\002\000\056\002\ufffc\006\ufffc\007\ufffc\010\ufffc\011" +
-    "\ufffc\012\ufffc\034\ufffc\043\ufffc\045\ufffc\047\ufffc\050\ufffc" +
-    "\053\ufffc\054\ufffc\056\ufffc\057\ufffc\060\ufffc\061\ufffc\062" +
-    "\ufffc\063\ufffc\064\ufffc\065\ufffc\066\ufffc\001\002\000\034" +
-    "\012\031\034\041\043\020\045\014\047\012\050\011\053" +
-    "\045\061\023\062\013\063\010\064\022\065\017\066\016" +
-    "\001\002\000\102\005\uffc2\012\uffc2\013\uffc2\014\uffc2\015" +
-    "\uffc2\016\uffc2\017\uffc2\020\uffc2\021\uffc2\022\uffc2\023\uffc2" +
-    "\024\uffc2\025\uffc2\026\uffc2\027\uffc2\030\uffc2\031\uffc2\032" +
-    "\uffc2\033\uffc2\034\uffc2\035\uffc2\036\uffc2\037\uffc2\040\uffc2" +
-    "\041\uffc2\042\uffc2\044\uffc2\046\uffc2\051\uffc2\052\uffc2\055" +
-    "\uffc2\065\167\001\002\000\010\050\011\065\017\066\016" +
-    "\001\002\000\004\063\163\001\002\000\042\005\uffe3\012" +
-    "\uffe3\013\uffe3\014\uffe3\015\uffe3\016\uffe3\017\uffe3\020\uffe3" +
-    "\021\uffe3\022\uffe3\023\uffe3\024\uffe3\025\uffe3\026\uffe3\035" +
-    "\uffe3\051\uffe3\001\002\000\004\066\161\001\002\000\042" +
-    "\005\uffe8\012\uffe8\013\uffe8\014\uffe8\015\uffe8\016\uffe8\017" +
-    "\uffe8\020\uffe8\021\uffe8\022\uffe8\023\uffe8\024\uffe8\025\uffe8" +
-    "\026\uffe8\035\uffe8\051\uffe8\001\002\000\042\005\uffed\012" +
-    "\uffed\013\uffed\014\uffed\015\uffed\016\uffed\017\uffed\020\uffed" +
-    "\021\uffed\022\uffed\023\137\024\136\025\135\026\134\035" +
-    "\uffed\051\uffed\001\002\000\006\050\011\065\017\001\002" +
-    "\000\046\012\031\034\041\035\uffcb\043\020\045\014\047" +
-    "\012\050\011\053\045\054\030\056\026\057\025\060\024" +
-    "\061\023\062\013\063\010\064\022\065\017\066\016\001" +
-    "\002\000\004\065\153\001\002\000\066\005\uffdc\012\uffdc" +
-    "\013\uffdc\014\uffdc\015\uffdc\016\uffdc\017\uffdc\020\uffdc\021" +
-    "\uffdc\022\uffdc\023\uffdc\024\uffdc\025\uffdc\026\uffdc\027\110" +
-    "\030\112\031\111\032\107\033\106\034\105\035\uffdc\036" +
-    "\060\037\057\051\uffdc\052\061\055\056\001\002\000\100" +
+    "\040\uffbe\041\uffbe\042\uffbe\043\uffbe\045\uffbe\047\uffbe\052" +
+    "\uffbe\001\002\000\004\064\207\001\002\000\076\005\uffbc" +
+    "\012\uffbc\013\uffbc\014\uffbc\015\uffbc\016\uffbc\017\uffbc\020" +
+    "\uffbc\021\uffbc\022\uffbc\023\uffbc\024\uffbc\025\uffbc\026\uffbc" +
+    "\027\uffbc\030\uffbc\031\uffbc\032\uffbc\033\uffbc\034\uffbc\035" +
+    "\uffbc\036\uffbc\037\uffbc\040\uffbc\041\uffbc\042\uffbc\043\uffbc" +
+    "\045\uffbc\047\uffbc\052\uffbc\001\002\000\036\012\030\034" +
+    "\053\044\017\046\013\047\uffcb\050\011\051\047\053\044" +
+    "\060\022\061\012\062\010\063\021\064\016\065\015\001" +
+    "\002\000\030\005\uffb7\012\173\013\uffb7\014\122\015\120" +
+    "\016\117\017\126\020\125\021\124\022\121\052\175\001" +
+    "\002\000\076\005\uffc5\012\uffc5\013\uffc5\014\uffc5\015\uffc5" +
+    "\016\uffc5\017\uffc5\020\uffc5\021\uffc5\022\uffc5\023\uffc5\024" +
+    "\uffc5\025\uffc5\026\uffc5\027\uffc5\030\uffc5\031\uffc5\032\uffc5" +
+    "\033\uffc5\034\uffc5\035\uffc5\036\uffc5\037\uffc5\040\uffc5\041" +
+    "\uffc5\042\uffc5\043\uffc5\045\uffc5\047\uffc5\052\uffc5\001\002" +
+    "\000\004\051\172\001\002\000\036\012\030\034\053\044" +
+    "\017\045\uffcb\046\013\050\011\051\047\053\044\060\022" +
+    "\061\012\062\010\063\021\064\016\065\015\001\002\000" +
+    "\076\005\uffbf\012\uffbf\013\uffbf\014\uffbf\015\uffbf\016\uffbf" +
+    "\017\uffbf\020\uffbf\021\uffbf\022\uffbf\023\uffbf\024\uffbf\025" +
+    "\uffbf\026\uffbf\027\uffbf\030\uffbf\031\uffbf\032\uffbf\033\uffbf" +
+    "\034\uffbf\035\uffbf\036\uffbf\037\uffbf\040\uffbf\041\uffbf\042" +
+    "\uffbf\043\uffbf\045\uffbf\047\uffbf\052\uffbf\001\002\000\076" +
+    "\005\uffbd\012\uffbd\013\uffbd\014\uffbd\015\uffbd\016\uffbd\017" +
+    "\uffbd\020\uffbd\021\uffbd\022\uffbd\023\uffbd\024\uffbd\025\uffbd" +
+    "\026\uffbd\027\uffbd\030\uffbd\031\uffbd\032\uffbd\033\uffbd\034" +
+    "\uffbd\035\uffbd\036\uffbd\037\uffbd\040\uffbd\041\uffbd\042\uffbd" +
+    "\043\uffbd\045\uffbd\047\uffbd\052\uffbd\001\002\000\076\005" +
+    "\uffbb\012\uffbb\013\uffbb\014\uffbb\015\uffbb\016\uffbb\017\uffbb" +
+    "\020\uffbb\021\uffbb\022\uffbb\023\uffbb\024\uffbb\025\uffbb\026" +
+    "\uffbb\027\uffbb\030\uffbb\031\uffbb\032\uffbb\033\uffbb\034\uffbb" +
+    "\035\uffbb\036\uffbb\037\uffbb\040\uffbb\041\uffbb\042\uffbb\043" +
+    "\uffbb\045\uffbb\047\uffbb\052\uffbb\001\002\000\034\012\030" +
+    "\034\040\044\017\046\013\050\011\051\047\053\044\060" +
+    "\022\061\012\062\010\063\021\064\016\065\015\001\002" +
+    "\000\034\012\030\034\040\044\017\046\013\050\011\051" +
+    "\047\053\044\060\022\061\012\062\010\063\021\064\016" +
+    "\065\015\001\002\000\056\002\ufffc\006\ufffc\007\ufffc\010" +
+    "\ufffc\011\ufffc\012\ufffc\034\ufffc\044\ufffc\046\ufffc\050\ufffc" +
+    "\051\ufffc\053\ufffc\054\ufffc\055\ufffc\056\ufffc\057\ufffc\060" +
+    "\ufffc\061\ufffc\062\ufffc\063\ufffc\064\ufffc\065\ufffc\001\002" +
+    "\000\034\012\030\034\040\044\017\046\013\050\011\051" +
+    "\047\053\044\060\022\061\012\062\010\063\021\064\016" +
+    "\065\015\001\002\000\034\012\030\034\040\044\017\046" +
+    "\013\050\011\051\047\053\044\060\022\061\012\062\010" +
+    "\063\021\064\016\065\015\001\002\000\100\005\uffc2\012" +
+    "\uffc2\013\uffc2\014\uffc2\015\uffc2\016\uffc2\017\uffc2\020\uffc2" +
+    "\021\uffc2\022\uffc2\023\uffc2\024\uffc2\025\uffc2\026\uffc2\027" +
+    "\uffc2\030\uffc2\031\uffc2\032\uffc2\033\uffc2\034\uffc2\035\uffc2" +
+    "\036\uffc2\037\uffc2\040\uffc2\041\uffc2\042\uffc2\043\uffc2\045" +
+    "\uffc2\047\uffc2\052\uffc2\064\163\001\002\000\010\051\047" +
+    "\064\016\065\015\001\002\000\004\062\157\001\002\000" +
+    "\042\005\uffe3\012\uffe3\013\uffe3\014\uffe3\015\uffe3\016\uffe3" +
+    "\017\uffe3\020\uffe3\021\uffe3\022\uffe3\023\uffe3\024\uffe3\025" +
+    "\uffe3\026\uffe3\035\uffe3\052\uffe3\001\002\000\004\065\155" +
+    "\001\002\000\042\005\uffe8\012\uffe8\013\uffe8\014\uffe8\015" +
+    "\uffe8\016\uffe8\017\uffe8\020\uffe8\021\uffe8\022\uffe8\023\uffe8" +
+    "\024\uffe8\025\uffe8\026\uffe8\035\uffe8\052\uffe8\001\002\000" +
+    "\042\005\uffed\012\uffed\013\uffed\014\uffed\015\uffed\016\uffed" +
+    "\017\uffed\020\uffed\021\uffed\022\uffed\023\133\024\132\025" +
+    "\131\026\130\035\uffed\052\uffed\001\002\000\006\051\047" +
+    "\064\016\001\002\000\046\012\030\034\040\035\uffcb\044" +
+    "\017\046\013\050\011\051\047\053\044\054\027\055\026" +
+    "\056\024\057\023\060\022\061\012\062\010\063\021\064" +
+    "\016\065\015\001\002\000\004\064\147\001\002\000\062" +
+    "\005\uffdc\012\uffdc\013\uffdc\014\uffdc\015\uffdc\016\uffdc\017" +
+    "\uffdc\020\uffdc\021\uffdc\022\uffdc\023\uffdc\024\uffdc\025\uffdc" +
+    "\026\uffdc\027\104\030\106\031\105\032\103\033\102\034" +
+    "\101\035\uffdc\036\057\037\056\052\uffdc\001\002\000\076" +
     "\005\uffce\012\uffce\013\uffce\014\uffce\015\uffce\016\uffce\017" +
     "\uffce\020\uffce\021\uffce\022\uffce\023\uffce\024\uffce\025\uffce" +
     "\026\uffce\027\uffce\030\uffce\031\uffce\032\uffce\033\uffce\034" +
     "\uffce\035\uffce\036\uffce\037\uffce\040\uffce\041\uffce\042\uffce" +
-    "\044\uffce\046\uffce\051\uffce\052\uffce\055\uffce\001\002\000" +
-    "\100\005\uffba\012\uffba\013\uffba\014\uffba\015\uffba\016\uffba" +
-    "\017\uffba\020\uffba\021\uffba\022\uffba\023\uffba\024\uffba\025" +
-    "\uffba\026\uffba\027\uffba\030\uffba\031\uffba\032\uffba\033\uffba" +
-    "\034\uffba\035\uffba\036\uffba\037\uffba\040\uffba\041\uffba\042" +
-    "\uffba\044\uffba\046\uffba\051\uffba\052\uffba\055\uffba\001\002" +
-    "\000\100\005\uffd2\012\uffd2\013\uffd2\014\uffd2\015\uffd2\016" +
-    "\uffd2\017\uffd2\020\uffd2\021\uffd2\022\uffd2\023\uffd2\024\uffd2" +
-    "\025\uffd2\026\uffd2\027\uffd2\030\uffd2\031\uffd2\032\uffd2\033" +
-    "\uffd2\034\uffd2\035\uffd2\036\uffd2\037\uffd2\040\uffd2\041\uffd2" +
-    "\042\uffd2\044\uffd2\046\uffd2\051\uffd2\052\uffd2\055\uffd2\001" +
-    "\002\000\100\005\uffd5\012\uffd5\013\uffd5\014\uffd5\015\uffd5" +
-    "\016\uffd5\017\uffd5\020\uffd5\021\uffd5\022\uffd5\023\uffd5\024" +
-    "\uffd5\025\uffd5\026\uffd5\027\uffd5\030\uffd5\031\uffd5\032\uffd5" +
-    "\033\uffd5\034\uffd5\035\uffd5\036\uffd5\037\uffd5\040\uffd5\041" +
-    "\uffd5\042\uffd5\044\uffd5\046\uffd5\051\uffd5\052\uffd5\055\uffd5" +
-    "\001\002\000\100\005\uffd8\012\uffd8\013\uffd8\014\uffd8\015" +
+    "\043\uffce\045\uffce\047\uffce\052\uffce\001\002\000\076\005" +
+    "\uffba\012\uffba\013\uffba\014\uffba\015\uffba\016\uffba\017\uffba" +
+    "\020\uffba\021\uffba\022\uffba\023\uffba\024\uffba\025\uffba\026" +
+    "\uffba\027\uffba\030\uffba\031\uffba\032\uffba\033\uffba\034\uffba" +
+    "\035\uffba\036\uffba\037\uffba\040\uffba\041\uffba\042\uffba\043" +
+    "\uffba\045\uffba\047\uffba\052\uffba\001\002\000\076\005\uffd2" +
+    "\012\uffd2\013\uffd2\014\uffd2\015\uffd2\016\uffd2\017\uffd2\020" +
+    "\uffd2\021\uffd2\022\uffd2\023\uffd2\024\uffd2\025\uffd2\026\uffd2" +
+    "\027\uffd2\030\uffd2\031\uffd2\032\uffd2\033\uffd2\034\uffd2\035" +
+    "\uffd2\036\uffd2\037\uffd2\040\uffd2\041\uffd2\042\uffd2\043\uffd2" +
+    "\045\uffd2\047\uffd2\052\uffd2\001\002\000\076\005\uffd5\012" +
+    "\uffd5\013\uffd5\014\uffd5\015\uffd5\016\uffd5\017\uffd5\020\uffd5" +
+    "\021\uffd5\022\uffd5\023\uffd5\024\uffd5\025\uffd5\026\uffd5\027" +
+    "\uffd5\030\uffd5\031\uffd5\032\uffd5\033\uffd5\034\uffd5\035\uffd5" +
+    "\036\uffd5\037\uffd5\040\uffd5\041\uffd5\042\uffd5\043\uffd5\045" +
+    "\uffd5\047\uffd5\052\uffd5\001\002\000\006\064\uffb8\065\uffb8" +
+    "\001\002\000\076\005\uffd8\012\uffd8\013\uffd8\014\uffd8\015" +
     "\uffd8\016\uffd8\017\uffd8\020\uffd8\021\uffd8\022\uffd8\023\uffd8" +
     "\024\uffd8\025\uffd8\026\uffd8\027\uffd8\030\uffd8\031\uffd8\032" +
     "\uffd8\033\uffd8\034\uffd8\035\uffd8\036\uffd8\037\uffd8\040\052" +
-    "\041\051\042\uffd8\044\uffd8\046\uffd8\051\uffd8\052\uffd8\055" +
-    "\uffd8\001\002\000\034\012\031\034\053\043\020\045\014" +
-    "\047\012\050\011\053\045\061\023\062\013\063\010\064" +
-    "\022\065\017\066\016\001\002\000\034\012\031\034\053" +
-    "\043\020\045\014\047\012\050\011\053\045\061\023\062" +
-    "\013\063\010\064\022\065\017\066\016\001\002\000\046" +
-    "\012\031\034\041\035\uffcb\043\020\045\014\047\012\050" +
-    "\011\053\045\054\030\056\026\057\025\060\024\061\023" +
-    "\062\013\063\010\064\022\065\017\066\016\001\002\000" +
-    "\012\036\060\037\057\052\061\055\056\001\002\000\100" +
-    "\005\uffd7\012\uffd7\013\uffd7\014\uffd7\015\uffd7\016\uffd7\017" +
-    "\uffd7\020\uffd7\021\uffd7\022\uffd7\023\uffd7\024\uffd7\025\uffd7" +
-    "\026\uffd7\027\uffd7\030\uffd7\031\uffd7\032\uffd7\033\uffd7\034" +
-    "\uffd7\035\uffd7\036\uffd7\037\uffd7\040\uffd7\041\uffd7\042\uffd7" +
-    "\044\uffd7\046\uffd7\051\uffd7\052\uffd7\055\uffd7\001\002\000" +
-    "\004\034\074\001\002\000\034\012\031\034\053\043\020" +
-    "\045\014\047\012\050\011\053\045\061\023\062\013\063" +
-    "\010\064\022\065\017\066\016\001\002\000\034\012\031" +
-    "\034\053\043\020\045\014\047\012\050\011\053\045\061" +
-    "\023\062\013\063\010\064\022\065\017\066\016\001\002" +
-    "\000\004\034\062\001\002\000\036\012\031\034\053\042" +
-    "\uffcb\043\020\045\014\047\012\050\011\053\045\061\023" +
-    "\062\013\063\010\064\022\065\017\066\016\001\002\000" +
-    "\004\042\067\001\002\000\024\026\065\035\uffca\036\060" +
-    "\037\057\042\uffca\044\uffca\046\uffca\052\061\055\056\001" +
-    "\002\000\044\012\031\034\053\035\uffcb\042\uffcb\043\020" +
-    "\044\uffcb\045\014\046\uffcb\047\012\050\011\053\045\061" +
-    "\023\062\013\063\010\064\022\065\017\066\016\001\002" +
-    "\000\012\035\uffc9\042\uffc9\044\uffc9\046\uffc9\001\002\000" +
-    "\036\012\031\034\053\035\uffcb\043\020\045\014\047\012" +
-    "\050\011\053\045\061\023\062\013\063\010\064\022\065" +
-    "\017\066\016\001\002\000\004\035\071\001\002\000\100" +
-    "\005\uffd4\012\uffd4\013\uffd4\014\uffd4\015\uffd4\016\uffd4\017" +
-    "\uffd4\020\uffd4\021\uffd4\022\uffd4\023\uffd4\024\uffd4\025\uffd4" +
-    "\026\uffd4\027\uffd4\030\uffd4\031\uffd4\032\uffd4\033\uffd4\034" +
-    "\uffd4\035\uffd4\036\uffd4\037\uffd4\040\uffd4\041\uffd4\042\uffd4" +
-    "\044\uffd4\046\uffd4\051\uffd4\052\uffd4\055\uffd4\001\002\000" +
-    "\100\005\uffda\012\uffda\013\uffda\014\uffda\015\uffda\016\uffda" +
-    "\017\uffda\020\uffda\021\uffda\022\uffda\023\uffda\024\uffda\025" +
-    "\uffda\026\uffda\027\uffda\030\uffda\031\uffda\032\uffda\033\uffda" +
-    "\034\uffda\035\uffda\036\uffda\037\uffda\040\052\041\051\042" +
-    "\uffda\044\uffda\046\uffda\051\uffda\052\uffda\055\uffda\001\002" +
-    "\000\100\005\uffd9\012\uffd9\013\uffd9\014\uffd9\015\uffd9\016" +
-    "\uffd9\017\uffd9\020\uffd9\021\uffd9\022\uffd9\023\uffd9\024\uffd9" +
-    "\025\uffd9\026\uffd9\027\uffd9\030\uffd9\031\uffd9\032\uffd9\033" +
-    "\uffd9\034\uffd9\035\uffd9\036\uffd9\037\uffd9\040\052\041\051" +
-    "\042\uffd9\044\uffd9\046\uffd9\051\uffd9\052\uffd9\055\uffd9\001" +
-    "\002\000\036\012\031\034\053\042\uffcb\043\020\045\014" +
-    "\047\012\050\011\053\045\061\023\062\013\063\010\064" +
-    "\022\065\017\066\016\001\002\000\004\042\076\001\002" +
-    "\000\036\012\031\034\053\035\uffcb\043\020\045\014\047" +
-    "\012\050\011\053\045\061\023\062\013\063\010\064\022" +
-    "\065\017\066\016\001\002\000\004\035\100\001\002\000" +
-    "\100\005\uffd3\012\uffd3\013\uffd3\014\uffd3\015\uffd3\016\uffd3" +
+    "\041\051\042\uffd8\043\uffd8\045\uffd8\047\uffd8\052\uffd8\001" +
+    "\002\000\034\012\030\034\053\044\017\046\013\050\011" +
+    "\051\047\053\044\060\022\061\012\062\010\063\021\064" +
+    "\016\065\015\001\002\000\034\012\030\034\053\044\017" +
+    "\046\013\050\011\051\047\053\044\060\022\061\012\062" +
+    "\010\063\021\064\016\065\015\001\002\000\046\012\030" +
+    "\034\040\035\uffcb\044\017\046\013\050\011\051\047\053" +
+    "\044\054\027\055\026\056\024\057\023\060\022\061\012" +
+    "\062\010\063\021\064\016\065\015\001\002\000\010\034" +
+    "\060\036\057\037\056\001\002\000\076\005\uffd7\012\uffd7" +
+    "\013\uffd7\014\uffd7\015\uffd7\016\uffd7\017\uffd7\020\uffd7\021" +
+    "\uffd7\022\uffd7\023\uffd7\024\uffd7\025\uffd7\026\uffd7\027\uffd7" +
+    "\030\uffd7\031\uffd7\032\uffd7\033\uffd7\034\uffd7\035\uffd7\036" +
+    "\uffd7\037\uffd7\040\uffd7\041\uffd7\042\uffd7\043\uffd7\045\uffd7" +
+    "\047\uffd7\052\uffd7\001\002\000\034\012\030\034\053\044" +
+    "\017\046\013\050\011\051\047\053\044\060\022\061\012" +
+    "\062\010\063\021\064\016\065\015\001\002\000\034\012" +
+    "\030\034\053\044\017\046\013\050\011\051\047\053\044" +
+    "\060\022\061\012\062\010\063\021\064\016\065\015\001" +
+    "\002\000\040\012\030\034\053\042\uffcb\043\uffcb\044\017" +
+    "\046\013\050\011\051\047\053\044\060\022\061\012\062" +
+    "\010\063\021\064\016\065\015\001\002\000\006\042\066" +
+    "\043\065\001\002\000\024\026\063\034\060\035\uffca\036" +
+    "\057\037\056\042\uffca\043\uffca\045\uffca\047\uffca\001\002" +
+    "\000\046\012\030\034\053\035\uffcb\042\uffcb\043\uffcb\044" +
+    "\017\045\uffcb\046\013\047\uffcb\050\011\051\047\053\044" +
+    "\060\022\061\012\062\010\063\021\064\016\065\015\001" +
+    "\002\000\014\035\uffc9\042\uffc9\043\uffc9\045\uffc9\047\uffc9" +
+    "\001\002\000\036\012\030\034\053\035\uffcb\044\017\046" +
+    "\013\050\011\051\047\053\044\060\022\061\012\062\010" +
+    "\063\021\064\016\065\015\001\002\000\036\012\030\034" +
+    "\053\035\uffcb\044\017\046\013\050\011\051\047\053\044" +
+    "\060\022\061\012\062\010\063\021\064\016\065\015\001" +
+    "\002\000\004\035\070\001\002\000\076\005\uffd4\012\uffd4" +
+    "\013\uffd4\014\uffd4\015\uffd4\016\uffd4\017\uffd4\020\uffd4\021" +
+    "\uffd4\022\uffd4\023\uffd4\024\uffd4\025\uffd4\026\uffd4\027\uffd4" +
+    "\030\uffd4\031\uffd4\032\uffd4\033\uffd4\034\uffd4\035\uffd4\036" +
+    "\uffd4\037\uffd4\040\uffd4\041\uffd4\042\uffd4\043\uffd4\045\uffd4" +
+    "\047\uffd4\052\uffd4\001\002\000\004\035\072\001\002\000" +
+    "\076\005\uffd3\012\uffd3\013\uffd3\014\uffd3\015\uffd3\016\uffd3" +
     "\017\uffd3\020\uffd3\021\uffd3\022\uffd3\023\uffd3\024\uffd3\025" +
     "\uffd3\026\uffd3\027\uffd3\030\uffd3\031\uffd3\032\uffd3\033\uffd3" +
     "\034\uffd3\035\uffd3\036\uffd3\037\uffd3\040\uffd3\041\uffd3\042" +
-    "\uffd3\044\uffd3\046\uffd3\051\uffd3\052\uffd3\055\uffd3\001\002" +
-    "\000\022\014\126\015\124\016\123\017\132\020\131\021" +
-    "\130\022\125\035\127\001\002\000\004\035\122\001\002" +
-    "\000\056\014\uffdc\015\uffdc\016\uffdc\017\uffdc\020\uffdc\021" +
-    "\uffdc\022\uffdc\023\uffdc\024\uffdc\025\uffdc\026\065\027\110" +
-    "\030\112\031\111\032\107\033\106\034\105\035\104\036" +
-    "\060\037\057\052\061\055\056\001\002\000\100\005\uffcc" +
-    "\012\uffcc\013\uffcc\014\uffcc\015\uffcc\016\uffcc\017\uffcc\020" +
-    "\uffcc\021\uffcc\022\uffcc\023\uffcc\024\uffcc\025\uffcc\026\uffcc" +
-    "\027\uffcc\030\uffcc\031\uffcc\032\uffcc\033\uffcc\034\uffcc\035" +
-    "\uffcc\036\uffcc\037\uffcc\040\uffcc\041\uffcc\042\uffcc\044\uffcc" +
-    "\046\uffcc\051\uffcc\052\uffcc\055\uffcc\001\002\000\036\012" +
-    "\031\034\053\035\uffcb\043\020\045\014\047\012\050\011" +
-    "\053\045\061\023\062\013\063\010\064\022\065\017\066" +
-    "\016\001\002\000\034\012\031\034\053\043\020\045\014" +
-    "\047\012\050\011\053\045\061\023\062\013\063\010\064" +
-    "\022\065\017\066\016\001\002\000\034\012\031\034\053" +
-    "\043\020\045\014\047\012\050\011\053\045\061\023\062" +
-    "\013\063\010\064\022\065\017\066\016\001\002\000\034" +
-    "\012\031\034\053\043\020\045\014\047\012\050\011\053" +
-    "\045\061\023\062\013\063\010\064\022\065\017\066\016" +
-    "\001\002\000\034\012\031\034\053\043\020\045\014\047" +
-    "\012\050\011\053\045\061\023\062\013\063\010\064\022" +
-    "\065\017\066\016\001\002\000\034\012\031\034\053\043" +
-    "\020\045\014\047\012\050\011\053\045\061\023\062\013" +
-    "\063\010\064\022\065\017\066\016\001\002\000\052\005" +
-    "\uffe1\012\uffe1\013\uffe1\014\uffe1\015\uffe1\016\uffe1\017\uffe1" +
-    "\020\uffe1\021\uffe1\022\uffe1\023\uffe1\024\uffe1\025\uffe1\026" +
-    "\uffe1\035\uffe1\036\060\037\057\051\uffe1\052\061\055\056" +
-    "\001\002\000\052\005\uffe0\012\uffe0\013\uffe0\014\uffe0\015" +
-    "\uffe0\016\uffe0\017\uffe0\020\uffe0\021\uffe0\022\uffe0\023\uffe0" +
-    "\024\uffe0\025\uffe0\026\uffe0\035\uffe0\036\060\037\057\051" +
-    "\uffe0\052\061\055\056\001\002\000\052\005\uffe2\012\uffe2" +
-    "\013\uffe2\014\uffe2\015\uffe2\016\uffe2\017\uffe2\020\uffe2\021" +
-    "\uffe2\022\uffe2\023\uffe2\024\uffe2\025\uffe2\026\uffe2\035\uffe2" +
-    "\036\060\037\057\051\uffe2\052\061\055\056\001\002\000" +
-    "\052\005\uffdf\012\uffdf\013\uffdf\014\uffdf\015\uffdf\016\uffdf" +
-    "\017\uffdf\020\uffdf\021\uffdf\022\uffdf\023\uffdf\024\uffdf\025" +
-    "\uffdf\026\uffdf\035\uffdf\036\060\037\057\051\uffdf\052\061" +
-    "\055\056\001\002\000\052\005\uffde\012\uffde\013\uffde\014" +
-    "\uffde\015\uffde\016\uffde\017\uffde\020\uffde\021\uffde\022\uffde" +
-    "\023\uffde\024\uffde\025\uffde\026\uffde\035\uffde\036\060\037" +
-    "\057\051\uffde\052\061\055\056\001\002\000\004\035\121" +
-    "\001\002\000\042\005\uffdd\012\uffdd\013\uffdd\014\uffdd\015" +
-    "\uffdd\016\uffdd\017\uffdd\020\uffdd\021\uffdd\022\uffdd\023\uffdd" +
-    "\024\uffdd\025\uffdd\026\uffdd\035\uffdd\051\uffdd\001\002\000" +
-    "\100\005\uffcf\012\uffcf\013\uffcf\014\uffcf\015\uffcf\016\uffcf" +
-    "\017\uffcf\020\uffcf\021\uffcf\022\uffcf\023\uffcf\024\uffcf\025" +
-    "\uffcf\026\uffcf\027\uffcf\030\uffcf\031\uffcf\032\uffcf\033\uffcf" +
-    "\034\uffcf\035\uffcf\036\uffcf\037\uffcf\040\uffcf\041\uffcf\042" +
-    "\uffcf\044\uffcf\046\uffcf\051\uffcf\052\uffcf\055\uffcf\001\002" +
-    "\000\044\012\031\034\041\043\020\045\014\047\012\050" +
-    "\011\053\045\054\030\056\026\057\025\060\024\061\023" +
-    "\062\013\063\010\064\022\065\017\066\016\001\002\000" +
-    "\044\012\031\034\041\043\020\045\014\047\012\050\011" +
-    "\053\045\054\030\056\026\057\025\060\024\061\023\062" +
-    "\013\063\010\064\022\065\017\066\016\001\002\000\044" +
-    "\012\031\034\041\043\020\045\014\047\012\050\011\053" +
-    "\045\054\030\056\026\057\025\060\024\061\023\062\013" +
-    "\063\010\064\022\065\017\066\016\001\002\000\044\012" +
-    "\031\034\041\043\020\045\014\047\012\050\011\053\045" +
-    "\054\030\056\026\057\025\060\024\061\023\062\013\063" +
-    "\010\064\022\065\017\066\016\001\002\000\100\005\uffcd" +
-    "\012\uffcd\013\uffcd\014\uffcd\015\uffcd\016\uffcd\017\uffcd\020" +
-    "\uffcd\021\uffcd\022\uffcd\023\uffcd\024\uffcd\025\uffcd\026\uffcd" +
-    "\027\uffcd\030\uffcd\031\uffcd\032\uffcd\033\uffcd\034\uffcd\035" +
-    "\uffcd\036\uffcd\037\uffcd\040\uffcd\041\uffcd\042\uffcd\044\uffcd" +
-    "\046\uffcd\051\uffcd\052\uffcd\055\uffcd\001\002\000\044\012" +
-    "\031\034\041\043\020\045\014\047\012\050\011\053\045" +
-    "\054\030\056\026\057\025\060\024\061\023\062\013\063" +
-    "\010\064\022\065\017\066\016\001\002\000\044\012\031" +
-    "\034\041\043\020\045\014\047\012\050\011\053\045\054" +
-    "\030\056\026\057\025\060\024\061\023\062\013\063\010" +
-    "\064\022\065\017\066\016\001\002\000\044\012\031\034" +
-    "\041\043\020\045\014\047\012\050\011\053\045\054\030" +
-    "\056\026\057\025\060\024\061\023\062\013\063\010\064" +
-    "\022\065\017\066\016\001\002\000\042\005\ufff1\012\ufff1" +
-    "\013\ufff1\014\ufff1\015\ufff1\016\ufff1\017\ufff1\020\ufff1\021" +
-    "\ufff1\022\ufff1\023\137\024\136\025\135\026\134\035\ufff1" +
-    "\051\ufff1\001\002\000\044\012\031\034\041\043\020\045" +
-    "\014\047\012\050\011\053\045\054\030\056\026\057\025" +
-    "\060\024\061\023\062\013\063\010\064\022\065\017\066" +
-    "\016\001\002\000\044\012\031\034\041\043\020\045\014" +
-    "\047\012\050\011\053\045\054\030\056\026\057\025\060" +
-    "\024\061\023\062\013\063\010\064\022\065\017\066\016" +
-    "\001\002\000\044\012\031\034\041\043\020\045\014\047" +
-    "\012\050\011\053\045\054\030\056\026\057\025\060\024" +
-    "\061\023\062\013\063\010\064\022\065\017\066\016\001" +
-    "\002\000\044\012\031\034\041\043\020\045\014\047\012" +
-    "\050\011\053\045\054\030\056\026\057\025\060\024\061" +
-    "\023\062\013\063\010\064\022\065\017\066\016\001\002" +
-    "\000\042\005\uffec\012\uffec\013\uffec\014\uffec\015\uffec\016" +
-    "\uffec\017\uffec\020\uffec\021\uffec\022\uffec\023\uffec\024\uffec" +
-    "\025\uffec\026\uffec\035\uffec\051\uffec\001\002\000\042\005" +
-    "\uffeb\012\uffeb\013\uffeb\014\uffeb\015\uffeb\016\uffeb\017\uffeb" +
-    "\020\uffeb\021\uffeb\022\uffeb\023\uffeb\024\uffeb\025\uffeb\026" +
-    "\uffeb\035\uffeb\051\uffeb\001\002\000\042\005\uffea\012\uffea" +
-    "\013\uffea\014\uffea\015\uffea\016\uffea\017\uffea\020\uffea\021" +
-    "\uffea\022\uffea\023\uffea\024\uffea\025\uffea\026\uffea\035\uffea" +
-    "\051\uffea\001\002\000\042\005\uffe9\012\uffe9\013\uffe9\014" +
-    "\uffe9\015\uffe9\016\uffe9\017\uffe9\020\uffe9\021\uffe9\022\uffe9" +
-    "\023\uffe9\024\uffe9\025\uffe9\026\uffe9\035\uffe9\051\uffe9\001" +
-    "\002\000\042\005\ufff0\012\ufff0\013\ufff0\014\ufff0\015\ufff0" +
-    "\016\ufff0\017\ufff0\020\ufff0\021\ufff0\022\ufff0\023\137\024" +
-    "\136\025\135\026\134\035\ufff0\051\ufff0\001\002\000\042" +
-    "\005\uffef\012\uffef\013\uffef\014\uffef\015\uffef\016\uffef\017" +
-    "\uffef\020\uffef\021\uffef\022\uffef\023\137\024\136\025\135" +
-    "\026\134\035\uffef\051\uffef\001\002\000\042\005\ufff4\012" +
-    "\ufff4\013\ufff4\014\ufff4\015\ufff4\016\ufff4\017\ufff4\020\ufff4" +
-    "\021\ufff4\022\ufff4\023\137\024\136\025\135\026\134\035" +
-    "\ufff4\051\ufff4\001\002\000\042\005\uffee\012\uffee\013\uffee" +
-    "\014\uffee\015\uffee\016\uffee\017\uffee\020\uffee\021\uffee\022" +
-    "\uffee\023\137\024\136\025\135\026\134\035\uffee\051\uffee" +
-    "\001\002\000\042\005\ufff3\012\ufff3\013\ufff3\014\ufff3\015" +
-    "\ufff3\016\ufff3\017\ufff3\020\ufff3\021\ufff3\022\ufff3\023\137" +
-    "\024\136\025\135\026\134\035\ufff3\051\ufff3\001\002\000" +
-    "\042\005\ufff2\012\ufff2\013\ufff2\014\ufff2\015\ufff2\016\ufff2" +
-    "\017\ufff2\020\ufff2\021\ufff2\022\ufff2\023\137\024\136\025" +
-    "\135\026\134\035\ufff2\051\ufff2\001\002\000\100\005\uffd6" +
-    "\012\uffd6\013\uffd6\014\uffd6\015\uffd6\016\uffd6\017\uffd6\020" +
-    "\uffd6\021\uffd6\022\uffd6\023\uffd6\024\uffd6\025\uffd6\026\uffd6" +
-    "\027\uffd6\030\uffd6\031\uffd6\032\uffd6\033\uffd6\034\uffd6\035" +
-    "\uffd6\036\uffd6\037\uffd6\040\uffd6\041\uffd6\042\uffd6\044\uffd6" +
-    "\046\uffd6\051\uffd6\052\uffd6\055\uffd6\001\002\000\100\005" +
-    "\uffc4\012\uffc4\013\uffc4\014\uffc4\015\uffc4\016\uffc4\017\uffc4" +
-    "\020\uffc4\021\uffc4\022\uffc4\023\uffc4\024\uffc4\025\uffc4\026" +
-    "\uffc4\027\uffc4\030\uffc4\031\uffc4\032\uffc4\033\uffc4\034\uffc4" +
-    "\035\uffc4\036\uffc4\037\uffc4\040\uffc4\041\uffc4\042\uffc4\044" +
-    "\uffc4\046\uffc4\051\uffc4\052\uffc4\055\uffc4\001\002\000\022" +
-    "\014\126\015\124\016\123\017\132\020\131\021\130\022" +
-    "\125\035\155\001\002\000\072\005\uffdb\012\uffdb\013\uffdb" +
-    "\014\uffdb\015\uffdb\016\uffdb\017\uffdb\020\uffdb\021\uffdb\022" +
-    "\uffdb\023\uffdb\024\uffdb\025\uffdb\026\uffdb\027\uffcd\030\uffcd" +
-    "\031\uffcd\032\uffcd\033\uffcd\034\uffcd\035\uffdb\036\uffcd\037" +
-    "\uffcd\040\uffcd\041\uffcd\051\uffdb\052\uffcd\055\uffcd\001\002" +
-    "\000\004\066\157\001\002\000\004\005\160\001\002\000" +
-    "\056\002\ufffb\006\ufffb\007\ufffb\010\ufffb\011\ufffb\012\ufffb" +
-    "\034\ufffb\043\ufffb\045\ufffb\047\ufffb\050\ufffb\053\ufffb\054" +
-    "\ufffb\056\ufffb\057\ufffb\060\ufffb\061\ufffb\062\ufffb\063\ufffb" +
-    "\064\ufffb\065\ufffb\066\ufffb\001\002\000\004\005\162\001" +
-    "\002\000\056\002\ufffa\006\ufffa\007\ufffa\010\ufffa\011\ufffa" +
-    "\012\ufffa\034\ufffa\043\ufffa\045\ufffa\047\ufffa\050\ufffa\053" +
-    "\ufffa\054\ufffa\056\ufffa\057\ufffa\060\ufffa\061\ufffa\062\ufffa" +
-    "\063\ufffa\064\ufffa\065\ufffa\066\ufffa\001\002\000\004\005" +
-    "\164\001\002\000\056\002\ufff9\006\ufff9\007\ufff9\010\ufff9" +
-    "\011\ufff9\012\ufff9\034\ufff9\043\ufff9\045\ufff9\047\ufff9\050" +
-    "\ufff9\053\ufff9\054\ufff9\056\ufff9\057\ufff9\060\ufff9\061\ufff9" +
-    "\062\ufff9\063\ufff9\064\ufff9\065\ufff9\066\ufff9\001\002\000" +
-    "\004\005\166\001\002\000\056\002\ufff8\006\ufff8\007\ufff8" +
-    "\010\ufff8\011\ufff8\012\ufff8\034\ufff8\043\ufff8\045\ufff8\047" +
-    "\ufff8\050\ufff8\053\ufff8\054\ufff8\056\ufff8\057\ufff8\060\ufff8" +
-    "\061\ufff8\062\ufff8\063\ufff8\064\ufff8\065\ufff8\066\ufff8\001" +
-    "\002\000\100\005\uffc3\012\uffc3\013\uffc3\014\uffc3\015\uffc3" +
-    "\016\uffc3\017\uffc3\020\uffc3\021\uffc3\022\uffc3\023\uffc3\024" +
-    "\uffc3\025\uffc3\026\uffc3\027\uffc3\030\uffc3\031\uffc3\032\uffc3" +
-    "\033\uffc3\034\uffc3\035\uffc3\036\uffc3\037\uffc3\040\uffc3\041" +
-    "\uffc3\042\uffc3\044\uffc3\046\uffc3\051\uffc3\052\uffc3\055\uffc3" +
+    "\uffd3\043\uffd3\045\uffd3\047\uffd3\052\uffd3\001\002\000\076" +
+    "\005\uffda\012\uffda\013\uffda\014\uffda\015\uffda\016\uffda\017" +
+    "\uffda\020\uffda\021\uffda\022\uffda\023\uffda\024\uffda\025\uffda" +
+    "\026\uffda\027\uffda\030\uffda\031\uffda\032\uffda\033\uffda\034" +
+    "\uffda\035\uffda\036\uffda\037\uffda\040\052\041\051\042\uffda" +
+    "\043\uffda\045\uffda\047\uffda\052\uffda\001\002\000\076\005" +
+    "\uffd9\012\uffd9\013\uffd9\014\uffd9\015\uffd9\016\uffd9\017\uffd9" +
+    "\020\uffd9\021\uffd9\022\uffd9\023\uffd9\024\uffd9\025\uffd9\026" +
+    "\uffd9\027\uffd9\030\uffd9\031\uffd9\032\uffd9\033\uffd9\034\uffd9" +
+    "\035\uffd9\036\uffd9\037\uffd9\040\052\041\051\042\uffd9\043" +
+    "\uffd9\045\uffd9\047\uffd9\052\uffd9\001\002\000\022\014\122" +
+    "\015\120\016\117\017\126\020\125\021\124\022\121\035" +
+    "\123\001\002\000\004\035\116\001\002\000\052\014\uffdc" +
+    "\015\uffdc\016\uffdc\017\uffdc\020\uffdc\021\uffdc\022\uffdc\023" +
+    "\uffdc\024\uffdc\025\uffdc\026\063\027\104\030\106\031\105" +
+    "\032\103\033\102\034\101\035\100\036\057\037\056\001" +
+    "\002\000\076\005\uffcc\012\uffcc\013\uffcc\014\uffcc\015\uffcc" +
+    "\016\uffcc\017\uffcc\020\uffcc\021\uffcc\022\uffcc\023\uffcc\024" +
+    "\uffcc\025\uffcc\026\uffcc\027\uffcc\030\uffcc\031\uffcc\032\uffcc" +
+    "\033\uffcc\034\uffcc\035\uffcc\036\uffcc\037\uffcc\040\uffcc\041" +
+    "\uffcc\042\uffcc\043\uffcc\045\uffcc\047\uffcc\052\uffcc\001\002" +
+    "\000\042\012\030\034\053\035\uffcb\042\uffcb\043\uffcb\044" +
+    "\017\046\013\050\011\051\047\053\044\060\022\061\012" +
+    "\062\010\063\021\064\016\065\015\001\002\000\034\012" +
+    "\030\034\053\044\017\046\013\050\011\051\047\053\044" +
+    "\060\022\061\012\062\010\063\021\064\016\065\015\001" +
+    "\002\000\034\012\030\034\053\044\017\046\013\050\011" +
+    "\051\047\053\044\060\022\061\012\062\010\063\021\064" +
+    "\016\065\015\001\002\000\034\012\030\034\053\044\017" +
+    "\046\013\050\011\051\047\053\044\060\022\061\012\062" +
+    "\010\063\021\064\016\065\015\001\002\000\034\012\030" +
+    "\034\053\044\017\046\013\050\011\051\047\053\044\060" +
+    "\022\061\012\062\010\063\021\064\016\065\015\001\002" +
+    "\000\034\012\030\034\053\044\017\046\013\050\011\051" +
+    "\047\053\044\060\022\061\012\062\010\063\021\064\016" +
+    "\065\015\001\002\000\050\005\uffe1\012\uffe1\013\uffe1\014" +
+    "\uffe1\015\uffe1\016\uffe1\017\uffe1\020\uffe1\021\uffe1\022\uffe1" +
+    "\023\uffe1\024\uffe1\025\uffe1\026\uffe1\034\060\035\uffe1\036" +
+    "\057\037\056\052\uffe1\001\002\000\050\005\uffe0\012\uffe0" +
+    "\013\uffe0\014\uffe0\015\uffe0\016\uffe0\017\uffe0\020\uffe0\021" +
+    "\uffe0\022\uffe0\023\uffe0\024\uffe0\025\uffe0\026\uffe0\034\060" +
+    "\035\uffe0\036\057\037\056\052\uffe0\001\002\000\050\005" +
+    "\uffe2\012\uffe2\013\uffe2\014\uffe2\015\uffe2\016\uffe2\017\uffe2" +
+    "\020\uffe2\021\uffe2\022\uffe2\023\uffe2\024\uffe2\025\uffe2\026" +
+    "\uffe2\034\060\035\uffe2\036\057\037\056\052\uffe2\001\002" +
+    "\000\050\005\uffdf\012\uffdf\013\uffdf\014\uffdf\015\uffdf\016" +
+    "\uffdf\017\uffdf\020\uffdf\021\uffdf\022\uffdf\023\uffdf\024\uffdf" +
+    "\025\uffdf\026\uffdf\034\060\035\uffdf\036\057\037\056\052" +
+    "\uffdf\001\002\000\050\005\uffde\012\uffde\013\uffde\014\uffde" +
+    "\015\uffde\016\uffde\017\uffde\020\uffde\021\uffde\022\uffde\023" +
+    "\uffde\024\uffde\025\uffde\026\uffde\034\060\035\uffde\036\057" +
+    "\037\056\052\uffde\001\002\000\010\035\115\042\066\043" +
+    "\065\001\002\000\042\005\uffdd\012\uffdd\013\uffdd\014\uffdd" +
+    "\015\uffdd\016\uffdd\017\uffdd\020\uffdd\021\uffdd\022\uffdd\023" +
+    "\uffdd\024\uffdd\025\uffdd\026\uffdd\035\uffdd\052\uffdd\001\002" +
+    "\000\076\005\uffcf\012\uffcf\013\uffcf\014\uffcf\015\uffcf\016" +
+    "\uffcf\017\uffcf\020\uffcf\021\uffcf\022\uffcf\023\uffcf\024\uffcf" +
+    "\025\uffcf\026\uffcf\027\uffcf\030\uffcf\031\uffcf\032\uffcf\033" +
+    "\uffcf\034\uffcf\035\uffcf\036\uffcf\037\uffcf\040\uffcf\041\uffcf" +
+    "\042\uffcf\043\uffcf\045\uffcf\047\uffcf\052\uffcf\001\002\000" +
+    "\044\012\030\034\040\044\017\046\013\050\011\051\047" +
+    "\053\044\054\027\055\026\056\024\057\023\060\022\061" +
+    "\012\062\010\063\021\064\016\065\015\001\002\000\044" +
+    "\012\030\034\040\044\017\046\013\050\011\051\047\053" +
+    "\044\054\027\055\026\056\024\057\023\060\022\061\012" +
+    "\062\010\063\021\064\016\065\015\001\002\000\044\012" +
+    "\030\034\040\044\017\046\013\050\011\051\047\053\044" +
+    "\054\027\055\026\056\024\057\023\060\022\061\012\062" +
+    "\010\063\021\064\016\065\015\001\002\000\044\012\030" +
+    "\034\040\044\017\046\013\050\011\051\047\053\044\054" +
+    "\027\055\026\056\024\057\023\060\022\061\012\062\010" +
+    "\063\021\064\016\065\015\001\002\000\076\005\uffcd\012" +
+    "\uffcd\013\uffcd\014\uffcd\015\uffcd\016\uffcd\017\uffcd\020\uffcd" +
+    "\021\uffcd\022\uffcd\023\uffcd\024\uffcd\025\uffcd\026\uffcd\027" +
+    "\uffcd\030\uffcd\031\uffcd\032\uffcd\033\uffcd\034\uffcd\035\uffcd" +
+    "\036\uffcd\037\uffcd\040\uffcd\041\uffcd\042\uffcd\043\uffcd\045" +
+    "\uffcd\047\uffcd\052\uffcd\001\002\000\044\012\030\034\040" +
+    "\044\017\046\013\050\011\051\047\053\044\054\027\055" +
+    "\026\056\024\057\023\060\022\061\012\062\010\063\021" +
+    "\064\016\065\015\001\002\000\044\012\030\034\040\044" +
+    "\017\046\013\050\011\051\047\053\044\054\027\055\026" +
+    "\056\024\057\023\060\022\061\012\062\010\063\021\064" +
+    "\016\065\015\001\002\000\044\012\030\034\040\044\017" +
+    "\046\013\050\011\051\047\053\044\054\027\055\026\056" +
+    "\024\057\023\060\022\061\012\062\010\063\021\064\016" +
+    "\065\015\001\002\000\042\005\ufff1\012\ufff1\013\ufff1\014" +
+    "\ufff1\015\ufff1\016\ufff1\017\ufff1\020\ufff1\021\ufff1\022\ufff1" +
+    "\023\133\024\132\025\131\026\130\035\ufff1\052\ufff1\001" +
+    "\002\000\044\012\030\034\040\044\017\046\013\050\011" +
+    "\051\047\053\044\054\027\055\026\056\024\057\023\060" +
+    "\022\061\012\062\010\063\021\064\016\065\015\001\002" +
+    "\000\044\012\030\034\040\044\017\046\013\050\011\051" +
+    "\047\053\044\054\027\055\026\056\024\057\023\060\022" +
+    "\061\012\062\010\063\021\064\016\065\015\001\002\000" +
+    "\044\012\030\034\040\044\017\046\013\050\011\051\047" +
+    "\053\044\054\027\055\026\056\024\057\023\060\022\061" +
+    "\012\062\010\063\021\064\016\065\015\001\002\000\044" +
+    "\012\030\034\040\044\017\046\013\050\011\051\047\053" +
+    "\044\054\027\055\026\056\024\057\023\060\022\061\012" +
+    "\062\010\063\021\064\016\065\015\001\002\000\042\005" +
+    "\uffec\012\uffec\013\uffec\014\uffec\015\uffec\016\uffec\017\uffec" +
+    "\020\uffec\021\uffec\022\uffec\023\uffec\024\uffec\025\uffec\026" +
+    "\uffec\035\uffec\052\uffec\001\002\000\042\005\uffeb\012\uffeb" +
+    "\013\uffeb\014\uffeb\015\uffeb\016\uffeb\017\uffeb\020\uffeb\021" +
+    "\uffeb\022\uffeb\023\uffeb\024\uffeb\025\uffeb\026\uffeb\035\uffeb" +
+    "\052\uffeb\001\002\000\042\005\uffea\012\uffea\013\uffea\014" +
+    "\uffea\015\uffea\016\uffea\017\uffea\020\uffea\021\uffea\022\uffea" +
+    "\023\uffea\024\uffea\025\uffea\026\uffea\035\uffea\052\uffea\001" +
+    "\002\000\042\005\uffe9\012\uffe9\013\uffe9\014\uffe9\015\uffe9" +
+    "\016\uffe9\017\uffe9\020\uffe9\021\uffe9\022\uffe9\023\uffe9\024" +
+    "\uffe9\025\uffe9\026\uffe9\035\uffe9\052\uffe9\001\002\000\042" +
+    "\005\ufff0\012\ufff0\013\ufff0\014\ufff0\015\ufff0\016\ufff0\017" +
+    "\ufff0\020\ufff0\021\ufff0\022\ufff0\023\133\024\132\025\131" +
+    "\026\130\035\ufff0\052\ufff0\001\002\000\042\005\uffef\012" +
+    "\uffef\013\uffef\014\uffef\015\uffef\016\uffef\017\uffef\020\uffef" +
+    "\021\uffef\022\uffef\023\133\024\132\025\131\026\130\035" +
+    "\uffef\052\uffef\001\002\000\042\005\ufff4\012\ufff4\013\ufff4" +
+    "\014\ufff4\015\ufff4\016\ufff4\017\ufff4\020\ufff4\021\ufff4\022" +
+    "\ufff4\023\133\024\132\025\131\026\130\035\ufff4\052\ufff4" +
+    "\001\002\000\042\005\uffee\012\uffee\013\uffee\014\uffee\015" +
+    "\uffee\016\uffee\017\uffee\020\uffee\021\uffee\022\uffee\023\133" +
+    "\024\132\025\131\026\130\035\uffee\052\uffee\001\002\000" +
+    "\042\005\ufff3\012\ufff3\013\ufff3\014\ufff3\015\ufff3\016\ufff3" +
+    "\017\ufff3\020\ufff3\021\ufff3\022\ufff3\023\133\024\132\025" +
+    "\131\026\130\035\ufff3\052\ufff3\001\002\000\042\005\ufff2" +
+    "\012\ufff2\013\ufff2\014\ufff2\015\ufff2\016\ufff2\017\ufff2\020" +
+    "\ufff2\021\ufff2\022\ufff2\023\133\024\132\025\131\026\130" +
+    "\035\ufff2\052\ufff2\001\002\000\076\005\uffd6\012\uffd6\013" +
+    "\uffd6\014\uffd6\015\uffd6\016\uffd6\017\uffd6\020\uffd6\021\uffd6" +
+    "\022\uffd6\023\uffd6\024\uffd6\025\uffd6\026\uffd6\027\uffd6\030" +
+    "\uffd6\031\uffd6\032\uffd6\033\uffd6\034\uffd6\035\uffd6\036\uffd6" +
+    "\037\uffd6\040\uffd6\041\uffd6\042\uffd6\043\uffd6\045\uffd6\047" +
+    "\uffd6\052\uffd6\001\002\000\076\005\uffc4\012\uffc4\013\uffc4" +
+    "\014\uffc4\015\uffc4\016\uffc4\017\uffc4\020\uffc4\021\uffc4\022" +
+    "\uffc4\023\uffc4\024\uffc4\025\uffc4\026\uffc4\027\uffc4\030\uffc4" +
+    "\031\uffc4\032\uffc4\033\uffc4\034\uffc4\035\uffc4\036\uffc4\037" +
+    "\uffc4\040\uffc4\041\uffc4\042\uffc4\043\uffc4\045\uffc4\047\uffc4" +
+    "\052\uffc4\001\002\000\022\014\122\015\120\016\117\017" +
+    "\126\020\125\021\124\022\121\035\151\001\002\000\066" +
+    "\005\uffdb\012\uffdb\013\uffdb\014\uffdb\015\uffdb\016\uffdb\017" +
+    "\uffdb\020\uffdb\021\uffdb\022\uffdb\023\uffdb\024\uffdb\025\uffdb" +
+    "\026\uffdb\027\uffcd\030\uffcd\031\uffcd\032\uffcd\033\uffcd\034" +
+    "\uffcd\035\uffdb\036\uffcd\037\uffcd\040\uffcd\041\uffcd\052\uffdb" +
+    "\001\002\000\004\065\153\001\002\000\004\005\154\001" +
+    "\002\000\056\002\ufffb\006\ufffb\007\ufffb\010\ufffb\011\ufffb" +
+    "\012\ufffb\034\ufffb\044\ufffb\046\ufffb\050\ufffb\051\ufffb\053" +
+    "\ufffb\054\ufffb\055\ufffb\056\ufffb\057\ufffb\060\ufffb\061\ufffb" +
+    "\062\ufffb\063\ufffb\064\ufffb\065\ufffb\001\002\000\004\005" +
+    "\156\001\002\000\056\002\ufffa\006\ufffa\007\ufffa\010\ufffa" +
+    "\011\ufffa\012\ufffa\034\ufffa\044\ufffa\046\ufffa\050\ufffa\051" +
+    "\ufffa\053\ufffa\054\ufffa\055\ufffa\056\ufffa\057\ufffa\060\ufffa" +
+    "\061\ufffa\062\ufffa\063\ufffa\064\ufffa\065\ufffa\001\002\000" +
+    "\004\005\160\001\002\000\056\002\ufff9\006\ufff9\007\ufff9" +
+    "\010\ufff9\011\ufff9\012\ufff9\034\ufff9\044\ufff9\046\ufff9\050" +
+    "\ufff9\051\ufff9\053\ufff9\054\ufff9\055\ufff9\056\ufff9\057\ufff9" +
+    "\060\ufff9\061\ufff9\062\ufff9\063\ufff9\064\ufff9\065\ufff9\001" +
+    "\002\000\004\005\162\001\002\000\056\002\ufff8\006\ufff8" +
+    "\007\ufff8\010\ufff8\011\ufff8\012\ufff8\034\ufff8\044\ufff8\046" +
+    "\ufff8\050\ufff8\051\ufff8\053\ufff8\054\ufff8\055\ufff8\056\ufff8" +
+    "\057\ufff8\060\ufff8\061\ufff8\062\ufff8\063\ufff8\064\ufff8\065" +
+    "\ufff8\001\002\000\076\005\uffc3\012\uffc3\013\uffc3\014\uffc3" +
+    "\015\uffc3\016\uffc3\017\uffc3\020\uffc3\021\uffc3\022\uffc3\023" +
+    "\uffc3\024\uffc3\025\uffc3\026\uffc3\027\uffc3\030\uffc3\031\uffc3" +
+    "\032\uffc3\033\uffc3\034\uffc3\035\uffc3\036\uffc3\037\uffc3\040" +
+    "\uffc3\041\uffc3\042\uffc3\043\uffc3\045\uffc3\047\uffc3\052\uffc3" +
     "\001\002\000\042\005\uffe4\012\uffe4\013\uffe4\014\uffe4\015" +
     "\uffe4\016\uffe4\017\uffe4\020\uffe4\021\uffe4\022\uffe4\023\uffe4" +
-    "\024\uffe4\025\uffe4\026\uffe4\035\uffe4\051\uffe4\001\002\000" +
+    "\024\uffe4\025\uffe4\026\uffe4\035\uffe4\052\uffe4\001\002\000" +
     "\042\005\uffe7\012\uffe7\013\uffe7\014\uffe7\015\uffe7\016\uffe7" +
     "\017\uffe7\020\uffe7\021\uffe7\022\uffe7\023\uffe7\024\uffe7\025" +
-    "\uffe7\026\uffe7\035\uffe7\051\uffe7\001\002\000\042\005\uffe6" +
+    "\uffe7\026\uffe7\035\uffe7\052\uffe7\001\002\000\042\005\uffe6" +
     "\012\uffe6\013\uffe6\014\uffe6\015\uffe6\016\uffe6\017\uffe6\020" +
     "\uffe6\021\uffe6\022\uffe6\023\uffe6\024\uffe6\025\uffe6\026\uffe6" +
-    "\035\uffe6\051\uffe6\001\002\000\042\005\uffe5\012\uffe5\013" +
+    "\035\uffe6\052\uffe6\001\002\000\042\005\uffe5\012\uffe5\013" +
     "\uffe5\014\uffe5\015\uffe5\016\uffe5\017\uffe5\020\uffe5\021\uffe5" +
-    "\022\uffe5\023\uffe5\024\uffe5\025\uffe5\026\uffe5\035\uffe5\051" +
-    "\uffe5\001\002\000\004\044\175\001\002\000\100\005\uffd1" +
+    "\022\uffe5\023\uffe5\024\uffe5\025\uffe5\026\uffe5\035\uffe5\052" +
+    "\uffe5\001\002\000\004\045\171\001\002\000\076\005\uffd1" +
     "\012\uffd1\013\uffd1\014\uffd1\015\uffd1\016\uffd1\017\uffd1\020" +
     "\uffd1\021\uffd1\022\uffd1\023\uffd1\024\uffd1\025\uffd1\026\uffd1" +
     "\027\uffd1\030\uffd1\031\uffd1\032\uffd1\033\uffd1\034\uffd1\035" +
-    "\uffd1\036\uffd1\037\uffd1\040\uffd1\041\uffd1\042\uffd1\044\uffd1" +
-    "\046\uffd1\051\uffd1\052\uffd1\055\uffd1\001\002\000\006\065" +
-    "\uffb9\066\uffb9\001\002\000\056\002\ufff6\006\ufff6\007\ufff6" +
-    "\010\ufff6\011\ufff6\012\ufff6\034\ufff6\043\ufff6\045\ufff6\047" +
-    "\ufff6\050\ufff6\053\ufff6\054\ufff6\056\ufff6\057\ufff6\060\ufff6" +
-    "\061\ufff6\062\ufff6\063\ufff6\064\ufff6\065\ufff6\066\ufff6\001" +
-    "\002\000\006\005\207\013\210\001\002\000\004\064\202" +
-    "\001\002\000\006\025\203\051\204\001\002\000\004\064" +
-    "\205\001\002\000\006\005\uffb6\013\uffb6\001\002\000\004" +
-    "\051\206\001\002\000\006\005\uffb5\013\uffb5\001\002\000" +
-    "\056\002\ufff7\006\ufff7\007\ufff7\010\ufff7\011\ufff7\012\ufff7" +
-    "\034\ufff7\043\ufff7\045\ufff7\047\ufff7\050\ufff7\053\ufff7\054" +
+    "\uffd1\036\uffd1\037\uffd1\040\uffd1\041\uffd1\042\uffd1\043\uffd1" +
+    "\045\uffd1\047\uffd1\052\uffd1\001\002\000\006\064\uffb9\065" +
+    "\uffb9\001\002\000\056\002\ufff6\006\ufff6\007\ufff6\010\ufff6" +
+    "\011\ufff6\012\ufff6\034\ufff6\044\ufff6\046\ufff6\050\ufff6\051" +
+    "\ufff6\053\ufff6\054\ufff6\055\ufff6\056\ufff6\057\ufff6\060\ufff6" +
+    "\061\ufff6\062\ufff6\063\ufff6\064\ufff6\065\ufff6\001\002\000" +
+    "\006\005\203\013\204\001\002\000\004\063\176\001\002" +
+    "\000\006\025\177\052\200\001\002\000\004\063\201\001" +
+    "\002\000\006\005\uffb6\013\uffb6\001\002\000\004\052\202" +
+    "\001\002\000\006\005\uffb5\013\uffb5\001\002\000\056\002" +
+    "\ufff7\006\ufff7\007\ufff7\010\ufff7\011\ufff7\012\ufff7\034\ufff7" +
+    "\044\ufff7\046\ufff7\050\ufff7\051\ufff7\053\ufff7\054\ufff7\055" +
     "\ufff7\056\ufff7\057\ufff7\060\ufff7\061\ufff7\062\ufff7\063\ufff7" +
-    "\064\ufff7\065\ufff7\066\ufff7\001\002\000\056\002\ufff5\006" +
-    "\ufff5\007\ufff5\010\ufff5\011\ufff5\012\ufff5\034\ufff5\043\ufff5" +
-    "\045\ufff5\047\ufff5\050\ufff5\053\ufff5\054\ufff5\056\ufff5\057" +
+    "\064\ufff7\065\ufff7\001\002\000\056\002\ufff5\006\ufff5\007" +
+    "\ufff5\010\ufff5\011\ufff5\012\ufff5\034\ufff5\044\ufff5\046\ufff5" +
+    "\050\ufff5\051\ufff5\053\ufff5\054\ufff5\055\ufff5\056\ufff5\057" +
     "\ufff5\060\ufff5\061\ufff5\062\ufff5\063\ufff5\064\ufff5\065\ufff5" +
-    "\066\ufff5\001\002\000\004\046\212\001\002\000\100\005" +
-    "\uffd0\012\uffd0\013\uffd0\014\uffd0\015\uffd0\016\uffd0\017\uffd0" +
-    "\020\uffd0\021\uffd0\022\uffd0\023\uffd0\024\uffd0\025\uffd0\026" +
-    "\uffd0\027\uffd0\030\uffd0\031\uffd0\032\uffd0\033\uffd0\034\uffd0" +
-    "\035\uffd0\036\uffd0\037\uffd0\040\uffd0\041\uffd0\042\uffd0\044" +
-    "\uffd0\046\uffd0\051\uffd0\052\uffd0\055\uffd0\001\002\000\100" +
-    "\005\uffc0\012\uffc0\013\uffc0\014\uffc0\015\uffc0\016\uffc0\017" +
-    "\uffc0\020\uffc0\021\uffc0\022\uffc0\023\uffc0\024\uffc0\025\uffc0" +
-    "\026\uffc0\027\uffc0\030\uffc0\031\uffc0\032\uffc0\033\uffc0\034" +
-    "\214\035\uffc0\036\uffc0\037\uffc0\040\uffc0\041\uffc0\042\uffc0" +
-    "\044\uffc0\046\uffc0\051\uffc0\052\uffc0\055\uffc0\001\002\000" +
-    "\006\035\uffc8\065\216\001\002\000\004\035\221\001\002" +
-    "\000\006\026\217\035\uffc7\001\002\000\006\035\uffc8\065" +
-    "\216\001\002\000\004\035\uffc6\001\002\000\100\005\uffc1" +
-    "\012\uffc1\013\uffc1\014\uffc1\015\uffc1\016\uffc1\017\uffc1\020" +
-    "\uffc1\021\uffc1\022\uffc1\023\uffc1\024\uffc1\025\uffc1\026\uffc1" +
-    "\027\uffc1\030\uffc1\031\uffc1\032\uffc1\033\uffc1\034\uffc1\035" +
-    "\uffc1\036\uffc1\037\uffc1\040\uffc1\041\uffc1\042\uffc1\044\uffc1" +
-    "\046\uffc1\051\uffc1\052\uffc1\055\uffc1\001\002\000\004\005" +
-    "\223\001\002\000\056\002\ufffe\006\ufffe\007\ufffe\010\ufffe" +
-    "\011\ufffe\012\ufffe\034\ufffe\043\ufffe\045\ufffe\047\ufffe\050" +
-    "\ufffe\053\ufffe\054\ufffe\056\ufffe\057\ufffe\060\ufffe\061\ufffe" +
-    "\062\ufffe\063\ufffe\064\ufffe\065\ufffe\066\ufffe\001\002\000" +
-    "\004\002\001\001\002\000\056\002\000\006\040\007\035" +
-    "\010\033\011\032\012\031\034\041\043\020\045\014\047" +
-    "\012\050\011\053\045\054\030\056\026\057\025\060\024" +
-    "\061\023\062\013\063\010\064\022\065\017\066\016\001" +
-    "\002" });
+    "\001\002\000\004\047\206\001\002\000\076\005\uffd0\012" +
+    "\uffd0\013\uffd0\014\uffd0\015\uffd0\016\uffd0\017\uffd0\020\uffd0" +
+    "\021\uffd0\022\uffd0\023\uffd0\024\uffd0\025\uffd0\026\uffd0\027" +
+    "\uffd0\030\uffd0\031\uffd0\032\uffd0\033\uffd0\034\uffd0\035\uffd0" +
+    "\036\uffd0\037\uffd0\040\uffd0\041\uffd0\042\uffd0\043\uffd0\045" +
+    "\uffd0\047\uffd0\052\uffd0\001\002\000\076\005\uffc0\012\uffc0" +
+    "\013\uffc0\014\uffc0\015\uffc0\016\uffc0\017\uffc0\020\uffc0\021" +
+    "\uffc0\022\uffc0\023\uffc0\024\uffc0\025\uffc0\026\uffc0\027\uffc0" +
+    "\030\uffc0\031\uffc0\032\uffc0\033\uffc0\034\210\035\uffc0\036" +
+    "\uffc0\037\uffc0\040\uffc0\041\uffc0\042\uffc0\043\uffc0\045\uffc0" +
+    "\047\uffc0\052\uffc0\001\002\000\006\035\uffc8\064\212\001" +
+    "\002\000\004\035\215\001\002\000\006\026\213\035\uffc7" +
+    "\001\002\000\006\035\uffc8\064\212\001\002\000\004\035" +
+    "\uffc6\001\002\000\076\005\uffc1\012\uffc1\013\uffc1\014\uffc1" +
+    "\015\uffc1\016\uffc1\017\uffc1\020\uffc1\021\uffc1\022\uffc1\023" +
+    "\uffc1\024\uffc1\025\uffc1\026\uffc1\027\uffc1\030\uffc1\031\uffc1" +
+    "\032\uffc1\033\uffc1\034\uffc1\035\uffc1\036\uffc1\037\uffc1\040" +
+    "\uffc1\041\uffc1\042\uffc1\043\uffc1\045\uffc1\047\uffc1\052\uffc1" +
+    "\001\002\000\004\005\217\001\002\000\056\002\ufffe\006" +
+    "\ufffe\007\ufffe\010\ufffe\011\ufffe\012\ufffe\034\ufffe\044\ufffe" +
+    "\046\ufffe\050\ufffe\051\ufffe\053\ufffe\054\ufffe\055\ufffe\056" +
+    "\ufffe\057\ufffe\060\ufffe\061\ufffe\062\ufffe\063\ufffe\064\ufffe" +
+    "\065\ufffe\001\002\000\004\002\001\001\002\000\056\002" +
+    "\000\006\037\007\034\010\032\011\031\012\030\034\040" +
+    "\044\017\046\013\050\011\051\047\053\044\054\027\055" +
+    "\026\056\024\057\023\060\022\061\012\062\010\063\021" +
+    "\064\016\065\015\001\002" });
 
   /** Access to parse-action table. */
   public short[][] action_table() {return _action_table;}
@@ -445,84 +436,80 @@ public class parser extends java_cup.runtime.lr_parser {
   /** <code>reduce_goto</code> table. */
   protected static final short[][] _reduce_table = 
     unpackFromStrings(new String[] {
-    "\000\223\000\010\003\004\004\003\005\006\001\001\000" +
-    "\004\005\224\001\001\000\002\001\001\000\002\001\001" +
-    "\000\032\006\026\007\014\010\036\011\035\012\033\013" +
-    "\042\014\047\015\046\016\045\021\020\022\043\023\041" +
+    "\000\217\000\010\003\004\004\003\005\006\001\001\000" +
+    "\004\005\220\001\001\000\002\001\001\000\002\001\001" +
+    "\000\032\006\024\007\013\010\035\011\034\012\032\013" +
+    "\041\014\047\015\045\016\044\021\017\022\042\023\040" +
     "\001\001\000\002\001\001\000\002\001\001\000\002\001" +
-    "\001\000\002\001\001\000\022\013\063\014\047\015\046" +
-    "\016\045\017\210\021\020\022\043\023\041\001\001\000" +
-    "\004\024\177\001\001\000\002\001\001\000\002\001\001" +
-    "\000\022\013\063\014\047\015\046\016\045\017\173\021" +
-    "\020\022\043\023\041\001\001\000\002\001\001\000\002" +
-    "\001\001\000\002\001\001\000\022\012\172\013\042\014" +
-    "\047\015\046\016\045\021\020\022\043\023\041\001\001" +
-    "\000\022\012\171\013\042\014\047\015\046\016\045\021" +
-    "\020\022\043\023\041\001\001\000\022\012\170\013\042" +
-    "\014\047\015\046\016\045\021\020\022\043\023\041\001" +
-    "\001\000\002\001\001\000\022\012\167\013\042\014\047" +
-    "\015\046\016\045\021\020\022\043\023\041\001\001\000" +
-    "\002\001\001\000\006\021\164\023\041\001\001\000\002" +
+    "\001\000\022\013\061\014\047\015\045\016\044\017\204" +
+    "\021\017\022\042\023\040\001\001\000\004\024\173\001" +
+    "\001\000\002\001\001\000\002\001\001\000\022\013\061" +
+    "\014\047\015\045\016\044\017\167\021\017\022\042\023" +
+    "\040\001\001\000\002\001\001\000\002\001\001\000\002" +
+    "\001\001\000\022\012\166\013\041\014\047\015\045\016" +
+    "\044\021\017\022\042\023\040\001\001\000\022\012\165" +
+    "\013\041\014\047\015\045\016\044\021\017\022\042\023" +
+    "\040\001\001\000\002\001\001\000\022\012\164\013\041" +
+    "\014\047\015\045\016\044\021\017\022\042\023\040\001" +
+    "\001\000\022\012\163\013\041\014\047\015\045\016\044" +
+    "\021\017\022\042\023\040\001\001\000\002\001\001\000" +
+    "\006\021\160\023\040\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\023\155\001\001\000\032" +
-    "\007\153\010\036\011\035\012\033\013\102\014\047\015" +
-    "\046\016\045\017\101\021\020\022\043\023\041\001\001" +
+    "\001\000\004\023\151\001\001\000\032\007\147\010\035" +
+    "\011\034\012\032\013\076\014\047\015\045\016\044\017" +
+    "\075\021\017\022\042\023\040\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\020\013\053\014\047\015\151\016\045\021" +
-    "\020\022\043\023\041\001\001\000\020\013\053\014\047" +
-    "\015\054\016\045\021\020\022\043\023\041\001\001\000" +
-    "\032\007\100\010\036\011\035\012\033\013\102\014\047" +
-    "\015\046\016\045\017\101\021\020\022\043\023\041\001" +
-    "\001\000\002\001\001\000\002\001\001\000\002\001\001" +
-    "\000\020\013\053\014\072\015\046\016\045\021\020\022" +
-    "\043\023\041\001\001\000\020\013\053\014\071\015\046" +
-    "\016\045\021\020\022\043\023\041\001\001\000\002\001" +
-    "\001\000\022\013\063\014\047\015\046\016\045\017\062" +
-    "\021\020\022\043\023\041\001\001\000\002\001\001\000" +
-    "\002\001\001\000\022\013\063\014\047\015\046\016\045" +
-    "\017\065\021\020\022\043\023\041\001\001\000\002\001" +
-    "\001\000\022\013\063\014\047\015\046\016\045\017\067" +
-    "\021\020\022\043\023\041\001\001\000\002\001\001\000" +
-    "\002\001\001\000\002\001\001\000\002\001\001\000\022" +
-    "\013\063\014\047\015\046\016\045\017\074\021\020\022" +
-    "\043\023\041\001\001\000\002\001\001\000\022\013\063" +
-    "\014\047\015\046\016\045\017\076\021\020\022\043\023" +
-    "\041\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\022\013\063\014\047\015\046\016\045\017\117" +
-    "\021\020\022\043\023\041\001\001\000\020\013\116\014" +
-    "\047\015\046\016\045\021\020\022\043\023\041\001\001" +
-    "\000\020\013\115\014\047\015\046\016\045\021\020\022" +
-    "\043\023\041\001\001\000\020\013\114\014\047\015\046" +
-    "\016\045\021\020\022\043\023\041\001\001\000\020\013" +
-    "\113\014\047\015\046\016\045\021\020\022\043\023\041" +
-    "\001\001\000\020\013\112\014\047\015\046\016\045\021" +
-    "\020\022\043\023\041\001\001\000\002\001\001\000\002" +
+    "\001\001\000\020\013\053\014\047\015\145\016\044\021" +
+    "\017\022\042\023\040\001\001\000\020\013\053\014\047" +
+    "\015\054\016\044\021\017\022\042\023\040\001\001\000" +
+    "\032\007\074\010\035\011\034\012\032\013\076\014\047" +
+    "\015\045\016\044\017\075\021\017\022\042\023\040\001" +
+    "\001\000\002\001\001\000\002\001\001\000\020\013\053" +
+    "\014\073\015\045\016\044\021\017\022\042\023\040\001" +
+    "\001\000\020\013\053\014\072\015\045\016\044\021\017" +
+    "\022\042\023\040\001\001\000\022\013\061\014\047\015" +
+    "\045\016\044\017\060\021\017\022\042\023\040\001\001" +
+    "\000\002\001\001\000\002\001\001\000\022\013\061\014" +
+    "\047\015\045\016\044\017\063\021\017\022\042\023\040" +
+    "\001\001\000\002\001\001\000\022\013\061\014\047\015" +
+    "\045\016\044\017\070\021\017\022\042\023\040\001\001" +
+    "\000\022\013\061\014\047\015\045\016\044\017\066\021" +
+    "\017\022\042\023\040\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\026\010\150\011\035\012\033\013\042\014\047\015" +
-    "\046\016\045\021\020\022\043\023\041\001\001\000\026" +
-    "\010\147\011\035\012\033\013\042\014\047\015\046\016" +
-    "\045\021\020\022\043\023\041\001\001\000\026\010\146" +
-    "\011\035\012\033\013\042\014\047\015\046\016\045\021" +
-    "\020\022\043\023\041\001\001\000\026\010\145\011\035" +
-    "\012\033\013\042\014\047\015\046\016\045\021\020\022" +
-    "\043\023\041\001\001\000\002\001\001\000\026\010\144" +
-    "\011\035\012\033\013\042\014\047\015\046\016\045\021" +
-    "\020\022\043\023\041\001\001\000\026\010\143\011\035" +
-    "\012\033\013\042\014\047\015\046\016\045\021\020\022" +
-    "\043\023\041\001\001\000\026\010\132\011\035\012\033" +
-    "\013\042\014\047\015\046\016\045\021\020\022\043\023" +
-    "\041\001\001\000\002\001\001\000\024\011\142\012\033" +
-    "\013\042\014\047\015\046\016\045\021\020\022\043\023" +
-    "\041\001\001\000\024\011\141\012\033\013\042\014\047" +
-    "\015\046\016\045\021\020\022\043\023\041\001\001\000" +
-    "\024\011\140\012\033\013\042\014\047\015\046\016\045" +
-    "\021\020\022\043\023\041\001\001\000\024\011\137\012" +
-    "\033\013\042\014\047\015\046\016\045\021\020\022\043" +
-    "\023\041\001\001\000\002\001\001\000\002\001\001\000" +
-    "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
+    "\000\002\001\001\000\002\001\001\000\022\013\061\014" +
+    "\047\015\045\016\044\017\113\021\017\022\042\023\040" +
+    "\001\001\000\020\013\112\014\047\015\045\016\044\021" +
+    "\017\022\042\023\040\001\001\000\020\013\111\014\047" +
+    "\015\045\016\044\021\017\022\042\023\040\001\001\000" +
+    "\020\013\110\014\047\015\045\016\044\021\017\022\042" +
+    "\023\040\001\001\000\020\013\107\014\047\015\045\016" +
+    "\044\021\017\022\042\023\040\001\001\000\020\013\106" +
+    "\014\047\015\045\016\044\021\017\022\042\023\040\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\026\010\144\011\034" +
+    "\012\032\013\041\014\047\015\045\016\044\021\017\022" +
+    "\042\023\040\001\001\000\026\010\143\011\034\012\032" +
+    "\013\041\014\047\015\045\016\044\021\017\022\042\023" +
+    "\040\001\001\000\026\010\142\011\034\012\032\013\041" +
+    "\014\047\015\045\016\044\021\017\022\042\023\040\001" +
+    "\001\000\026\010\141\011\034\012\032\013\041\014\047" +
+    "\015\045\016\044\021\017\022\042\023\040\001\001\000" +
+    "\002\001\001\000\026\010\140\011\034\012\032\013\041" +
+    "\014\047\015\045\016\044\021\017\022\042\023\040\001" +
+    "\001\000\026\010\137\011\034\012\032\013\041\014\047" +
+    "\015\045\016\044\021\017\022\042\023\040\001\001\000" +
+    "\026\010\126\011\034\012\032\013\041\014\047\015\045" +
+    "\016\044\021\017\022\042\023\040\001\001\000\002\001" +
+    "\001\000\024\011\136\012\032\013\041\014\047\015\045" +
+    "\016\044\021\017\022\042\023\040\001\001\000\024\011" +
+    "\135\012\032\013\041\014\047\015\045\016\044\021\017" +
+    "\022\042\023\040\001\001\000\024\011\134\012\032\013" +
+    "\041\014\047\015\045\016\044\021\017\022\042\023\040" +
+    "\001\001\000\024\011\133\012\032\013\041\014\047\015" +
+    "\045\016\044\021\017\022\042\023\040\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" +
@@ -534,13 +521,14 @@ public class parser extends java_cup.runtime.lr_parser {
     "\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" +
-    "\020\214\001\001\000\002\001\001\000\002\001\001\000" +
-    "\004\020\217\001\001\000\002\001\001\000\002\001\001" +
-    "\000\002\001\001\000\002\001\001\000\002\001\001\000" +
-    "\032\006\026\007\014\010\036\011\035\012\033\013\042" +
-    "\014\047\015\046\016\045\021\020\022\043\023\041\001" +
-    "\001" });
+    "\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\020\210\001\001\000\002" +
+    "\001\001\000\002\001\001\000\004\020\213\001\001\000" +
+    "\002\001\001\000\002\001\001\000\002\001\001\000\002" +
+    "\001\001\000\002\001\001\000\032\006\024\007\013\010" +
+    "\035\011\034\012\032\013\041\014\047\015\045\016\044" +
+    "\021\017\022\042\023\040\001\001" });
 
   /** Access to <code>reduce_goto</code> table. */
   public short[][] reduce_table() {return _reduce_table;}
@@ -624,7 +612,7 @@ class CUP$parser$actions {
       switch (CUP$parser$act_num)
         {
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 76: // TruthValue ::= _SYMB_37 _DOUBLE_ _SYMB_17 _DOUBLE_ _SYMB_37 
+          case 76: // TruthValue ::= _SYMB_38 _DOUBLE_ _SYMB_17 _DOUBLE_ _SYMB_38 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.TruthValue RESULT = null;
 		Double p_2 = (Double)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
@@ -635,7 +623,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 75: // TruthValue ::= _SYMB_37 _DOUBLE_ _SYMB_37 
+          case 75: // TruthValue ::= _SYMB_38 _DOUBLE_ _SYMB_38 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.TruthValue RESULT = null;
 		Double p_2 = (Double)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
@@ -654,7 +642,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 73: // NSPrefix ::= _SYMB_36 
+          case 73: // NSPrefix ::= _SYMB_37 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.NSPrefix RESULT = null;
 		 RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.NSPrefix2(); 
@@ -663,7 +651,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 72: // NSPrefix ::= _IDENT_ _SYMB_36 
+          case 72: // NSPrefix ::= _IDENT_ _SYMB_37 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.NSPrefix RESULT = null;
 		String p_1 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
@@ -682,7 +670,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 70: // Literal ::= _SYMB_45 
+          case 70: // Literal ::= _SYMB_44 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Literal RESULT = null;
 		 RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.LitTrue(); 
@@ -731,7 +719,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 65: // Literal ::= _SYMB_35 _IDENT_ 
+          case 65: // Literal ::= _SYMB_36 _IDENT_ 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Literal RESULT = null;
 		String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
@@ -741,7 +729,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 64: // Literal ::= _SYMB_35 _IDENT_ _SYMB_24 ListIdent _SYMB_25 
+          case 64: // Literal ::= _SYMB_36 _IDENT_ _SYMB_24 ListIdent _SYMB_25 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Literal RESULT = null;
 		String p_2 = (String)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
@@ -892,7 +880,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 49: // Term3 ::= _SYMB_33 ListTerm _SYMB_34 
+          case 49: // Term3 ::= _SYMB_34 ListTerm _SYMB_35 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Term RESULT = null;
 		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_2 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
@@ -902,7 +890,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 48: // Term3 ::= _SYMB_31 ListTerm _SYMB_32 
+          case 48: // Term3 ::= _SYMB_32 ListTerm _SYMB_33 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Term RESULT = null;
 		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_2 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
@@ -922,25 +910,25 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 46: // Term2 ::= Term _SYMB_41 _SYMB_24 ListTerm _SYMB_30 ListTerm _SYMB_25 
+          case 46: // Term2 ::= Term _SYMB_24 ListTerm _SYMB_31 ListTerm _SYMB_25 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Term RESULT = null;
-		com.googlecode.opennars.parser.loan.Loan.Absyn.Term p_1 = (com.googlecode.opennars.parser.loan.Loan.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-6)).value;
-		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_4 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
-		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_6 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
-		 RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInImg(p_1,p_4,p_6); 
+		com.googlecode.opennars.parser.loan.Loan.Absyn.Term p_1 = (com.googlecode.opennars.parser.loan.Loan.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
+		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_3 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
+		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_5 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
+		 RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmInImg(p_1,p_3,p_5); 
               CUP$parser$result = new java_cup.runtime.Symbol(11/*Term2*/, RESULT);
             }
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 45: // Term2 ::= Term _SYMB_38 _SYMB_24 ListTerm _SYMB_30 ListTerm _SYMB_25 
+          case 45: // Term2 ::= Term _SYMB_24 ListTerm _SYMB_30 ListTerm _SYMB_25 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Term RESULT = null;
-		com.googlecode.opennars.parser.loan.Loan.Absyn.Term p_1 = (com.googlecode.opennars.parser.loan.Loan.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-6)).value;
-		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_4 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
-		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_6 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
-		 RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExImg(p_1,p_4,p_6); 
+		com.googlecode.opennars.parser.loan.Loan.Absyn.Term p_1 = (com.googlecode.opennars.parser.loan.Loan.Absyn.Term)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-5)).value;
+		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_3 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-3)).value;
+		com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm p_5 = (com.googlecode.opennars.parser.loan.Loan.Absyn.ListTerm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-1)).value;
+		 RESULT = new com.googlecode.opennars.parser.loan.Loan.Absyn.TrmExImg(p_1,p_3,p_5); 
               CUP$parser$result = new java_cup.runtime.Symbol(11/*Term2*/, RESULT);
             }
           return CUP$parser$result;
@@ -1116,7 +1104,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 28: // Stm2 ::= _SYMB_44 Stm3 
+          case 28: // Stm2 ::= _SYMB_43 Stm3 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Stm RESULT = null;
 		com.googlecode.opennars.parser.loan.Loan.Absyn.Stm p_2 = (com.googlecode.opennars.parser.loan.Loan.Absyn.Stm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
@@ -1126,7 +1114,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 27: // Stm2 ::= _SYMB_43 Stm3 
+          case 27: // Stm2 ::= _SYMB_42 Stm3 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Stm RESULT = null;
 		com.googlecode.opennars.parser.loan.Loan.Absyn.Stm p_2 = (com.googlecode.opennars.parser.loan.Loan.Absyn.Stm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
@@ -1136,7 +1124,7 @@ class CUP$parser$actions {
           return CUP$parser$result;
 
           /*. . . . . . . . . . . . . . . . . . . .*/
-          case 26: // Stm2 ::= _SYMB_42 Stm3 
+          case 26: // Stm2 ::= _SYMB_41 Stm3 
             {
               com.googlecode.opennars.parser.loan.Loan.Absyn.Stm RESULT = null;
 		com.googlecode.opennars.parser.loan.Loan.Absyn.Stm p_2 = (com.googlecode.opennars.parser.loan.Loan.Absyn.Stm)((java_cup.runtime.Symbol) CUP$parser$stack.elementAt(CUP$parser$top-0)).value;
diff --git a/open-nars/com/googlecode/opennars/parser/loan/Loan/sym.java b/open-nars/com/googlecode/opennars/parser/loan/Loan/sym.java
index db86f2a..c8290bc 100644
--- a/open-nars/com/googlecode/opennars/parser/loan/Loan/sym.java
+++ b/open-nars/com/googlecode/opennars/parser/loan/Loan/sym.java
@@ -1,7 +1,7 @@
 
 //----------------------------------------------------
 // The following code was generated by CUP v0.10k
-// Fri Apr 04 05:03:03 BST 2008
+// Fri Apr 04 18:55:20 BST 2008
 //----------------------------------------------------
 
 package com.googlecode.opennars.parser.loan.Loan;
@@ -14,7 +14,6 @@ public class sym {
   public static final int _SYMB_16 = 18;
   public static final int _SYMB_15 = 17;
   public static final int _SYMB_14 = 16;
-  public static final int _SYMB_45 = 47;
   public static final int _SYMB_13 = 15;
   public static final int _SYMB_44 = 46;
   public static final int _SYMB_12 = 14;
@@ -26,7 +25,7 @@ public class sym {
   public static final int _SYMB_10 = 12;
   public static final int _SYMB_41 = 43;
   public static final int _SYMB_7 = 9;
-  public static final int URILit = 52;
+  public static final int URILit = 51;
   public static final int _SYMB_40 = 42;
   public static final int _SYMB_6 = 8;
   public static final int _SYMB_5 = 7;
@@ -35,9 +34,9 @@ public class sym {
   public static final int _SYMB_2 = 4;
   public static final int _SYMB_1 = 3;
   public static final int _SYMB_0 = 2;
-  public static final int _IDENT_ = 51;
-  public static final int _INTEGER_ = 49;
-  public static final int _STRING_ = 48;
+  public static final int _IDENT_ = 50;
+  public static final int _INTEGER_ = 48;
+  public static final int _STRING_ = 47;
   public static final int _SYMB_39 = 41;
   public static final int _SYMB_38 = 40;
   public static final int _SYMB_37 = 39;
@@ -60,7 +59,7 @@ public class sym {
   public static final int _SYMB_22 = 24;
   public static final int _SYMB_21 = 23;
   public static final int _SYMB_20 = 22;
-  public static final int _DOUBLE_ = 50;
+  public static final int _DOUBLE_ = 49;
   public static final int _SYMB_19 = 21;
 }
 
-- 
GitLab