[eclipselink] Initial import (#809540)

gil gil at fedoraproject.org
Wed Jul 18 08:48:03 UTC 2012


commit 8a0d999a396c1eb6959aac8405e19afc5aba9641
Author: gil <puntogil at libero.it>
Date:   Wed Jul 18 10:47:19 2012 +0200

    Initial import (#809540)

 .gitignore                                         |    1 +
 eclipselink-2.1.3-build.properties                 |    7 +
 ...selink-2.2.1-disable_antlr3_embedded_copy.patch | 6620 ++++++++++++++++++++
 eclipselink-2.3.2-06-build.xml                     |  241 +
 eclipselink-2.3.2-core-pom.patch                   |   76 +
 ...nk-2.3.2-disable-non-free-osgi-enterprise.patch |   35 +
 eclipselink-2.3.2-disable_asm_embedded_copy.patch  |  315 +
 eclipselink-2.3.2-jdk7.patch                       |   24 +
 eclipselink-2.3.2-jpa-pom.patch                    |   68 +
 eclipselink-2.3.2.pom                              |   46 +
 eclipselink.spec                                   |  144 +
 org.eclipse.persistence.core-2.3.2.pom             |   46 +
 org.eclipse.persistence.jpa-2.3.2.pom              |   46 +
 sources                                            |    1 +
 14 files changed, 7670 insertions(+), 0 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index e69de29..4a293b4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/eclipselink-src-2.3.2.v20111125-r10461.zip
diff --git a/eclipselink-2.1.3-build.properties b/eclipselink-2.1.3-build.properties
new file mode 100644
index 0000000..b97eafe
--- /dev/null
+++ b/eclipselink-2.1.3-build.properties
@@ -0,0 +1,7 @@
+debug=on
+target=1.6
+source=1.5
+
+dir.src=${basedir}/.
+dir.debian=${basedir}
+dir.build=${basedir}/target
\ No newline at end of file
diff --git a/eclipselink-2.2.1-disable_antlr3_embedded_copy.patch b/eclipselink-2.2.1-disable_antlr3_embedded_copy.patch
new file mode 100644
index 0000000..8158d88
--- /dev/null
+++ b/eclipselink-2.2.1-disable_antlr3_embedded_copy.patch
@@ -0,0 +1,6620 @@
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLLexer.java	2011-10-24 01:49:52.845911904 +0200
+@@ -5,125 +5,125 @@
+     import org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierStartException;
+ 
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
++import org.antlr.runtime.*;
+ 
+ public class JPQLLexer extends Lexer {
+-    public static final int EXPONENT=116;
+-    public static final int FLOAT_SUFFIX=117;
+-    public static final int DATE_STRING=118;
+-    public static final int MOD=51;
+-    public static final int CURRENT_TIME=19;
+-    public static final int CASE=14;
+-    public static final int NEW=52;
+-    public static final int LEFT_ROUND_BRACKET=83;
+-    public static final int DOUBLE_LITERAL=98;
+-    public static final int TIME_LITERAL=102;
+-    public static final int COUNT=17;
+-    public static final int EQUALS=82;
+-    public static final int NOT=53;
+-    public static final int EOF=-1;
+-    public static final int TIME_STRING=119;
+-    public static final int TYPE=73;
+-    public static final int LEFT_CURLY_BRACKET=107;
+-    public static final int GREATER_THAN_EQUAL_TO=88;
+-    public static final int ESCAPE=28;
+-    public static final int NAMED_PARAM=105;
+-    public static final int BOTH=12;
+-    public static final int TIMESTAMP_LITERAL=103;
+-    public static final int NUMERIC_DIGITS=114;
+-    public static final int SELECT=61;
+-    public static final int DIVIDE=94;
+-    public static final int COALESCE=15;
+-    public static final int ASC=9;
+-    public static final int CONCAT=16;
+-    public static final int KEY=41;
+-    public static final int NULL=54;
+-    public static final int ELSE=24;
+-    public static final int TRAILING=69;
+-    public static final int DELETE=22;
+-    public static final int VALUE=77;
+-    public static final int DATE_LITERAL=101;
+-    public static final int OF=57;
+-    public static final int LEADING=42;
+-    public static final int RIGHT_CURLY_BRACKET=108;
+-    public static final int EMPTY=25;
+-    public static final int INTEGER_SUFFIX=112;
+-    public static final int ABS=4;
+-    public static final int GROUP=34;
+-    public static final int NOT_EQUAL_TO=86;
+-    public static final int WS=106;
+-    public static final int FETCH=31;
+-    public static final int STRING_LITERAL_SINGLE_QUOTED=100;
+-    public static final int INTEGER_LITERAL=95;
+-    public static final int FUNC=32;
+-    public static final int OR=58;
+-    public static final int TRIM=71;
+-    public static final int LESS_THAN=89;
+-    public static final int RIGHT_ROUND_BRACKET=84;
+-    public static final int POSITIONAL_PARAM=104;
+-    public static final int LOWER=47;
+-    public static final int FROM=33;
+-    public static final int END=26;
+-    public static final int FALSE=30;
+-    public static final int LESS_THAN_EQUAL_TO=90;
+-    public static final int DISTINCT=23;
+-    public static final int CURRENT_DATE=18;
+-    public static final int SIZE=63;
+-    public static final int UPPER=76;
+-    public static final int WHERE=79;
+-    public static final int NULLIF=55;
+-    public static final int MEMBER=49;
+-    public static final int INNER=38;
+-    public static final int ORDER=59;
+-    public static final int TEXTCHAR=109;
+-    public static final int MAX=48;
+-    public static final int UPDATE=75;
+-    public static final int AND=6;
+-    public static final int SUM=67;
+-    public static final int STRING_LITERAL_DOUBLE_QUOTED=99;
+-    public static final int LENGTH=44;
+-    public static final int INDEX=37;
+-    public static final int AS=8;
+-    public static final int IN=36;
+-    public static final int THEN=68;
+-    public static final int UNKNOWN=74;
+-    public static final int MULTIPLY=93;
+-    public static final int OBJECT=56;
+-    public static final int COMMA=81;
+-    public static final int IS=39;
+-    public static final int LEFT=43;
+-    public static final int AVG=10;
+-    public static final int SOME=65;
+-    public static final int ALL=5;
+-    public static final int IDENT=80;
+-    public static final int PLUS=91;
+-    public static final int HEX_LITERAL=111;
+-    public static final int EXISTS=29;
+-    public static final int DOT=85;
+-    public static final int CURRENT_TIMESTAMP=20;
+-    public static final int LIKE=45;
+-    public static final int OUTER=60;
+-    public static final int BY=13;
+-    public static final int GREATER_THAN=87;
+-    public static final int OCTAL_LITERAL=113;
+-    public static final int HEX_DIGIT=110;
+-    public static final int SET=62;
+-    public static final int HAVING=35;
+-    public static final int ENTRY=27;
+-    public static final int MIN=50;
+-    public static final int SQRT=64;
+-    public static final int MINUS=92;
+-    public static final int LONG_LITERAL=96;
+-    public static final int TRUE=72;
+-    public static final int JOIN=40;
+-    public static final int SUBSTRING=66;
+-    public static final int FLOAT_LITERAL=97;
+-    public static final int DOUBLE_SUFFIX=115;
+-    public static final int ANY=7;
+-    public static final int LOCATE=46;
+-    public static final int WHEN=78;
+-    public static final int DESC=21;
+-    public static final int BETWEEN=11;
++    public static final int EXPONENT=116;
++    public static final int FLOAT_SUFFIX=117;
++    public static final int DATE_STRING=118;
++    public static final int MOD=51;
++    public static final int CURRENT_TIME=19;
++    public static final int CASE=14;
++    public static final int NEW=52;
++    public static final int LEFT_ROUND_BRACKET=83;
++    public static final int DOUBLE_LITERAL=98;
++    public static final int TIME_LITERAL=102;
++    public static final int COUNT=17;
++    public static final int EQUALS=82;
++    public static final int NOT=53;
++    public static final int EOF=-1;
++    public static final int TIME_STRING=119;
++    public static final int TYPE=73;
++    public static final int LEFT_CURLY_BRACKET=107;
++    public static final int GREATER_THAN_EQUAL_TO=88;
++    public static final int ESCAPE=28;
++    public static final int NAMED_PARAM=105;
++    public static final int BOTH=12;
++    public static final int TIMESTAMP_LITERAL=103;
++    public static final int NUMERIC_DIGITS=114;
++    public static final int SELECT=61;
++    public static final int DIVIDE=94;
++    public static final int COALESCE=15;
++    public static final int ASC=9;
++    public static final int CONCAT=16;
++    public static final int KEY=41;
++    public static final int NULL=54;
++    public static final int ELSE=24;
++    public static final int TRAILING=69;
++    public static final int DELETE=22;
++    public static final int VALUE=77;
++    public static final int DATE_LITERAL=101;
++    public static final int OF=57;
++    public static final int LEADING=42;
++    public static final int RIGHT_CURLY_BRACKET=108;
++    public static final int EMPTY=25;
++    public static final int INTEGER_SUFFIX=112;
++    public static final int ABS=4;
++    public static final int GROUP=34;
++    public static final int NOT_EQUAL_TO=86;
++    public static final int WS=106;
++    public static final int FETCH=31;
++    public static final int STRING_LITERAL_SINGLE_QUOTED=100;
++    public static final int INTEGER_LITERAL=95;
++    public static final int FUNC=32;
++    public static final int OR=58;
++    public static final int TRIM=71;
++    public static final int LESS_THAN=89;
++    public static final int RIGHT_ROUND_BRACKET=84;
++    public static final int POSITIONAL_PARAM=104;
++    public static final int LOWER=47;
++    public static final int FROM=33;
++    public static final int END=26;
++    public static final int FALSE=30;
++    public static final int LESS_THAN_EQUAL_TO=90;
++    public static final int DISTINCT=23;
++    public static final int CURRENT_DATE=18;
++    public static final int SIZE=63;
++    public static final int UPPER=76;
++    public static final int WHERE=79;
++    public static final int NULLIF=55;
++    public static final int MEMBER=49;
++    public static final int INNER=38;
++    public static final int ORDER=59;
++    public static final int TEXTCHAR=109;
++    public static final int MAX=48;
++    public static final int UPDATE=75;
++    public static final int AND=6;
++    public static final int SUM=67;
++    public static final int STRING_LITERAL_DOUBLE_QUOTED=99;
++    public static final int LENGTH=44;
++    public static final int INDEX=37;
++    public static final int AS=8;
++    public static final int IN=36;
++    public static final int THEN=68;
++    public static final int UNKNOWN=74;
++    public static final int MULTIPLY=93;
++    public static final int OBJECT=56;
++    public static final int COMMA=81;
++    public static final int IS=39;
++    public static final int LEFT=43;
++    public static final int AVG=10;
++    public static final int SOME=65;
++    public static final int ALL=5;
++    public static final int IDENT=80;
++    public static final int PLUS=91;
++    public static final int HEX_LITERAL=111;
++    public static final int EXISTS=29;
++    public static final int DOT=85;
++    public static final int CURRENT_TIMESTAMP=20;
++    public static final int LIKE=45;
++    public static final int OUTER=60;
++    public static final int BY=13;
++    public static final int GREATER_THAN=87;
++    public static final int OCTAL_LITERAL=113;
++    public static final int HEX_DIGIT=110;
++    public static final int SET=62;
++    public static final int HAVING=35;
++    public static final int ENTRY=27;
++    public static final int MIN=50;
++    public static final int SQRT=64;
++    public static final int MINUS=92;
++    public static final int LONG_LITERAL=96;
++    public static final int TRUE=72;
++    public static final int JOIN=40;
++    public static final int SUBSTRING=66;
++    public static final int FLOAT_LITERAL=97;
++    public static final int DOUBLE_SUFFIX=115;
++    public static final int ANY=7;
++    public static final int LOCATE=46;
++    public static final int WHEN=78;
++    public static final int DESC=21;
++    public static final int BETWEEN=11;
+     public static final int TREAT=70;
+ 
+     // delegates
+@@ -147,8 +147,8 @@
+             // JPQL.g:9:5: ( 'abs' )
+             // JPQL.g:9:7: 'abs'
+             {
+-            match("abs"); 
+-
++            match("abs"); 
++
+ 
+             }
+ 
+@@ -158,8 +158,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ABS"
+-
++    // $ANTLR end "ABS"
++
+     // $ANTLR start "ALL"
+     public final void mALL() throws RecognitionException {
+         try {
+@@ -168,8 +168,8 @@
+             // JPQL.g:10:5: ( 'all' )
+             // JPQL.g:10:7: 'all'
+             {
+-            match("all"); 
+-
++            match("all"); 
++
+ 
+             }
+ 
+@@ -179,8 +179,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ALL"
+-
++    // $ANTLR end "ALL"
++
+     // $ANTLR start "AND"
+     public final void mAND() throws RecognitionException {
+         try {
+@@ -189,8 +189,8 @@
+             // JPQL.g:11:5: ( 'and' )
+             // JPQL.g:11:7: 'and'
+             {
+-            match("and"); 
+-
++            match("and"); 
++
+ 
+             }
+ 
+@@ -200,8 +200,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "AND"
+-
++    // $ANTLR end "AND"
++
+     // $ANTLR start "ANY"
+     public final void mANY() throws RecognitionException {
+         try {
+@@ -210,8 +210,8 @@
+             // JPQL.g:12:5: ( 'any' )
+             // JPQL.g:12:7: 'any'
+             {
+-            match("any"); 
+-
++            match("any"); 
++
+ 
+             }
+ 
+@@ -221,8 +221,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ANY"
+-
++    // $ANTLR end "ANY"
++
+     // $ANTLR start "AS"
+     public final void mAS() throws RecognitionException {
+         try {
+@@ -231,8 +231,8 @@
+             // JPQL.g:13:4: ( 'as' )
+             // JPQL.g:13:6: 'as'
+             {
+-            match("as"); 
+-
++            match("as"); 
++
+ 
+             }
+ 
+@@ -242,8 +242,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "AS"
+-
++    // $ANTLR end "AS"
++
+     // $ANTLR start "ASC"
+     public final void mASC() throws RecognitionException {
+         try {
+@@ -252,8 +252,8 @@
+             // JPQL.g:14:5: ( 'asc' )
+             // JPQL.g:14:7: 'asc'
+             {
+-            match("asc"); 
+-
++            match("asc"); 
++
+ 
+             }
+ 
+@@ -263,8 +263,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ASC"
+-
++    // $ANTLR end "ASC"
++
+     // $ANTLR start "AVG"
+     public final void mAVG() throws RecognitionException {
+         try {
+@@ -273,8 +273,8 @@
+             // JPQL.g:15:5: ( 'avg' )
+             // JPQL.g:15:7: 'avg'
+             {
+-            match("avg"); 
+-
++            match("avg"); 
++
+ 
+             }
+ 
+@@ -284,8 +284,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "AVG"
+-
++    // $ANTLR end "AVG"
++
+     // $ANTLR start "BETWEEN"
+     public final void mBETWEEN() throws RecognitionException {
+         try {
+@@ -294,8 +294,8 @@
+             // JPQL.g:16:9: ( 'between' )
+             // JPQL.g:16:11: 'between'
+             {
+-            match("between"); 
+-
++            match("between"); 
++
+ 
+             }
+ 
+@@ -305,8 +305,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "BETWEEN"
+-
++    // $ANTLR end "BETWEEN"
++
+     // $ANTLR start "BOTH"
+     public final void mBOTH() throws RecognitionException {
+         try {
+@@ -315,8 +315,8 @@
+             // JPQL.g:17:6: ( 'both' )
+             // JPQL.g:17:8: 'both'
+             {
+-            match("both"); 
+-
++            match("both"); 
++
+ 
+             }
+ 
+@@ -326,8 +326,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "BOTH"
+-
++    // $ANTLR end "BOTH"
++
+     // $ANTLR start "BY"
+     public final void mBY() throws RecognitionException {
+         try {
+@@ -336,8 +336,8 @@
+             // JPQL.g:18:4: ( 'by' )
+             // JPQL.g:18:6: 'by'
+             {
+-            match("by"); 
+-
++            match("by"); 
++
+ 
+             }
+ 
+@@ -347,8 +347,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "BY"
+-
++    // $ANTLR end "BY"
++
+     // $ANTLR start "CASE"
+     public final void mCASE() throws RecognitionException {
+         try {
+@@ -357,8 +357,8 @@
+             // JPQL.g:19:6: ( 'case' )
+             // JPQL.g:19:8: 'case'
+             {
+-            match("case"); 
+-
++            match("case"); 
++
+ 
+             }
+ 
+@@ -368,8 +368,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "CASE"
+-
++    // $ANTLR end "CASE"
++
+     // $ANTLR start "COALESCE"
+     public final void mCOALESCE() throws RecognitionException {
+         try {
+@@ -378,8 +378,8 @@
+             // JPQL.g:20:10: ( 'coalesce' )
+             // JPQL.g:20:12: 'coalesce'
+             {
+-            match("coalesce"); 
+-
++            match("coalesce"); 
++
+ 
+             }
+ 
+@@ -389,8 +389,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "COALESCE"
+-
++    // $ANTLR end "COALESCE"
++
+     // $ANTLR start "CONCAT"
+     public final void mCONCAT() throws RecognitionException {
+         try {
+@@ -399,8 +399,8 @@
+             // JPQL.g:21:8: ( 'concat' )
+             // JPQL.g:21:10: 'concat'
+             {
+-            match("concat"); 
+-
++            match("concat"); 
++
+ 
+             }
+ 
+@@ -410,8 +410,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "CONCAT"
+-
++    // $ANTLR end "CONCAT"
++
+     // $ANTLR start "COUNT"
+     public final void mCOUNT() throws RecognitionException {
+         try {
+@@ -420,8 +420,8 @@
+             // JPQL.g:22:7: ( 'count' )
+             // JPQL.g:22:9: 'count'
+             {
+-            match("count"); 
+-
++            match("count"); 
++
+ 
+             }
+ 
+@@ -431,8 +431,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "COUNT"
+-
++    // $ANTLR end "COUNT"
++
+     // $ANTLR start "CURRENT_DATE"
+     public final void mCURRENT_DATE() throws RecognitionException {
+         try {
+@@ -441,8 +441,8 @@
+             // JPQL.g:23:14: ( 'current_date' )
+             // JPQL.g:23:16: 'current_date'
+             {
+-            match("current_date"); 
+-
++            match("current_date"); 
++
+ 
+             }
+ 
+@@ -452,8 +452,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "CURRENT_DATE"
+-
++    // $ANTLR end "CURRENT_DATE"
++
+     // $ANTLR start "CURRENT_TIME"
+     public final void mCURRENT_TIME() throws RecognitionException {
+         try {
+@@ -462,8 +462,8 @@
+             // JPQL.g:24:14: ( 'current_time' )
+             // JPQL.g:24:16: 'current_time'
+             {
+-            match("current_time"); 
+-
++            match("current_time"); 
++
+ 
+             }
+ 
+@@ -473,8 +473,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "CURRENT_TIME"
+-
++    // $ANTLR end "CURRENT_TIME"
++
+     // $ANTLR start "CURRENT_TIMESTAMP"
+     public final void mCURRENT_TIMESTAMP() throws RecognitionException {
+         try {
+@@ -483,8 +483,8 @@
+             // JPQL.g:25:19: ( 'current_timestamp' )
+             // JPQL.g:25:21: 'current_timestamp'
+             {
+-            match("current_timestamp"); 
+-
++            match("current_timestamp"); 
++
+ 
+             }
+ 
+@@ -494,8 +494,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "CURRENT_TIMESTAMP"
+-
++    // $ANTLR end "CURRENT_TIMESTAMP"
++
+     // $ANTLR start "DESC"
+     public final void mDESC() throws RecognitionException {
+         try {
+@@ -504,8 +504,8 @@
+             // JPQL.g:26:6: ( 'desc' )
+             // JPQL.g:26:8: 'desc'
+             {
+-            match("desc"); 
+-
++            match("desc"); 
++
+ 
+             }
+ 
+@@ -515,8 +515,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DESC"
+-
++    // $ANTLR end "DESC"
++
+     // $ANTLR start "DELETE"
+     public final void mDELETE() throws RecognitionException {
+         try {
+@@ -525,8 +525,8 @@
+             // JPQL.g:27:8: ( 'delete' )
+             // JPQL.g:27:10: 'delete'
+             {
+-            match("delete"); 
+-
++            match("delete"); 
++
+ 
+             }
+ 
+@@ -536,8 +536,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DELETE"
+-
++    // $ANTLR end "DELETE"
++
+     // $ANTLR start "DISTINCT"
+     public final void mDISTINCT() throws RecognitionException {
+         try {
+@@ -546,8 +546,8 @@
+             // JPQL.g:28:10: ( 'distinct' )
+             // JPQL.g:28:12: 'distinct'
+             {
+-            match("distinct"); 
+-
++            match("distinct"); 
++
+ 
+             }
+ 
+@@ -557,8 +557,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DISTINCT"
+-
++    // $ANTLR end "DISTINCT"
++
+     // $ANTLR start "ELSE"
+     public final void mELSE() throws RecognitionException {
+         try {
+@@ -567,8 +567,8 @@
+             // JPQL.g:29:6: ( 'else' )
+             // JPQL.g:29:8: 'else'
+             {
+-            match("else"); 
+-
++            match("else"); 
++
+ 
+             }
+ 
+@@ -578,8 +578,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ELSE"
+-
++    // $ANTLR end "ELSE"
++
+     // $ANTLR start "EMPTY"
+     public final void mEMPTY() throws RecognitionException {
+         try {
+@@ -588,8 +588,8 @@
+             // JPQL.g:30:7: ( 'empty' )
+             // JPQL.g:30:9: 'empty'
+             {
+-            match("empty"); 
+-
++            match("empty"); 
++
+ 
+             }
+ 
+@@ -599,8 +599,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "EMPTY"
+-
++    // $ANTLR end "EMPTY"
++
+     // $ANTLR start "END"
+     public final void mEND() throws RecognitionException {
+         try {
+@@ -609,8 +609,8 @@
+             // JPQL.g:31:5: ( 'end' )
+             // JPQL.g:31:7: 'end'
+             {
+-            match("end"); 
+-
++            match("end"); 
++
+ 
+             }
+ 
+@@ -620,8 +620,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "END"
+-
++    // $ANTLR end "END"
++
+     // $ANTLR start "ENTRY"
+     public final void mENTRY() throws RecognitionException {
+         try {
+@@ -630,8 +630,8 @@
+             // JPQL.g:32:7: ( 'entry' )
+             // JPQL.g:32:9: 'entry'
+             {
+-            match("entry"); 
+-
++            match("entry"); 
++
+ 
+             }
+ 
+@@ -641,8 +641,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ENTRY"
+-
++    // $ANTLR end "ENTRY"
++
+     // $ANTLR start "ESCAPE"
+     public final void mESCAPE() throws RecognitionException {
+         try {
+@@ -651,8 +651,8 @@
+             // JPQL.g:33:8: ( 'escape' )
+             // JPQL.g:33:10: 'escape'
+             {
+-            match("escape"); 
+-
++            match("escape"); 
++
+ 
+             }
+ 
+@@ -662,8 +662,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ESCAPE"
+-
++    // $ANTLR end "ESCAPE"
++
+     // $ANTLR start "EXISTS"
+     public final void mEXISTS() throws RecognitionException {
+         try {
+@@ -672,8 +672,8 @@
+             // JPQL.g:34:8: ( 'exists' )
+             // JPQL.g:34:10: 'exists'
+             {
+-            match("exists"); 
+-
++            match("exists"); 
++
+ 
+             }
+ 
+@@ -683,8 +683,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "EXISTS"
+-
++    // $ANTLR end "EXISTS"
++
+     // $ANTLR start "FALSE"
+     public final void mFALSE() throws RecognitionException {
+         try {
+@@ -693,8 +693,8 @@
+             // JPQL.g:35:7: ( 'false' )
+             // JPQL.g:35:9: 'false'
+             {
+-            match("false"); 
+-
++            match("false"); 
++
+ 
+             }
+ 
+@@ -704,8 +704,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "FALSE"
+-
++    // $ANTLR end "FALSE"
++
+     // $ANTLR start "FETCH"
+     public final void mFETCH() throws RecognitionException {
+         try {
+@@ -714,8 +714,8 @@
+             // JPQL.g:36:7: ( 'fetch' )
+             // JPQL.g:36:9: 'fetch'
+             {
+-            match("fetch"); 
+-
++            match("fetch"); 
++
+ 
+             }
+ 
+@@ -725,8 +725,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "FETCH"
+-
++    // $ANTLR end "FETCH"
++
+     // $ANTLR start "FUNC"
+     public final void mFUNC() throws RecognitionException {
+         try {
+@@ -735,8 +735,8 @@
+             // JPQL.g:37:6: ( 'func' )
+             // JPQL.g:37:8: 'func'
+             {
+-            match("func"); 
+-
++            match("func"); 
++
+ 
+             }
+ 
+@@ -746,8 +746,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "FUNC"
+-
++    // $ANTLR end "FUNC"
++
+     // $ANTLR start "FROM"
+     public final void mFROM() throws RecognitionException {
+         try {
+@@ -756,8 +756,8 @@
+             // JPQL.g:38:6: ( 'from' )
+             // JPQL.g:38:8: 'from'
+             {
+-            match("from"); 
+-
++            match("from"); 
++
+ 
+             }
+ 
+@@ -767,8 +767,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "FROM"
+-
++    // $ANTLR end "FROM"
++
+     // $ANTLR start "GROUP"
+     public final void mGROUP() throws RecognitionException {
+         try {
+@@ -777,8 +777,8 @@
+             // JPQL.g:39:7: ( 'group' )
+             // JPQL.g:39:9: 'group'
+             {
+-            match("group"); 
+-
++            match("group"); 
++
+ 
+             }
+ 
+@@ -788,8 +788,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "GROUP"
+-
++    // $ANTLR end "GROUP"
++
+     // $ANTLR start "HAVING"
+     public final void mHAVING() throws RecognitionException {
+         try {
+@@ -798,8 +798,8 @@
+             // JPQL.g:40:8: ( 'having' )
+             // JPQL.g:40:10: 'having'
+             {
+-            match("having"); 
+-
++            match("having"); 
++
+ 
+             }
+ 
+@@ -809,8 +809,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "HAVING"
+-
++    // $ANTLR end "HAVING"
++
+     // $ANTLR start "IN"
+     public final void mIN() throws RecognitionException {
+         try {
+@@ -819,8 +819,8 @@
+             // JPQL.g:41:4: ( 'in' )
+             // JPQL.g:41:6: 'in'
+             {
+-            match("in"); 
+-
++            match("in"); 
++
+ 
+             }
+ 
+@@ -830,8 +830,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "IN"
+-
++    // $ANTLR end "IN"
++
+     // $ANTLR start "INDEX"
+     public final void mINDEX() throws RecognitionException {
+         try {
+@@ -840,8 +840,8 @@
+             // JPQL.g:42:7: ( 'index' )
+             // JPQL.g:42:9: 'index'
+             {
+-            match("index"); 
+-
++            match("index"); 
++
+ 
+             }
+ 
+@@ -851,8 +851,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "INDEX"
+-
++    // $ANTLR end "INDEX"
++
+     // $ANTLR start "INNER"
+     public final void mINNER() throws RecognitionException {
+         try {
+@@ -861,8 +861,8 @@
+             // JPQL.g:43:7: ( 'inner' )
+             // JPQL.g:43:9: 'inner'
+             {
+-            match("inner"); 
+-
++            match("inner"); 
++
+ 
+             }
+ 
+@@ -872,8 +872,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "INNER"
+-
++    // $ANTLR end "INNER"
++
+     // $ANTLR start "IS"
+     public final void mIS() throws RecognitionException {
+         try {
+@@ -882,8 +882,8 @@
+             // JPQL.g:44:4: ( 'is' )
+             // JPQL.g:44:6: 'is'
+             {
+-            match("is"); 
+-
++            match("is"); 
++
+ 
+             }
+ 
+@@ -893,8 +893,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "IS"
+-
++    // $ANTLR end "IS"
++
+     // $ANTLR start "JOIN"
+     public final void mJOIN() throws RecognitionException {
+         try {
+@@ -903,8 +903,8 @@
+             // JPQL.g:45:6: ( 'join' )
+             // JPQL.g:45:8: 'join'
+             {
+-            match("join"); 
+-
++            match("join"); 
++
+ 
+             }
+ 
+@@ -914,8 +914,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "JOIN"
+-
++    // $ANTLR end "JOIN"
++
+     // $ANTLR start "KEY"
+     public final void mKEY() throws RecognitionException {
+         try {
+@@ -924,8 +924,8 @@
+             // JPQL.g:46:5: ( 'key' )
+             // JPQL.g:46:7: 'key'
+             {
+-            match("key"); 
+-
++            match("key"); 
++
+ 
+             }
+ 
+@@ -935,8 +935,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "KEY"
+-
++    // $ANTLR end "KEY"
++
+     // $ANTLR start "LEADING"
+     public final void mLEADING() throws RecognitionException {
+         try {
+@@ -945,8 +945,8 @@
+             // JPQL.g:47:9: ( 'leading' )
+             // JPQL.g:47:11: 'leading'
+             {
+-            match("leading"); 
+-
++            match("leading"); 
++
+ 
+             }
+ 
+@@ -956,8 +956,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LEADING"
+-
++    // $ANTLR end "LEADING"
++
+     // $ANTLR start "LEFT"
+     public final void mLEFT() throws RecognitionException {
+         try {
+@@ -966,8 +966,8 @@
+             // JPQL.g:48:6: ( 'left' )
+             // JPQL.g:48:8: 'left'
+             {
+-            match("left"); 
+-
++            match("left"); 
++
+ 
+             }
+ 
+@@ -977,8 +977,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LEFT"
+-
++    // $ANTLR end "LEFT"
++
+     // $ANTLR start "LENGTH"
+     public final void mLENGTH() throws RecognitionException {
+         try {
+@@ -987,8 +987,8 @@
+             // JPQL.g:49:8: ( 'length' )
+             // JPQL.g:49:10: 'length'
+             {
+-            match("length"); 
+-
++            match("length"); 
++
+ 
+             }
+ 
+@@ -998,8 +998,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LENGTH"
+-
++    // $ANTLR end "LENGTH"
++
+     // $ANTLR start "LIKE"
+     public final void mLIKE() throws RecognitionException {
+         try {
+@@ -1008,8 +1008,8 @@
+             // JPQL.g:50:6: ( 'like' )
+             // JPQL.g:50:8: 'like'
+             {
+-            match("like"); 
+-
++            match("like"); 
++
+ 
+             }
+ 
+@@ -1019,8 +1019,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LIKE"
+-
++    // $ANTLR end "LIKE"
++
+     // $ANTLR start "LOCATE"
+     public final void mLOCATE() throws RecognitionException {
+         try {
+@@ -1029,8 +1029,8 @@
+             // JPQL.g:51:8: ( 'locate' )
+             // JPQL.g:51:10: 'locate'
+             {
+-            match("locate"); 
+-
++            match("locate"); 
++
+ 
+             }
+ 
+@@ -1040,8 +1040,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LOCATE"
+-
++    // $ANTLR end "LOCATE"
++
+     // $ANTLR start "LOWER"
+     public final void mLOWER() throws RecognitionException {
+         try {
+@@ -1050,8 +1050,8 @@
+             // JPQL.g:52:7: ( 'lower' )
+             // JPQL.g:52:9: 'lower'
+             {
+-            match("lower"); 
+-
++            match("lower"); 
++
+ 
+             }
+ 
+@@ -1061,8 +1061,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LOWER"
+-
++    // $ANTLR end "LOWER"
++
+     // $ANTLR start "MAX"
+     public final void mMAX() throws RecognitionException {
+         try {
+@@ -1071,8 +1071,8 @@
+             // JPQL.g:53:5: ( 'max' )
+             // JPQL.g:53:7: 'max'
+             {
+-            match("max"); 
+-
++            match("max"); 
++
+ 
+             }
+ 
+@@ -1082,8 +1082,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "MAX"
+-
++    // $ANTLR end "MAX"
++
+     // $ANTLR start "MEMBER"
+     public final void mMEMBER() throws RecognitionException {
+         try {
+@@ -1092,8 +1092,8 @@
+             // JPQL.g:54:8: ( 'member' )
+             // JPQL.g:54:10: 'member'
+             {
+-            match("member"); 
+-
++            match("member"); 
++
+ 
+             }
+ 
+@@ -1103,8 +1103,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "MEMBER"
+-
++    // $ANTLR end "MEMBER"
++
+     // $ANTLR start "MIN"
+     public final void mMIN() throws RecognitionException {
+         try {
+@@ -1113,8 +1113,8 @@
+             // JPQL.g:55:5: ( 'min' )
+             // JPQL.g:55:7: 'min'
+             {
+-            match("min"); 
+-
++            match("min"); 
++
+ 
+             }
+ 
+@@ -1124,8 +1124,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "MIN"
+-
++    // $ANTLR end "MIN"
++
+     // $ANTLR start "MOD"
+     public final void mMOD() throws RecognitionException {
+         try {
+@@ -1134,8 +1134,8 @@
+             // JPQL.g:56:5: ( 'mod' )
+             // JPQL.g:56:7: 'mod'
+             {
+-            match("mod"); 
+-
++            match("mod"); 
++
+ 
+             }
+ 
+@@ -1145,8 +1145,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "MOD"
+-
++    // $ANTLR end "MOD"
++
+     // $ANTLR start "NEW"
+     public final void mNEW() throws RecognitionException {
+         try {
+@@ -1155,8 +1155,8 @@
+             // JPQL.g:57:5: ( 'new' )
+             // JPQL.g:57:7: 'new'
+             {
+-            match("new"); 
+-
++            match("new"); 
++
+ 
+             }
+ 
+@@ -1166,8 +1166,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "NEW"
+-
++    // $ANTLR end "NEW"
++
+     // $ANTLR start "NOT"
+     public final void mNOT() throws RecognitionException {
+         try {
+@@ -1176,8 +1176,8 @@
+             // JPQL.g:58:5: ( 'not' )
+             // JPQL.g:58:7: 'not'
+             {
+-            match("not"); 
+-
++            match("not"); 
++
+ 
+             }
+ 
+@@ -1187,8 +1187,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "NOT"
+-
++    // $ANTLR end "NOT"
++
+     // $ANTLR start "NULL"
+     public final void mNULL() throws RecognitionException {
+         try {
+@@ -1197,8 +1197,8 @@
+             // JPQL.g:59:6: ( 'null' )
+             // JPQL.g:59:8: 'null'
+             {
+-            match("null"); 
+-
++            match("null"); 
++
+ 
+             }
+ 
+@@ -1208,8 +1208,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "NULL"
+-
++    // $ANTLR end "NULL"
++
+     // $ANTLR start "NULLIF"
+     public final void mNULLIF() throws RecognitionException {
+         try {
+@@ -1218,8 +1218,8 @@
+             // JPQL.g:60:8: ( 'nullif' )
+             // JPQL.g:60:10: 'nullif'
+             {
+-            match("nullif"); 
+-
++            match("nullif"); 
++
+ 
+             }
+ 
+@@ -1229,8 +1229,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "NULLIF"
+-
++    // $ANTLR end "NULLIF"
++
+     // $ANTLR start "OBJECT"
+     public final void mOBJECT() throws RecognitionException {
+         try {
+@@ -1239,8 +1239,8 @@
+             // JPQL.g:61:8: ( 'object' )
+             // JPQL.g:61:10: 'object'
+             {
+-            match("object"); 
+-
++            match("object"); 
++
+ 
+             }
+ 
+@@ -1250,8 +1250,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "OBJECT"
+-
++    // $ANTLR end "OBJECT"
++
+     // $ANTLR start "OF"
+     public final void mOF() throws RecognitionException {
+         try {
+@@ -1260,8 +1260,8 @@
+             // JPQL.g:62:4: ( 'of' )
+             // JPQL.g:62:6: 'of'
+             {
+-            match("of"); 
+-
++            match("of"); 
++
+ 
+             }
+ 
+@@ -1271,8 +1271,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "OF"
+-
++    // $ANTLR end "OF"
++
+     // $ANTLR start "OR"
+     public final void mOR() throws RecognitionException {
+         try {
+@@ -1281,8 +1281,8 @@
+             // JPQL.g:63:4: ( 'or' )
+             // JPQL.g:63:6: 'or'
+             {
+-            match("or"); 
+-
++            match("or"); 
++
+ 
+             }
+ 
+@@ -1292,8 +1292,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "OR"
+-
++    // $ANTLR end "OR"
++
+     // $ANTLR start "ORDER"
+     public final void mORDER() throws RecognitionException {
+         try {
+@@ -1302,8 +1302,8 @@
+             // JPQL.g:64:7: ( 'order' )
+             // JPQL.g:64:9: 'order'
+             {
+-            match("order"); 
+-
++            match("order"); 
++
+ 
+             }
+ 
+@@ -1313,8 +1313,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "ORDER"
+-
++    // $ANTLR end "ORDER"
++
+     // $ANTLR start "OUTER"
+     public final void mOUTER() throws RecognitionException {
+         try {
+@@ -1323,8 +1323,8 @@
+             // JPQL.g:65:7: ( 'outer' )
+             // JPQL.g:65:9: 'outer'
+             {
+-            match("outer"); 
+-
++            match("outer"); 
++
+ 
+             }
+ 
+@@ -1334,8 +1334,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "OUTER"
+-
++    // $ANTLR end "OUTER"
++
+     // $ANTLR start "SELECT"
+     public final void mSELECT() throws RecognitionException {
+         try {
+@@ -1344,8 +1344,8 @@
+             // JPQL.g:66:8: ( 'select' )
+             // JPQL.g:66:10: 'select'
+             {
+-            match("select"); 
+-
++            match("select"); 
++
+ 
+             }
+ 
+@@ -1355,8 +1355,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "SELECT"
+-
++    // $ANTLR end "SELECT"
++
+     // $ANTLR start "SET"
+     public final void mSET() throws RecognitionException {
+         try {
+@@ -1365,8 +1365,8 @@
+             // JPQL.g:67:5: ( 'set' )
+             // JPQL.g:67:7: 'set'
+             {
+-            match("set"); 
+-
++            match("set"); 
++
+ 
+             }
+ 
+@@ -1376,8 +1376,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "SET"
+-
++    // $ANTLR end "SET"
++
+     // $ANTLR start "SIZE"
+     public final void mSIZE() throws RecognitionException {
+         try {
+@@ -1386,8 +1386,8 @@
+             // JPQL.g:68:6: ( 'size' )
+             // JPQL.g:68:8: 'size'
+             {
+-            match("size"); 
+-
++            match("size"); 
++
+ 
+             }
+ 
+@@ -1397,8 +1397,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "SIZE"
+-
++    // $ANTLR end "SIZE"
++
+     // $ANTLR start "SQRT"
+     public final void mSQRT() throws RecognitionException {
+         try {
+@@ -1407,8 +1407,8 @@
+             // JPQL.g:69:6: ( 'sqrt' )
+             // JPQL.g:69:8: 'sqrt'
+             {
+-            match("sqrt"); 
+-
++            match("sqrt"); 
++
+ 
+             }
+ 
+@@ -1418,8 +1418,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "SQRT"
+-
++    // $ANTLR end "SQRT"
++
+     // $ANTLR start "SOME"
+     public final void mSOME() throws RecognitionException {
+         try {
+@@ -1428,8 +1428,8 @@
+             // JPQL.g:70:6: ( 'some' )
+             // JPQL.g:70:8: 'some'
+             {
+-            match("some"); 
+-
++            match("some"); 
++
+ 
+             }
+ 
+@@ -1439,8 +1439,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "SOME"
+-
++    // $ANTLR end "SOME"
++
+     // $ANTLR start "SUBSTRING"
+     public final void mSUBSTRING() throws RecognitionException {
+         try {
+@@ -1449,8 +1449,8 @@
+             // JPQL.g:71:11: ( 'substring' )
+             // JPQL.g:71:13: 'substring'
+             {
+-            match("substring"); 
+-
++            match("substring"); 
++
+ 
+             }
+ 
+@@ -1460,8 +1460,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "SUBSTRING"
+-
++    // $ANTLR end "SUBSTRING"
++
+     // $ANTLR start "SUM"
+     public final void mSUM() throws RecognitionException {
+         try {
+@@ -1470,8 +1470,8 @@
+             // JPQL.g:72:5: ( 'sum' )
+             // JPQL.g:72:7: 'sum'
+             {
+-            match("sum"); 
+-
++            match("sum"); 
++
+ 
+             }
+ 
+@@ -1481,8 +1481,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "SUM"
+-
++    // $ANTLR end "SUM"
++
+     // $ANTLR start "THEN"
+     public final void mTHEN() throws RecognitionException {
+         try {
+@@ -1491,8 +1491,8 @@
+             // JPQL.g:73:6: ( 'then' )
+             // JPQL.g:73:8: 'then'
+             {
+-            match("then"); 
+-
++            match("then"); 
++
+ 
+             }
+ 
+@@ -1502,8 +1502,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "THEN"
+-
++    // $ANTLR end "THEN"
++
+     // $ANTLR start "TRAILING"
+     public final void mTRAILING() throws RecognitionException {
+         try {
+@@ -1512,8 +1512,8 @@
+             // JPQL.g:74:10: ( 'trailing' )
+             // JPQL.g:74:12: 'trailing'
+             {
+-            match("trailing"); 
+-
++            match("trailing"); 
++
+ 
+             }
+ 
+@@ -1523,8 +1523,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TRAILING"
+-
++    // $ANTLR end "TRAILING"
++
+     // $ANTLR start "TREAT"
+     public final void mTREAT() throws RecognitionException {
+         try {
+@@ -1533,8 +1533,8 @@
+             // JPQL.g:75:7: ( 'treat' )
+             // JPQL.g:75:9: 'treat'
+             {
+-            match("treat"); 
+-
++            match("treat"); 
++
+ 
+             }
+ 
+@@ -1544,8 +1544,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TREAT"
+-
++    // $ANTLR end "TREAT"
++
+     // $ANTLR start "TRIM"
+     public final void mTRIM() throws RecognitionException {
+         try {
+@@ -1554,8 +1554,8 @@
+             // JPQL.g:76:6: ( 'trim' )
+             // JPQL.g:76:8: 'trim'
+             {
+-            match("trim"); 
+-
++            match("trim"); 
++
+ 
+             }
+ 
+@@ -1565,8 +1565,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TRIM"
+-
++    // $ANTLR end "TRIM"
++
+     // $ANTLR start "TRUE"
+     public final void mTRUE() throws RecognitionException {
+         try {
+@@ -1575,8 +1575,8 @@
+             // JPQL.g:77:6: ( 'true' )
+             // JPQL.g:77:8: 'true'
+             {
+-            match("true"); 
+-
++            match("true"); 
++
+ 
+             }
+ 
+@@ -1586,8 +1586,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TRUE"
+-
++    // $ANTLR end "TRUE"
++
+     // $ANTLR start "TYPE"
+     public final void mTYPE() throws RecognitionException {
+         try {
+@@ -1596,8 +1596,8 @@
+             // JPQL.g:78:6: ( 'type' )
+             // JPQL.g:78:8: 'type'
+             {
+-            match("type"); 
+-
++            match("type"); 
++
+ 
+             }
+ 
+@@ -1607,8 +1607,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TYPE"
+-
++    // $ANTLR end "TYPE"
++
+     // $ANTLR start "UNKNOWN"
+     public final void mUNKNOWN() throws RecognitionException {
+         try {
+@@ -1617,8 +1617,8 @@
+             // JPQL.g:79:9: ( 'unknown' )
+             // JPQL.g:79:11: 'unknown'
+             {
+-            match("unknown"); 
+-
++            match("unknown"); 
++
+ 
+             }
+ 
+@@ -1628,8 +1628,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "UNKNOWN"
+-
++    // $ANTLR end "UNKNOWN"
++
+     // $ANTLR start "UPDATE"
+     public final void mUPDATE() throws RecognitionException {
+         try {
+@@ -1638,8 +1638,8 @@
+             // JPQL.g:80:8: ( 'update' )
+             // JPQL.g:80:10: 'update'
+             {
+-            match("update"); 
+-
++            match("update"); 
++
+ 
+             }
+ 
+@@ -1649,8 +1649,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "UPDATE"
+-
++    // $ANTLR end "UPDATE"
++
+     // $ANTLR start "UPPER"
+     public final void mUPPER() throws RecognitionException {
+         try {
+@@ -1659,8 +1659,8 @@
+             // JPQL.g:81:7: ( 'upper' )
+             // JPQL.g:81:9: 'upper'
+             {
+-            match("upper"); 
+-
++            match("upper"); 
++
+ 
+             }
+ 
+@@ -1670,8 +1670,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "UPPER"
+-
++    // $ANTLR end "UPPER"
++
+     // $ANTLR start "VALUE"
+     public final void mVALUE() throws RecognitionException {
+         try {
+@@ -1680,8 +1680,8 @@
+             // JPQL.g:82:7: ( 'value' )
+             // JPQL.g:82:9: 'value'
+             {
+-            match("value"); 
+-
++            match("value"); 
++
+ 
+             }
+ 
+@@ -1691,8 +1691,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "VALUE"
+-
++    // $ANTLR end "VALUE"
++
+     // $ANTLR start "WHEN"
+     public final void mWHEN() throws RecognitionException {
+         try {
+@@ -1701,8 +1701,8 @@
+             // JPQL.g:83:6: ( 'when' )
+             // JPQL.g:83:8: 'when'
+             {
+-            match("when"); 
+-
++            match("when"); 
++
+ 
+             }
+ 
+@@ -1712,8 +1712,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "WHEN"
+-
++    // $ANTLR end "WHEN"
++
+     // $ANTLR start "WHERE"
+     public final void mWHERE() throws RecognitionException {
+         try {
+@@ -1722,8 +1722,8 @@
+             // JPQL.g:84:7: ( 'where' )
+             // JPQL.g:84:9: 'where'
+             {
+-            match("where"); 
+-
++            match("where"); 
++
+ 
+             }
+ 
+@@ -1733,8 +1733,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "WHERE"
+-
++    // $ANTLR end "WHERE"
++
+     // $ANTLR start "DOT"
+     public final void mDOT() throws RecognitionException {
+         try {
+@@ -1743,7 +1743,7 @@
+             // JPQL.g:1394:5: ( '.' )
+             // JPQL.g:1394:7: '.'
+             {
+-            match('.'); 
++            match('.'); 
+ 
+             }
+ 
+@@ -1753,8 +1753,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DOT"
+-
++    // $ANTLR end "DOT"
++
+     // $ANTLR start "WS"
+     public final void mWS() throws RecognitionException {
+         try {
+@@ -1768,11 +1768,11 @@
+             loop1:
+             do {
+                 int alt1=2;
+-                int LA1_0 = input.LA(1);
++                int LA1_0 = input.LA(1);
+ 
+                 if ( ((LA1_0>='\t' && LA1_0<='\n')||LA1_0=='\r'||LA1_0==' ') ) {
+                     alt1=1;
+-                }
++                }
+ 
+ 
+                 switch (alt1) {
+@@ -1786,11 +1786,11 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    if ( cnt1 >= 1 ) break loop1;
+@@ -1800,8 +1800,8 @@
+                 }
+                 cnt1++;
+             } while (true);
+-
+-             skip(); 
++
++             skip(); 
+ 
+             }
+ 
+@@ -1811,8 +1811,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "WS"
+-
++    // $ANTLR end "WS"
++
+     // $ANTLR start "LEFT_ROUND_BRACKET"
+     public final void mLEFT_ROUND_BRACKET() throws RecognitionException {
+         try {
+@@ -1821,7 +1821,7 @@
+             // JPQL.g:1401:5: ( '(' )
+             // JPQL.g:1401:7: '('
+             {
+-            match('('); 
++            match('('); 
+ 
+             }
+ 
+@@ -1831,8 +1831,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LEFT_ROUND_BRACKET"
+-
++    // $ANTLR end "LEFT_ROUND_BRACKET"
++
+     // $ANTLR start "LEFT_CURLY_BRACKET"
+     public final void mLEFT_CURLY_BRACKET() throws RecognitionException {
+         try {
+@@ -1841,7 +1841,7 @@
+             // JPQL.g:1405:5: ( '{' )
+             // JPQL.g:1405:7: '{'
+             {
+-            match('{'); 
++            match('{'); 
+ 
+             }
+ 
+@@ -1851,8 +1851,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LEFT_CURLY_BRACKET"
+-
++    // $ANTLR end "LEFT_CURLY_BRACKET"
++
+     // $ANTLR start "RIGHT_ROUND_BRACKET"
+     public final void mRIGHT_ROUND_BRACKET() throws RecognitionException {
+         try {
+@@ -1861,7 +1861,7 @@
+             // JPQL.g:1409:5: ( ')' )
+             // JPQL.g:1409:7: ')'
+             {
+-            match(')'); 
++            match(')'); 
+ 
+             }
+ 
+@@ -1871,8 +1871,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "RIGHT_ROUND_BRACKET"
+-
++    // $ANTLR end "RIGHT_ROUND_BRACKET"
++
+     // $ANTLR start "RIGHT_CURLY_BRACKET"
+     public final void mRIGHT_CURLY_BRACKET() throws RecognitionException {
+         try {
+@@ -1881,7 +1881,7 @@
+             // JPQL.g:1413:5: ( '}' )
+             // JPQL.g:1413:7: '}'
+             {
+-            match('}'); 
++            match('}'); 
+ 
+             }
+ 
+@@ -1891,8 +1891,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "RIGHT_CURLY_BRACKET"
+-
++    // $ANTLR end "RIGHT_CURLY_BRACKET"
++
+     // $ANTLR start "COMMA"
+     public final void mCOMMA() throws RecognitionException {
+         try {
+@@ -1901,7 +1901,7 @@
+             // JPQL.g:1417:5: ( ',' )
+             // JPQL.g:1417:7: ','
+             {
+-            match(','); 
++            match(','); 
+ 
+             }
+ 
+@@ -1911,8 +1911,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "COMMA"
+-
++    // $ANTLR end "COMMA"
++
+     // $ANTLR start "IDENT"
+     public final void mIDENT() throws RecognitionException {
+         try {
+@@ -1921,7 +1921,7 @@
+             // JPQL.g:1421:5: ( TEXTCHAR )
+             // JPQL.g:1421:7: TEXTCHAR
+             {
+-            mTEXTCHAR(); 
++            mTEXTCHAR(); 
+ 
+             }
+ 
+@@ -1931,12 +1931,12 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "IDENT"
+-
++    // $ANTLR end "IDENT"
++
+     // $ANTLR start "TEXTCHAR"
+     public final void mTEXTCHAR() throws RecognitionException {
+         try {
+-            int c1;
++            int c1;
+             int c2;
+ 
+             // JPQL.g:1426:5: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '$' | '`' | '~' | '@' | '#' | '%' | '^' | '&' | '|' | '[' | ']' | ';' c1= '\\u0080' .. '\\uFFFE' ) ( 'a' .. 'z' | '_' | '$' | '0' .. '9' | c2= '\\u0080' .. '\\uFFFE' )* )
+@@ -1945,126 +1945,126 @@
+             // JPQL.g:1426:7: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '$' | '`' | '~' | '@' | '#' | '%' | '^' | '&' | '|' | '[' | ']' | ';' c1= '\\u0080' .. '\\uFFFE' )
+             int alt2=15;
+             switch ( input.LA(1) ) {
+-            case 'a':
+-            case 'b':
+-            case 'c':
+-            case 'd':
+-            case 'e':
+-            case 'f':
+-            case 'g':
+-            case 'h':
+-            case 'i':
+-            case 'j':
+-            case 'k':
+-            case 'l':
+-            case 'm':
+-            case 'n':
+-            case 'o':
+-            case 'p':
+-            case 'q':
+-            case 'r':
+-            case 's':
+-            case 't':
+-            case 'u':
+-            case 'v':
+-            case 'w':
+-            case 'x':
+-            case 'y':
++            case 'a':
++            case 'b':
++            case 'c':
++            case 'd':
++            case 'e':
++            case 'f':
++            case 'g':
++            case 'h':
++            case 'i':
++            case 'j':
++            case 'k':
++            case 'l':
++            case 'm':
++            case 'n':
++            case 'o':
++            case 'p':
++            case 'q':
++            case 'r':
++            case 's':
++            case 't':
++            case 'u':
++            case 'v':
++            case 'w':
++            case 'x':
++            case 'y':
+             case 'z':
+                 {
+                 alt2=1;
+                 }
+-                break;
+-            case 'A':
+-            case 'B':
+-            case 'C':
+-            case 'D':
+-            case 'E':
+-            case 'F':
+-            case 'G':
+-            case 'H':
+-            case 'I':
+-            case 'J':
+-            case 'K':
+-            case 'L':
+-            case 'M':
+-            case 'N':
+-            case 'O':
+-            case 'P':
+-            case 'Q':
+-            case 'R':
+-            case 'S':
+-            case 'T':
+-            case 'U':
+-            case 'V':
+-            case 'W':
+-            case 'X':
+-            case 'Y':
++                break;
++            case 'A':
++            case 'B':
++            case 'C':
++            case 'D':
++            case 'E':
++            case 'F':
++            case 'G':
++            case 'H':
++            case 'I':
++            case 'J':
++            case 'K':
++            case 'L':
++            case 'M':
++            case 'N':
++            case 'O':
++            case 'P':
++            case 'Q':
++            case 'R':
++            case 'S':
++            case 'T':
++            case 'U':
++            case 'V':
++            case 'W':
++            case 'X':
++            case 'Y':
+             case 'Z':
+                 {
+                 alt2=2;
+                 }
+-                break;
++                break;
+             case '_':
+                 {
+                 alt2=3;
+                 }
+-                break;
++                break;
+             case '$':
+                 {
+                 alt2=4;
+                 }
+-                break;
++                break;
+             case '`':
+                 {
+                 alt2=5;
+                 }
+-                break;
++                break;
+             case '~':
+                 {
+                 alt2=6;
+                 }
+-                break;
++                break;
+             case '@':
+                 {
+                 alt2=7;
+                 }
+-                break;
++                break;
+             case '#':
+                 {
+                 alt2=8;
+                 }
+-                break;
++                break;
+             case '%':
+                 {
+                 alt2=9;
+                 }
+-                break;
++                break;
+             case '^':
+                 {
+                 alt2=10;
+                 }
+-                break;
++                break;
+             case '&':
+                 {
+                 alt2=11;
+                 }
+-                break;
++                break;
+             case '|':
+                 {
+                 alt2=12;
+                 }
+-                break;
++                break;
+             case '[':
+                 {
+                 alt2=13;
+                 }
+-                break;
++                break;
+             case ']':
+                 {
+                 alt2=14;
+                 }
+-                break;
++                break;
+             case ';':
+                 {
+                 alt2=15;
+@@ -2072,207 +2072,207 @@
+                 break;
+             default:
+                 NoViableAltException nvae =
+-                    new NoViableAltException("", 2, 0, input);
++                    new NoViableAltException("", 2, 0, input);
+ 
+-                throw nvae;
+-            }
++                throw nvae;
++            }
+ 
+             switch (alt2) {
+                 case 1 :
+                     // JPQL.g:1426:8: 'a' .. 'z'
+                     {
+-                    matchRange('a','z'); 
++                    matchRange('a','z'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 2 :
+                     // JPQL.g:1426:19: 'A' .. 'Z'
+                     {
+-                    matchRange('A','Z'); 
++                    matchRange('A','Z'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 3 :
+                     // JPQL.g:1426:30: '_'
+                     {
+-                    match('_'); 
++                    match('_'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 4 :
+                     // JPQL.g:1426:36: '$'
+                     {
+-                    match('$'); 
++                    match('$'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 5 :
+                     // JPQL.g:1426:42: '`'
+                     {
+-                    match('`'); 
++                    match('`'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 6 :
+                     // JPQL.g:1426:48: '~'
+                     {
+-                    match('~'); 
++                    match('~'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 7 :
+                     // JPQL.g:1426:54: '@'
+                     {
+-                    match('@'); 
++                    match('@'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 8 :
+                     // JPQL.g:1426:60: '#'
+                     {
+-                    match('#'); 
++                    match('#'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 9 :
+                     // JPQL.g:1426:66: '%'
+                     {
+-                    match('%'); 
++                    match('%'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 10 :
+                     // JPQL.g:1426:72: '^'
+                     {
+-                    match('^'); 
++                    match('^'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 11 :
+                     // JPQL.g:1426:78: '&'
+                     {
+-                    match('&'); 
++                    match('&'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 12 :
+                     // JPQL.g:1426:84: '|'
+                     {
+-                    match('|'); 
++                    match('|'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 13 :
+                     // JPQL.g:1426:90: '['
+                     {
+-                    match('['); 
++                    match('['); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 14 :
+                     // JPQL.g:1426:96: ']'
+                     {
+-                    match(']'); 
++                    match(']'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 15 :
+                     // JPQL.g:1426:102: ';' c1= '\\u0080' .. '\\uFFFE'
+                     {
+-                    match(';'); 
+-                    c1 = input.LA(1);
+-                    matchRange('\u0080','\uFFFE'); 
++                    match(';'); 
++                    c1 = input.LA(1);
++                    matchRange('\u0080','\uFFFE'); 
+ 
+                                if (!Character.isJavaIdentifierStart(c1)) {
+                                     throw new InvalidIdentifierStartException(c1, getLine(), getCharPositionInLine());
+                                }
+-                           
++                           
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+-
++
+             // JPQL.g:1434:7: ( 'a' .. 'z' | '_' | '$' | '0' .. '9' | c2= '\\u0080' .. '\\uFFFE' )*
+             loop3:
+             do {
+                 int alt3=6;
+-                int LA3_0 = input.LA(1);
++                int LA3_0 = input.LA(1);
+ 
+                 if ( ((LA3_0>='a' && LA3_0<='z')) ) {
+                     alt3=1;
+-                }
++                }
+                 else if ( (LA3_0=='_') ) {
+                     alt3=2;
+-                }
++                }
+                 else if ( (LA3_0=='$') ) {
+                     alt3=3;
+-                }
++                }
+                 else if ( ((LA3_0>='0' && LA3_0<='9')) ) {
+                     alt3=4;
+-                }
++                }
+                 else if ( ((LA3_0>='\u0080' && LA3_0<='\uFFFE')) ) {
+                     alt3=5;
+-                }
++                }
+ 
+ 
+                 switch (alt3) {
+             	case 1 :
+             	    // JPQL.g:1434:8: 'a' .. 'z'
+             	    {
+-            	    matchRange('a','z'); 
++            	    matchRange('a','z'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+             	case 2 :
+             	    // JPQL.g:1434:19: '_'
+             	    {
+-            	    match('_'); 
++            	    match('_'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+             	case 3 :
+             	    // JPQL.g:1434:25: '$'
+             	    {
+-            	    match('$'); 
++            	    match('$'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+             	case 4 :
+             	    // JPQL.g:1434:31: '0' .. '9'
+             	    {
+-            	    matchRange('0','9'); 
++            	    matchRange('0','9'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+             	case 5 :
+             	    // JPQL.g:1435:8: c2= '\\u0080' .. '\\uFFFE'
+             	    {
+-            	    c2 = input.LA(1);
+-            	    matchRange('\u0080','\uFFFE'); 
++            	    c2 = input.LA(1);
++            	    matchRange('\u0080','\uFFFE'); 
+ 
+             	               if (!Character.isJavaIdentifierPart(c2)) {
+             	                    throw new InvalidIdentifierStartException(c2, getLine(), getCharPositionInLine());
+             	               }
+-            	           
++            	           
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop3;
+                 }
+             } while (true);
+-
++
+ 
+             }
+-
++
+         }
+         finally {
+         }
+     }
+-    // $ANTLR end "TEXTCHAR"
+-
++    // $ANTLR end "TEXTCHAR"
++
+     // $ANTLR start "HEX_LITERAL"
+     public final void mHEX_LITERAL() throws RecognitionException {
+         try {
+@@ -2281,7 +2281,7 @@
+             // JPQL.g:1445:13: ( '0' ( 'x' | 'X' ) ( HEX_DIGIT )+ )
+             // JPQL.g:1445:15: '0' ( 'x' | 'X' ) ( HEX_DIGIT )+
+             {
+-            match('0'); 
++            match('0'); 
+             if ( input.LA(1)=='X'||input.LA(1)=='x' ) {
+                 input.consume();
+ 
+@@ -2289,28 +2289,28 @@
+             else {
+                 MismatchedSetException mse = new MismatchedSetException(null,input);
+                 recover(mse);
+-                throw mse;}
+-
++                throw mse;}
++
+             // JPQL.g:1445:29: ( HEX_DIGIT )+
+             int cnt4=0;
+             loop4:
+             do {
+                 int alt4=2;
+-                int LA4_0 = input.LA(1);
++                int LA4_0 = input.LA(1);
+ 
+                 if ( ((LA4_0>='0' && LA4_0<='9')||(LA4_0>='A' && LA4_0<='F')||(LA4_0>='a' && LA4_0<='f')) ) {
+                     alt4=1;
+-                }
++                }
+ 
+ 
+                 switch (alt4) {
+             	case 1 :
+             	    // JPQL.g:1445:29: HEX_DIGIT
+             	    {
+-            	    mHEX_DIGIT(); 
++            	    mHEX_DIGIT(); 
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    if ( cnt4 >= 1 ) break loop4;
+@@ -2320,7 +2320,7 @@
+                 }
+                 cnt4++;
+             } while (true);
+-
++
+ 
+             }
+ 
+@@ -2330,8 +2330,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "HEX_LITERAL"
+-
++    // $ANTLR end "HEX_LITERAL"
++
+     // $ANTLR start "INTEGER_LITERAL"
+     public final void mINTEGER_LITERAL() throws RecognitionException {
+         try {
+@@ -2342,7 +2342,7 @@
+             {
+             // JPQL.g:1447:19: ( MINUS )?
+             int alt5=2;
+-            int LA5_0 = input.LA(1);
++            int LA5_0 = input.LA(1);
+ 
+             if ( (LA5_0=='-') ) {
+                 alt5=1;
+@@ -2351,72 +2351,72 @@
+                 case 1 :
+                     // JPQL.g:1447:19: MINUS
+                     {
+-                    mMINUS(); 
++                    mMINUS(); 
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+-
++
+             // JPQL.g:1447:26: ( '0' | '1' .. '9' ( '0' .. '9' )* )
+             int alt7=2;
+-            int LA7_0 = input.LA(1);
++            int LA7_0 = input.LA(1);
+ 
+             if ( (LA7_0=='0') ) {
+                 alt7=1;
+-            }
++            }
+             else if ( ((LA7_0>='1' && LA7_0<='9')) ) {
+                 alt7=2;
+             }
+             else {
+                 NoViableAltException nvae =
+-                    new NoViableAltException("", 7, 0, input);
++                    new NoViableAltException("", 7, 0, input);
+ 
+-                throw nvae;
++                throw nvae;
+             }
+             switch (alt7) {
+                 case 1 :
+                     // JPQL.g:1447:27: '0'
+                     {
+-                    match('0'); 
++                    match('0'); 
+ 
+                     }
+-                    break;
++                    break;
+                 case 2 :
+                     // JPQL.g:1447:33: '1' .. '9' ( '0' .. '9' )*
+                     {
+-                    matchRange('1','9'); 
++                    matchRange('1','9'); 
+                     // JPQL.g:1447:42: ( '0' .. '9' )*
+                     loop6:
+                     do {
+                         int alt6=2;
+-                        int LA6_0 = input.LA(1);
++                        int LA6_0 = input.LA(1);
+ 
+                         if ( ((LA6_0>='0' && LA6_0<='9')) ) {
+                             alt6=1;
+-                        }
++                        }
+ 
+ 
+                         switch (alt6) {
+                     	case 1 :
+                     	    // JPQL.g:1447:42: '0' .. '9'
+                     	    {
+-                    	    matchRange('0','9'); 
++                    	    matchRange('0','9'); 
+ 
+                     	    }
+-                    	    break;
++                    	    break;
+ 
+                     	default :
+                     	    break loop6;
+                         }
+                     } while (true);
+-
++
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+-
++
+ 
+             }
+ 
+@@ -2426,8 +2426,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "INTEGER_LITERAL"
+-
++    // $ANTLR end "INTEGER_LITERAL"
++
+     // $ANTLR start "LONG_LITERAL"
+     public final void mLONG_LITERAL() throws RecognitionException {
+         try {
+@@ -2436,8 +2436,8 @@
+             // JPQL.g:1449:14: ( INTEGER_LITERAL INTEGER_SUFFIX )
+             // JPQL.g:1449:16: INTEGER_LITERAL INTEGER_SUFFIX
+             {
+-            mINTEGER_LITERAL(); 
+-            mINTEGER_SUFFIX(); 
++            mINTEGER_LITERAL(); 
++            mINTEGER_SUFFIX(); 
+ 
+             }
+ 
+@@ -2447,8 +2447,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LONG_LITERAL"
+-
++    // $ANTLR end "LONG_LITERAL"
++
+     // $ANTLR start "OCTAL_LITERAL"
+     public final void mOCTAL_LITERAL() throws RecognitionException {
+         try {
+@@ -2459,7 +2459,7 @@
+             {
+             // JPQL.g:1451:17: ( MINUS )?
+             int alt8=2;
+-            int LA8_0 = input.LA(1);
++            int LA8_0 = input.LA(1);
+ 
+             if ( (LA8_0=='-') ) {
+                 alt8=1;
+@@ -2468,34 +2468,34 @@
+                 case 1 :
+                     // JPQL.g:1451:17: MINUS
+                     {
+-                    mMINUS(); 
++                    mMINUS(); 
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+-
+-            match('0'); 
++
++            match('0'); 
+             // JPQL.g:1451:28: ( '0' .. '7' )+
+             int cnt9=0;
+             loop9:
+             do {
+                 int alt9=2;
+-                int LA9_0 = input.LA(1);
++                int LA9_0 = input.LA(1);
+ 
+                 if ( ((LA9_0>='0' && LA9_0<='7')) ) {
+                     alt9=1;
+-                }
++                }
+ 
+ 
+                 switch (alt9) {
+             	case 1 :
+             	    // JPQL.g:1451:29: '0' .. '7'
+             	    {
+-            	    matchRange('0','7'); 
++            	    matchRange('0','7'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    if ( cnt9 >= 1 ) break loop9;
+@@ -2505,7 +2505,7 @@
+                 }
+                 cnt9++;
+             } while (true);
+-
++
+ 
+             }
+ 
+@@ -2515,8 +2515,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "OCTAL_LITERAL"
+-
++    // $ANTLR end "OCTAL_LITERAL"
++
+     // $ANTLR start "HEX_DIGIT"
+     public final void mHEX_DIGIT() throws RecognitionException {
+         try {
+@@ -2530,17 +2530,17 @@
+             else {
+                 MismatchedSetException mse = new MismatchedSetException(null,input);
+                 recover(mse);
+-                throw mse;}
+-
++                throw mse;}
++
+ 
+             }
+-
++
+         }
+         finally {
+         }
+     }
+-    // $ANTLR end "HEX_DIGIT"
+-
++    // $ANTLR end "HEX_DIGIT"
++
+     // $ANTLR start "INTEGER_SUFFIX"
+     public final void mINTEGER_SUFFIX() throws RecognitionException {
+         try {
+@@ -2554,17 +2554,17 @@
+             else {
+                 MismatchedSetException mse = new MismatchedSetException(null,input);
+                 recover(mse);
+-                throw mse;}
+-
++                throw mse;}
++
+ 
+             }
+-
++
+         }
+         finally {
+         }
+     }
+-    // $ANTLR end "INTEGER_SUFFIX"
+-
++    // $ANTLR end "INTEGER_SUFFIX"
++
+     // $ANTLR start "NUMERIC_DIGITS"
+     public final void mNUMERIC_DIGITS() throws RecognitionException {
+         try {
+@@ -2577,7 +2577,7 @@
+                     {
+                     // JPQL.g:1464:9: ( MINUS )?
+                     int alt10=2;
+-                    int LA10_0 = input.LA(1);
++                    int LA10_0 = input.LA(1);
+ 
+                     if ( (LA10_0=='-') ) {
+                         alt10=1;
+@@ -2586,33 +2586,33 @@
+                         case 1 :
+                             // JPQL.g:1464:9: MINUS
+                             {
+-                            mMINUS(); 
++                            mMINUS(); 
+ 
+                             }
+-                            break;
++                            break;
+ 
+                     }
+-
++
+                     // JPQL.g:1464:16: ( '0' .. '9' )+
+                     int cnt11=0;
+                     loop11:
+                     do {
+                         int alt11=2;
+-                        int LA11_0 = input.LA(1);
++                        int LA11_0 = input.LA(1);
+ 
+                         if ( ((LA11_0>='0' && LA11_0<='9')) ) {
+                             alt11=1;
+-                        }
++                        }
+ 
+ 
+                         switch (alt11) {
+                     	case 1 :
+                     	    // JPQL.g:1464:17: '0' .. '9'
+                     	    {
+-                    	    matchRange('0','9'); 
++                    	    matchRange('0','9'); 
+ 
+                     	    }
+-                    	    break;
++                    	    break;
+ 
+                     	default :
+                     	    if ( cnt11 >= 1 ) break loop11;
+@@ -2622,42 +2622,42 @@
+                         }
+                         cnt11++;
+                     } while (true);
+-
+-                    match('.'); 
++
++                    match('.'); 
+                     // JPQL.g:1464:32: ( '0' .. '9' )*
+                     loop12:
+                     do {
+                         int alt12=2;
+-                        int LA12_0 = input.LA(1);
++                        int LA12_0 = input.LA(1);
+ 
+                         if ( ((LA12_0>='0' && LA12_0<='9')) ) {
+                             alt12=1;
+-                        }
++                        }
+ 
+ 
+                         switch (alt12) {
+                     	case 1 :
+                     	    // JPQL.g:1464:33: '0' .. '9'
+                     	    {
+-                    	    matchRange('0','9'); 
++                    	    matchRange('0','9'); 
+ 
+                     	    }
+-                    	    break;
++                    	    break;
+ 
+                     	default :
+                     	    break loop12;
+                         }
+                     } while (true);
+-
++
+ 
+                     }
+-                    break;
++                    break;
+                 case 2 :
+                     // JPQL.g:1465:9: ( MINUS )? '.' ( '0' .. '9' )+
+                     {
+                     // JPQL.g:1465:9: ( MINUS )?
+                     int alt13=2;
+-                    int LA13_0 = input.LA(1);
++                    int LA13_0 = input.LA(1);
+ 
+                     if ( (LA13_0=='-') ) {
+                         alt13=1;
+@@ -2666,34 +2666,34 @@
+                         case 1 :
+                             // JPQL.g:1465:9: MINUS
+                             {
+-                            mMINUS(); 
++                            mMINUS(); 
+ 
+                             }
+-                            break;
++                            break;
+ 
+                     }
+-
+-                    match('.'); 
++
++                    match('.'); 
+                     // JPQL.g:1465:20: ( '0' .. '9' )+
+                     int cnt14=0;
+                     loop14:
+                     do {
+                         int alt14=2;
+-                        int LA14_0 = input.LA(1);
++                        int LA14_0 = input.LA(1);
+ 
+                         if ( ((LA14_0>='0' && LA14_0<='9')) ) {
+                             alt14=1;
+-                        }
++                        }
+ 
+ 
+                         switch (alt14) {
+                     	case 1 :
+                     	    // JPQL.g:1465:21: '0' .. '9'
+                     	    {
+-                    	    matchRange('0','9'); 
++                    	    matchRange('0','9'); 
+ 
+                     	    }
+-                    	    break;
++                    	    break;
+ 
+                     	default :
+                     	    if ( cnt14 >= 1 ) break loop14;
+@@ -2703,16 +2703,16 @@
+                         }
+                         cnt14++;
+                     } while (true);
+-
++
+ 
+                     }
+-                    break;
++                    break;
+                 case 3 :
+                     // JPQL.g:1466:9: ( MINUS )? ( '0' .. '9' )+
+                     {
+                     // JPQL.g:1466:9: ( MINUS )?
+                     int alt15=2;
+-                    int LA15_0 = input.LA(1);
++                    int LA15_0 = input.LA(1);
+ 
+                     if ( (LA15_0=='-') ) {
+                         alt15=1;
+@@ -2721,33 +2721,33 @@
+                         case 1 :
+                             // JPQL.g:1466:9: MINUS
+                             {
+-                            mMINUS(); 
++                            mMINUS(); 
+ 
+                             }
+-                            break;
++                            break;
+ 
+                     }
+-
++
+                     // JPQL.g:1466:16: ( '0' .. '9' )+
+                     int cnt16=0;
+                     loop16:
+                     do {
+                         int alt16=2;
+-                        int LA16_0 = input.LA(1);
++                        int LA16_0 = input.LA(1);
+ 
+                         if ( ((LA16_0>='0' && LA16_0<='9')) ) {
+                             alt16=1;
+-                        }
++                        }
+ 
+ 
+                         switch (alt16) {
+                     	case 1 :
+                     	    // JPQL.g:1466:17: '0' .. '9'
+                     	    {
+-                    	    matchRange('0','9'); 
++                    	    matchRange('0','9'); 
+ 
+                     	    }
+-                    	    break;
++                    	    break;
+ 
+                     	default :
+                     	    if ( cnt16 >= 1 ) break loop16;
+@@ -2757,18 +2757,18 @@
+                         }
+                         cnt16++;
+                     } while (true);
+-
++
+ 
+                     }
+-                    break;
++                    break;
+ 
+-            }
++            }
+         }
+         finally {
+         }
+     }
+-    // $ANTLR end "NUMERIC_DIGITS"
+-
++    // $ANTLR end "NUMERIC_DIGITS"
++
+     // $ANTLR start "DOUBLE_LITERAL"
+     public final void mDOUBLE_LITERAL() throws RecognitionException {
+         try {
+@@ -2777,10 +2777,10 @@
+             // JPQL.g:1470:5: ( NUMERIC_DIGITS ( DOUBLE_SUFFIX )? )
+             // JPQL.g:1470:9: NUMERIC_DIGITS ( DOUBLE_SUFFIX )?
+             {
+-            mNUMERIC_DIGITS(); 
++            mNUMERIC_DIGITS(); 
+             // JPQL.g:1470:24: ( DOUBLE_SUFFIX )?
+             int alt18=2;
+-            int LA18_0 = input.LA(1);
++            int LA18_0 = input.LA(1);
+ 
+             if ( (LA18_0=='d') ) {
+                 alt18=1;
+@@ -2789,13 +2789,13 @@
+                 case 1 :
+                     // JPQL.g:1470:24: DOUBLE_SUFFIX
+                     {
+-                    mDOUBLE_SUFFIX(); 
++                    mDOUBLE_SUFFIX(); 
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+-
++
+ 
+             }
+ 
+@@ -2805,8 +2805,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DOUBLE_LITERAL"
+-
++    // $ANTLR end "DOUBLE_LITERAL"
++
+     // $ANTLR start "FLOAT_LITERAL"
+     public final void mFLOAT_LITERAL() throws RecognitionException {
+         try {
+@@ -2819,11 +2819,11 @@
+                 case 1 :
+                     // JPQL.g:1474:9: NUMERIC_DIGITS EXPONENT ( FLOAT_SUFFIX )?
+                     {
+-                    mNUMERIC_DIGITS(); 
+-                    mEXPONENT(); 
++                    mNUMERIC_DIGITS(); 
++                    mEXPONENT(); 
+                     // JPQL.g:1474:33: ( FLOAT_SUFFIX )?
+                     int alt19=2;
+-                    int LA19_0 = input.LA(1);
++                    int LA19_0 = input.LA(1);
+ 
+                     if ( (LA19_0=='f') ) {
+                         alt19=1;
+@@ -2832,24 +2832,24 @@
+                         case 1 :
+                             // JPQL.g:1474:33: FLOAT_SUFFIX
+                             {
+-                            mFLOAT_SUFFIX(); 
++                            mFLOAT_SUFFIX(); 
+ 
+                             }
+-                            break;
++                            break;
+ 
+                     }
+-
++
+ 
+                     }
+-                    break;
++                    break;
+                 case 2 :
+                     // JPQL.g:1475:9: NUMERIC_DIGITS FLOAT_SUFFIX
+                     {
+-                    mNUMERIC_DIGITS(); 
+-                    mFLOAT_SUFFIX(); 
++                    mNUMERIC_DIGITS(); 
++                    mFLOAT_SUFFIX(); 
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+             state.type = _type;
+@@ -2858,8 +2858,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "FLOAT_LITERAL"
+-
++    // $ANTLR end "FLOAT_LITERAL"
++
+     // $ANTLR start "EXPONENT"
+     public final void mEXPONENT() throws RecognitionException {
+         try {
+@@ -2873,11 +2873,11 @@
+             else {
+                 MismatchedSetException mse = new MismatchedSetException(null,input);
+                 recover(mse);
+-                throw mse;}
+-
++                throw mse;}
++
+             // JPQL.g:1481:21: ( '+' | '-' )?
+             int alt21=2;
+-            int LA21_0 = input.LA(1);
++            int LA21_0 = input.LA(1);
+ 
+             if ( (LA21_0=='+'||LA21_0=='-') ) {
+                 alt21=1;
+@@ -2893,34 +2893,34 @@
+                     else {
+                         MismatchedSetException mse = new MismatchedSetException(null,input);
+                         recover(mse);
+-                        throw mse;}
+-
++                        throw mse;}
++
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+-
++
+             // JPQL.g:1481:32: ( '0' .. '9' )+
+             int cnt22=0;
+             loop22:
+             do {
+                 int alt22=2;
+-                int LA22_0 = input.LA(1);
++                int LA22_0 = input.LA(1);
+ 
+                 if ( ((LA22_0>='0' && LA22_0<='9')) ) {
+                     alt22=1;
+-                }
++                }
+ 
+ 
+                 switch (alt22) {
+             	case 1 :
+             	    // JPQL.g:1481:33: '0' .. '9'
+             	    {
+-            	    matchRange('0','9'); 
++            	    matchRange('0','9'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    if ( cnt22 >= 1 ) break loop22;
+@@ -2930,32 +2930,32 @@
+                 }
+                 cnt22++;
+             } while (true);
+-
++
+ 
+             }
+-
++
+         }
+         finally {
+         }
+     }
+-    // $ANTLR end "EXPONENT"
+-
++    // $ANTLR end "EXPONENT"
++
+     // $ANTLR start "FLOAT_SUFFIX"
+     public final void mFLOAT_SUFFIX() throws RecognitionException {
+         try {
+             // JPQL.g:1487:5: ( 'f' )
+             // JPQL.g:1487:9: 'f'
+             {
+-            match('f'); 
++            match('f'); 
+ 
+             }
+-
++
+         }
+         finally {
+         }
+     }
+-    // $ANTLR end "FLOAT_SUFFIX"
+-
++    // $ANTLR end "FLOAT_SUFFIX"
++
+     // $ANTLR start "DATE_LITERAL"
+     public final void mDATE_LITERAL() throws RecognitionException {
+         try {
+@@ -2964,24 +2964,24 @@
+             // JPQL.g:1491:5: ( LEFT_CURLY_BRACKET ( 'd' ) ( ' ' | '\\t' )+ '\\'' DATE_STRING '\\'' ( ' ' | '\\t' )* RIGHT_CURLY_BRACKET )
+             // JPQL.g:1491:7: LEFT_CURLY_BRACKET ( 'd' ) ( ' ' | '\\t' )+ '\\'' DATE_STRING '\\'' ( ' ' | '\\t' )* RIGHT_CURLY_BRACKET
+             {
+-            mLEFT_CURLY_BRACKET(); 
++            mLEFT_CURLY_BRACKET(); 
+             // JPQL.g:1491:26: ( 'd' )
+             // JPQL.g:1491:27: 'd'
+             {
+-            match('d'); 
++            match('d'); 
+ 
+             }
+-
++
+             // JPQL.g:1491:32: ( ' ' | '\\t' )+
+             int cnt23=0;
+             loop23:
+             do {
+                 int alt23=2;
+-                int LA23_0 = input.LA(1);
++                int LA23_0 = input.LA(1);
+ 
+                 if ( (LA23_0=='\t'||LA23_0==' ') ) {
+                     alt23=1;
+-                }
++                }
+ 
+ 
+                 switch (alt23) {
+@@ -2995,11 +2995,11 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    if ( cnt23 >= 1 ) break loop23;
+@@ -3009,19 +3009,19 @@
+                 }
+                 cnt23++;
+             } while (true);
+-
+-            match('\''); 
+-            mDATE_STRING(); 
+-            match('\''); 
++
++            match('\''); 
++            mDATE_STRING(); 
++            match('\''); 
+             // JPQL.g:1491:68: ( ' ' | '\\t' )*
+             loop24:
+             do {
+                 int alt24=2;
+-                int LA24_0 = input.LA(1);
++                int LA24_0 = input.LA(1);
+ 
+                 if ( (LA24_0=='\t'||LA24_0==' ') ) {
+                     alt24=1;
+-                }
++                }
+ 
+ 
+                 switch (alt24) {
+@@ -3035,18 +3035,18 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop24;
+                 }
+             } while (true);
+-
+-            mRIGHT_CURLY_BRACKET(); 
++
++            mRIGHT_CURLY_BRACKET(); 
+ 
+             }
+ 
+@@ -3056,8 +3056,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DATE_LITERAL"
+-
++    // $ANTLR end "DATE_LITERAL"
++
+     // $ANTLR start "TIME_LITERAL"
+     public final void mTIME_LITERAL() throws RecognitionException {
+         try {
+@@ -3066,24 +3066,24 @@
+             // JPQL.g:1495:5: ( LEFT_CURLY_BRACKET ( 't' ) ( ' ' | '\\t' )+ '\\'' TIME_STRING '\\'' ( ' ' | '\\t' )* RIGHT_CURLY_BRACKET )
+             // JPQL.g:1495:7: LEFT_CURLY_BRACKET ( 't' ) ( ' ' | '\\t' )+ '\\'' TIME_STRING '\\'' ( ' ' | '\\t' )* RIGHT_CURLY_BRACKET
+             {
+-            mLEFT_CURLY_BRACKET(); 
++            mLEFT_CURLY_BRACKET(); 
+             // JPQL.g:1495:26: ( 't' )
+             // JPQL.g:1495:27: 't'
+             {
+-            match('t'); 
++            match('t'); 
+ 
+             }
+-
++
+             // JPQL.g:1495:32: ( ' ' | '\\t' )+
+             int cnt25=0;
+             loop25:
+             do {
+                 int alt25=2;
+-                int LA25_0 = input.LA(1);
++                int LA25_0 = input.LA(1);
+ 
+                 if ( (LA25_0=='\t'||LA25_0==' ') ) {
+                     alt25=1;
+-                }
++                }
+ 
+ 
+                 switch (alt25) {
+@@ -3097,11 +3097,11 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    if ( cnt25 >= 1 ) break loop25;
+@@ -3111,19 +3111,19 @@
+                 }
+                 cnt25++;
+             } while (true);
+-
+-            match('\''); 
+-            mTIME_STRING(); 
+-            match('\''); 
++
++            match('\''); 
++            mTIME_STRING(); 
++            match('\''); 
+             // JPQL.g:1495:68: ( ' ' | '\\t' )*
+             loop26:
+             do {
+                 int alt26=2;
+-                int LA26_0 = input.LA(1);
++                int LA26_0 = input.LA(1);
+ 
+                 if ( (LA26_0=='\t'||LA26_0==' ') ) {
+                     alt26=1;
+-                }
++                }
+ 
+ 
+                 switch (alt26) {
+@@ -3137,18 +3137,18 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop26;
+                 }
+             } while (true);
+-
+-            mRIGHT_CURLY_BRACKET(); 
++
++            mRIGHT_CURLY_BRACKET(); 
+ 
+             }
+ 
+@@ -3158,8 +3158,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TIME_LITERAL"
+-
++    // $ANTLR end "TIME_LITERAL"
++
+     // $ANTLR start "TIMESTAMP_LITERAL"
+     public final void mTIMESTAMP_LITERAL() throws RecognitionException {
+         try {
+@@ -3168,25 +3168,25 @@
+             // JPQL.g:1499:5: ( LEFT_CURLY_BRACKET ( 'ts' ) ( ' ' | '\\t' )+ '\\'' DATE_STRING ' ' TIME_STRING '\\'' ( ' ' | '\\t' )* RIGHT_CURLY_BRACKET )
+             // JPQL.g:1499:7: LEFT_CURLY_BRACKET ( 'ts' ) ( ' ' | '\\t' )+ '\\'' DATE_STRING ' ' TIME_STRING '\\'' ( ' ' | '\\t' )* RIGHT_CURLY_BRACKET
+             {
+-            mLEFT_CURLY_BRACKET(); 
++            mLEFT_CURLY_BRACKET(); 
+             // JPQL.g:1499:26: ( 'ts' )
+             // JPQL.g:1499:27: 'ts'
+             {
+-            match("ts"); 
+-
++            match("ts"); 
++
+ 
+             }
+-
++
+             // JPQL.g:1499:33: ( ' ' | '\\t' )+
+             int cnt27=0;
+             loop27:
+             do {
+                 int alt27=2;
+-                int LA27_0 = input.LA(1);
++                int LA27_0 = input.LA(1);
+ 
+                 if ( (LA27_0=='\t'||LA27_0==' ') ) {
+                     alt27=1;
+-                }
++                }
+ 
+ 
+                 switch (alt27) {
+@@ -3200,11 +3200,11 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    if ( cnt27 >= 1 ) break loop27;
+@@ -3214,21 +3214,21 @@
+                 }
+                 cnt27++;
+             } while (true);
+-
+-            match('\''); 
+-            mDATE_STRING(); 
+-            match(' '); 
+-            mTIME_STRING(); 
+-            match('\''); 
++
++            match('\''); 
++            mDATE_STRING(); 
++            match(' '); 
++            mTIME_STRING(); 
++            match('\''); 
+             // JPQL.g:1499:85: ( ' ' | '\\t' )*
+             loop28:
+             do {
+                 int alt28=2;
+-                int LA28_0 = input.LA(1);
++                int LA28_0 = input.LA(1);
+ 
+                 if ( (LA28_0=='\t'||LA28_0==' ') ) {
+                     alt28=1;
+-                }
++                }
+ 
+ 
+                 switch (alt28) {
+@@ -3242,18 +3242,18 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop28;
+                 }
+             } while (true);
+-
+-            mRIGHT_CURLY_BRACKET(); 
++
++            mRIGHT_CURLY_BRACKET(); 
+ 
+             }
+ 
+@@ -3263,8 +3263,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TIMESTAMP_LITERAL"
+-
++    // $ANTLR end "TIMESTAMP_LITERAL"
++
+     // $ANTLR start "DATE_STRING"
+     public final void mDATE_STRING() throws RecognitionException {
+         try {
+@@ -3273,16 +3273,16 @@
+             // JPQL.g:1503:5: ( '0' .. '9' '0' .. '9' '0' .. '9' '0' .. '9' '-' '0' .. '9' '0' .. '9' '-' '0' .. '9' '0' .. '9' )
+             // JPQL.g:1503:7: '0' .. '9' '0' .. '9' '0' .. '9' '0' .. '9' '-' '0' .. '9' '0' .. '9' '-' '0' .. '9' '0' .. '9'
+             {
+-            matchRange('0','9'); 
+-            matchRange('0','9'); 
+-            matchRange('0','9'); 
+-            matchRange('0','9'); 
+-            match('-'); 
+-            matchRange('0','9'); 
+-            matchRange('0','9'); 
+-            match('-'); 
+-            matchRange('0','9'); 
+-            matchRange('0','9'); 
++            matchRange('0','9'); 
++            matchRange('0','9'); 
++            matchRange('0','9'); 
++            matchRange('0','9'); 
++            match('-'); 
++            matchRange('0','9'); 
++            matchRange('0','9'); 
++            match('-'); 
++            matchRange('0','9'); 
++            matchRange('0','9'); 
+ 
+             }
+ 
+@@ -3292,8 +3292,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DATE_STRING"
+-
++    // $ANTLR end "DATE_STRING"
++
+     // $ANTLR start "TIME_STRING"
+     public final void mTIME_STRING() throws RecognitionException {
+         try {
+@@ -3302,10 +3302,10 @@
+             // JPQL.g:1507:5: ( '0' .. '9' ( '0' .. '9' )? ':' '0' .. '9' '0' .. '9' ':' '0' .. '9' '0' .. '9' '.' ( '0' .. '9' )* )
+             // JPQL.g:1507:7: '0' .. '9' ( '0' .. '9' )? ':' '0' .. '9' '0' .. '9' ':' '0' .. '9' '0' .. '9' '.' ( '0' .. '9' )*
+             {
+-            matchRange('0','9'); 
++            matchRange('0','9'); 
+             // JPQL.g:1507:16: ( '0' .. '9' )?
+             int alt29=2;
+-            int LA29_0 = input.LA(1);
++            int LA29_0 = input.LA(1);
+ 
+             if ( ((LA29_0>='0' && LA29_0<='9')) ) {
+                 alt29=1;
+@@ -3314,45 +3314,45 @@
+                 case 1 :
+                     // JPQL.g:1507:17: '0' .. '9'
+                     {
+-                    matchRange('0','9'); 
++                    matchRange('0','9'); 
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+-
+-            match(':'); 
+-            matchRange('0','9'); 
+-            matchRange('0','9'); 
+-            match(':'); 
+-            matchRange('0','9'); 
+-            matchRange('0','9'); 
+-            match('.'); 
++
++            match(':'); 
++            matchRange('0','9'); 
++            matchRange('0','9'); 
++            match(':'); 
++            matchRange('0','9'); 
++            matchRange('0','9'); 
++            match('.'); 
+             // JPQL.g:1507:76: ( '0' .. '9' )*
+             loop30:
+             do {
+                 int alt30=2;
+-                int LA30_0 = input.LA(1);
++                int LA30_0 = input.LA(1);
+ 
+                 if ( ((LA30_0>='0' && LA30_0<='9')) ) {
+                     alt30=1;
+-                }
++                }
+ 
+ 
+                 switch (alt30) {
+             	case 1 :
+             	    // JPQL.g:1507:76: '0' .. '9'
+             	    {
+-            	    matchRange('0','9'); 
++            	    matchRange('0','9'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop30;
+                 }
+             } while (true);
+-
++
+ 
+             }
+ 
+@@ -3362,24 +3362,24 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "TIME_STRING"
+-
++    // $ANTLR end "TIME_STRING"
++
+     // $ANTLR start "DOUBLE_SUFFIX"
+     public final void mDOUBLE_SUFFIX() throws RecognitionException {
+         try {
+             // JPQL.g:1512:5: ( 'd' )
+             // JPQL.g:1512:7: 'd'
+             {
+-            match('d'); 
++            match('d'); 
+ 
+             }
+-
++
+         }
+         finally {
+         }
+     }
+-    // $ANTLR end "DOUBLE_SUFFIX"
+-
++    // $ANTLR end "DOUBLE_SUFFIX"
++
+     // $ANTLR start "EQUALS"
+     public final void mEQUALS() throws RecognitionException {
+         try {
+@@ -3388,7 +3388,7 @@
+             // JPQL.g:1516:5: ( '=' )
+             // JPQL.g:1516:7: '='
+             {
+-            match('='); 
++            match('='); 
+ 
+             }
+ 
+@@ -3398,8 +3398,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "EQUALS"
+-
++    // $ANTLR end "EQUALS"
++
+     // $ANTLR start "GREATER_THAN"
+     public final void mGREATER_THAN() throws RecognitionException {
+         try {
+@@ -3408,7 +3408,7 @@
+             // JPQL.g:1520:5: ( '>' )
+             // JPQL.g:1520:7: '>'
+             {
+-            match('>'); 
++            match('>'); 
+ 
+             }
+ 
+@@ -3418,8 +3418,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "GREATER_THAN"
+-
++    // $ANTLR end "GREATER_THAN"
++
+     // $ANTLR start "GREATER_THAN_EQUAL_TO"
+     public final void mGREATER_THAN_EQUAL_TO() throws RecognitionException {
+         try {
+@@ -3428,8 +3428,8 @@
+             // JPQL.g:1524:5: ( '>=' )
+             // JPQL.g:1524:7: '>='
+             {
+-            match(">="); 
+-
++            match(">="); 
++
+ 
+             }
+ 
+@@ -3439,8 +3439,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "GREATER_THAN_EQUAL_TO"
+-
++    // $ANTLR end "GREATER_THAN_EQUAL_TO"
++
+     // $ANTLR start "LESS_THAN"
+     public final void mLESS_THAN() throws RecognitionException {
+         try {
+@@ -3449,7 +3449,7 @@
+             // JPQL.g:1528:5: ( '<' )
+             // JPQL.g:1528:7: '<'
+             {
+-            match('<'); 
++            match('<'); 
+ 
+             }
+ 
+@@ -3459,8 +3459,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LESS_THAN"
+-
++    // $ANTLR end "LESS_THAN"
++
+     // $ANTLR start "LESS_THAN_EQUAL_TO"
+     public final void mLESS_THAN_EQUAL_TO() throws RecognitionException {
+         try {
+@@ -3469,8 +3469,8 @@
+             // JPQL.g:1532:5: ( '<=' )
+             // JPQL.g:1532:7: '<='
+             {
+-            match("<="); 
+-
++            match("<="); 
++
+ 
+             }
+ 
+@@ -3480,8 +3480,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "LESS_THAN_EQUAL_TO"
+-
++    // $ANTLR end "LESS_THAN_EQUAL_TO"
++
+     // $ANTLR start "NOT_EQUAL_TO"
+     public final void mNOT_EQUAL_TO() throws RecognitionException {
+         try {
+@@ -3489,37 +3489,37 @@
+             int _channel = DEFAULT_TOKEN_CHANNEL;
+             // JPQL.g:1536:5: ( '<>' | '!=' )
+             int alt31=2;
+-            int LA31_0 = input.LA(1);
++            int LA31_0 = input.LA(1);
+ 
+             if ( (LA31_0=='<') ) {
+                 alt31=1;
+-            }
++            }
+             else if ( (LA31_0=='!') ) {
+                 alt31=2;
+             }
+             else {
+                 NoViableAltException nvae =
+-                    new NoViableAltException("", 31, 0, input);
++                    new NoViableAltException("", 31, 0, input);
+ 
+-                throw nvae;
++                throw nvae;
+             }
+             switch (alt31) {
+                 case 1 :
+                     // JPQL.g:1536:7: '<>'
+                     {
+-                    match("<>"); 
+-
++                    match("<>"); 
++
+ 
+                     }
+-                    break;
++                    break;
+                 case 2 :
+                     // JPQL.g:1537:7: '!='
+                     {
+-                    match("!="); 
+-
++                    match("!="); 
++
+ 
+                     }
+-                    break;
++                    break;
+ 
+             }
+             state.type = _type;
+@@ -3528,8 +3528,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "NOT_EQUAL_TO"
+-
++    // $ANTLR end "NOT_EQUAL_TO"
++
+     // $ANTLR start "MULTIPLY"
+     public final void mMULTIPLY() throws RecognitionException {
+         try {
+@@ -3538,7 +3538,7 @@
+             // JPQL.g:1541:5: ( '*' )
+             // JPQL.g:1541:7: '*'
+             {
+-            match('*'); 
++            match('*'); 
+ 
+             }
+ 
+@@ -3548,8 +3548,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "MULTIPLY"
+-
++    // $ANTLR end "MULTIPLY"
++
+     // $ANTLR start "DIVIDE"
+     public final void mDIVIDE() throws RecognitionException {
+         try {
+@@ -3558,7 +3558,7 @@
+             // JPQL.g:1545:5: ( '/' )
+             // JPQL.g:1545:7: '/'
+             {
+-            match('/'); 
++            match('/'); 
+ 
+             }
+ 
+@@ -3568,8 +3568,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "DIVIDE"
+-
++    // $ANTLR end "DIVIDE"
++
+     // $ANTLR start "PLUS"
+     public final void mPLUS() throws RecognitionException {
+         try {
+@@ -3578,7 +3578,7 @@
+             // JPQL.g:1549:5: ( '+' )
+             // JPQL.g:1549:7: '+'
+             {
+-            match('+'); 
++            match('+'); 
+ 
+             }
+ 
+@@ -3588,8 +3588,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "PLUS"
+-
++    // $ANTLR end "PLUS"
++
+     // $ANTLR start "MINUS"
+     public final void mMINUS() throws RecognitionException {
+         try {
+@@ -3598,7 +3598,7 @@
+             // JPQL.g:1553:5: ( '-' )
+             // JPQL.g:1553:7: '-'
+             {
+-            match('-'); 
++            match('-'); 
+ 
+             }
+ 
+@@ -3608,8 +3608,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "MINUS"
+-
++    // $ANTLR end "MINUS"
++
+     // $ANTLR start "POSITIONAL_PARAM"
+     public final void mPOSITIONAL_PARAM() throws RecognitionException {
+         try {
+@@ -3618,39 +3618,39 @@
+             // JPQL.g:1558:5: ( '?' ( '1' .. '9' ) ( '0' .. '9' )* )
+             // JPQL.g:1558:7: '?' ( '1' .. '9' ) ( '0' .. '9' )*
+             {
+-            match('?'); 
++            match('?'); 
+             // JPQL.g:1558:11: ( '1' .. '9' )
+             // JPQL.g:1558:12: '1' .. '9'
+             {
+-            matchRange('1','9'); 
++            matchRange('1','9'); 
+ 
+             }
+-
++
+             // JPQL.g:1558:22: ( '0' .. '9' )*
+             loop32:
+             do {
+                 int alt32=2;
+-                int LA32_0 = input.LA(1);
++                int LA32_0 = input.LA(1);
+ 
+                 if ( ((LA32_0>='0' && LA32_0<='9')) ) {
+                     alt32=1;
+-                }
++                }
+ 
+ 
+                 switch (alt32) {
+             	case 1 :
+             	    // JPQL.g:1558:23: '0' .. '9'
+             	    {
+-            	    matchRange('0','9'); 
++            	    matchRange('0','9'); 
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop32;
+                 }
+             } while (true);
+-
++
+ 
+             }
+ 
+@@ -3660,8 +3660,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "POSITIONAL_PARAM"
+-
++    // $ANTLR end "POSITIONAL_PARAM"
++
+     // $ANTLR start "NAMED_PARAM"
+     public final void mNAMED_PARAM() throws RecognitionException {
+         try {
+@@ -3670,8 +3670,8 @@
+             // JPQL.g:1562:5: ( ':' TEXTCHAR )
+             // JPQL.g:1562:7: ':' TEXTCHAR
+             {
+-            match(':'); 
+-            mTEXTCHAR(); 
++            match(':'); 
++            mTEXTCHAR(); 
+ 
+             }
+ 
+@@ -3681,8 +3681,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "NAMED_PARAM"
+-
++    // $ANTLR end "NAMED_PARAM"
++
+     // $ANTLR start "STRING_LITERAL_DOUBLE_QUOTED"
+     public final void mSTRING_LITERAL_DOUBLE_QUOTED() throws RecognitionException {
+         try {
+@@ -3691,16 +3691,16 @@
+             // JPQL.g:1568:5: ( '\"' (~ ( '\"' ) )* '\"' )
+             // JPQL.g:1568:7: '\"' (~ ( '\"' ) )* '\"'
+             {
+-            match('\"'); 
++            match('\"'); 
+             // JPQL.g:1568:11: (~ ( '\"' ) )*
+             loop33:
+             do {
+                 int alt33=2;
+-                int LA33_0 = input.LA(1);
++                int LA33_0 = input.LA(1);
+ 
+                 if ( ((LA33_0>='\u0000' && LA33_0<='!')||(LA33_0>='#' && LA33_0<='\uFFFF')) ) {
+                     alt33=1;
+-                }
++                }
+ 
+ 
+                 switch (alt33) {
+@@ -3714,18 +3714,18 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop33;
+                 }
+             } while (true);
+-
+-            match('\"'); 
++
++            match('\"'); 
+ 
+             }
+ 
+@@ -3735,8 +3735,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "STRING_LITERAL_DOUBLE_QUOTED"
+-
++    // $ANTLR end "STRING_LITERAL_DOUBLE_QUOTED"
++
+     // $ANTLR start "STRING_LITERAL_SINGLE_QUOTED"
+     public final void mSTRING_LITERAL_SINGLE_QUOTED() throws RecognitionException {
+         try {
+@@ -3745,25 +3745,25 @@
+             // JPQL.g:1572:5: ( '\\'' (~ ( '\\'' ) | ( '\\'\\'' ) )* '\\'' )
+             // JPQL.g:1572:7: '\\'' (~ ( '\\'' ) | ( '\\'\\'' ) )* '\\''
+             {
+-            match('\''); 
++            match('\''); 
+             // JPQL.g:1572:12: (~ ( '\\'' ) | ( '\\'\\'' ) )*
+             loop34:
+             do {
+                 int alt34=3;
+-                int LA34_0 = input.LA(1);
++                int LA34_0 = input.LA(1);
+ 
+                 if ( (LA34_0=='\'') ) {
+-                    int LA34_1 = input.LA(2);
++                    int LA34_1 = input.LA(2);
+ 
+                     if ( (LA34_1=='\'') ) {
+                         alt34=2;
+-                    }
++                    }
+ 
+ 
+-                }
++                }
+                 else if ( ((LA34_0>='\u0000' && LA34_0<='&')||(LA34_0>='(' && LA34_0<='\uFFFF')) ) {
+                     alt34=1;
+-                }
++                }
+ 
+ 
+                 switch (alt34) {
+@@ -3777,32 +3777,32 @@
+             	    else {
+             	        MismatchedSetException mse = new MismatchedSetException(null,input);
+             	        recover(mse);
+-            	        throw mse;}
+-
++            	        throw mse;}
++
+ 
+             	    }
+-            	    break;
++            	    break;
+             	case 2 :
+             	    // JPQL.g:1572:24: ( '\\'\\'' )
+             	    {
+             	    // JPQL.g:1572:24: ( '\\'\\'' )
+             	    // JPQL.g:1572:25: '\\'\\''
+             	    {
+-            	    match("''"); 
+-
++            	    match("''"); 
++
+ 
+             	    }
+-
++
+ 
+             	    }
+-            	    break;
++            	    break;
+ 
+             	default :
+             	    break loop34;
+                 }
+             } while (true);
+-
+-            match('\''); 
++
++            match('\''); 
+ 
+             }
+ 
+@@ -3812,8 +3812,8 @@
+         finally {
+         }
+     }
+-    // $ANTLR end "STRING_LITERAL_SINGLE_QUOTED"
+-
++    // $ANTLR end "STRING_LITERAL_SINGLE_QUOTED"
++
+     public void mTokens() throws RecognitionException {
+         // JPQL.g:1:8: ( ABS | ALL | AND | ANY | AS | ASC | AVG | BETWEEN | BOTH | BY | CASE | COALESCE | CONCAT | COUNT | CURRENT_DATE | CURRENT_TIME | CURRENT_TIMESTAMP | DESC | DELETE | DISTINCT | ELSE | EMPTY | END | ENTRY | ESCAPE | EXISTS | FALSE | FETCH | FUNC | FROM | GROUP | HAVING | IN | INDEX | INNER | IS | JOIN | KEY | LEADING | LEFT | LENGTH | LIKE | LOCATE | LOWER | MAX | MEMBER | MIN | MOD | NEW | NOT | NULL | NULLIF | OBJECT | OF | OR | ORDER | OUTER | SELECT | SET | SIZE | SQRT | SOME | SUBSTRING | SUM | THEN | TRAILING | TREAT | TRIM | TRUE | TYPE | UNKNOWN | UPDATE | UPPER | VALUE | WHEN | WHERE | DOT | WS | LEFT_ROUND_BRACKET | LEFT_CURLY_BRACKET | RIGHT_ROUND_BRACKET | RIGHT_CURLY_BRACKET | COMMA | IDENT | HEX_LITERAL | INTEGER_LITERAL | LONG_LITERAL | OCTAL_LITERAL | DOUBLE_LITERAL | FLOAT_LITERAL | DATE_LITERAL | TIME_LITERAL | TIMESTAMP_LITERAL | DATE_STRING | TIME_STRING | EQUALS | GREATER_THAN | GREATER_THAN_EQUAL_TO | LESS_THAN | LESS_THAN_EQUAL_T
 O | NOT_EQUAL_TO | MULTIPLY | DIVIDE | PLUS | MINUS | POSITIONAL_PARAM | NAMED_PARAM | STRING_LITERAL_DOUBLE_QUOTED | STRING_LITERAL_SINGLE_QUOTED )
+         int alt35=109;
+@@ -3822,774 +3822,774 @@
+             case 1 :
+                 // JPQL.g:1:10: ABS
+                 {
+-                mABS(); 
++                mABS(); 
+ 
+                 }
+-                break;
++                break;
+             case 2 :
+                 // JPQL.g:1:14: ALL
+                 {
+-                mALL(); 
++                mALL(); 
+ 
+                 }
+-                break;
++                break;
+             case 3 :
+                 // JPQL.g:1:18: AND
+                 {
+-                mAND(); 
++                mAND(); 
+ 
+                 }
+-                break;
++                break;
+             case 4 :
+                 // JPQL.g:1:22: ANY
+                 {
+-                mANY(); 
++                mANY(); 
+ 
+                 }
+-                break;
++                break;
+             case 5 :
+                 // JPQL.g:1:26: AS
+                 {
+-                mAS(); 
++                mAS(); 
+ 
+                 }
+-                break;
++                break;
+             case 6 :
+                 // JPQL.g:1:29: ASC
+                 {
+-                mASC(); 
++                mASC(); 
+ 
+                 }
+-                break;
++                break;
+             case 7 :
+                 // JPQL.g:1:33: AVG
+                 {
+-                mAVG(); 
++                mAVG(); 
+ 
+                 }
+-                break;
++                break;
+             case 8 :
+                 // JPQL.g:1:37: BETWEEN
+                 {
+-                mBETWEEN(); 
++                mBETWEEN(); 
+ 
+                 }
+-                break;
++                break;
+             case 9 :
+                 // JPQL.g:1:45: BOTH
+                 {
+-                mBOTH(); 
++                mBOTH(); 
+ 
+                 }
+-                break;
++                break;
+             case 10 :
+                 // JPQL.g:1:50: BY
+                 {
+-                mBY(); 
++                mBY(); 
+ 
+                 }
+-                break;
++                break;
+             case 11 :
+                 // JPQL.g:1:53: CASE
+                 {
+-                mCASE(); 
++                mCASE(); 
+ 
+                 }
+-                break;
++                break;
+             case 12 :
+                 // JPQL.g:1:58: COALESCE
+                 {
+-                mCOALESCE(); 
++                mCOALESCE(); 
+ 
+                 }
+-                break;
++                break;
+             case 13 :
+                 // JPQL.g:1:67: CONCAT
+                 {
+-                mCONCAT(); 
++                mCONCAT(); 
+ 
+                 }
+-                break;
++                break;
+             case 14 :
+                 // JPQL.g:1:74: COUNT
+                 {
+-                mCOUNT(); 
++                mCOUNT(); 
+ 
+                 }
+-                break;
++                break;
+             case 15 :
+                 // JPQL.g:1:80: CURRENT_DATE
+                 {
+-                mCURRENT_DATE(); 
++                mCURRENT_DATE(); 
+ 
+                 }
+-                break;
++                break;
+             case 16 :
+                 // JPQL.g:1:93: CURRENT_TIME
+                 {
+-                mCURRENT_TIME(); 
++                mCURRENT_TIME(); 
+ 
+                 }
+-                break;
++                break;
+             case 17 :
+                 // JPQL.g:1:106: CURRENT_TIMESTAMP
+                 {
+-                mCURRENT_TIMESTAMP(); 
++                mCURRENT_TIMESTAMP(); 
+ 
+                 }
+-                break;
++                break;
+             case 18 :
+                 // JPQL.g:1:124: DESC
+                 {
+-                mDESC(); 
++                mDESC(); 
+ 
+                 }
+-                break;
++                break;
+             case 19 :
+                 // JPQL.g:1:129: DELETE
+                 {
+-                mDELETE(); 
++                mDELETE(); 
+ 
+                 }
+-                break;
++                break;
+             case 20 :
+                 // JPQL.g:1:136: DISTINCT
+                 {
+-                mDISTINCT(); 
++                mDISTINCT(); 
+ 
+                 }
+-                break;
++                break;
+             case 21 :
+                 // JPQL.g:1:145: ELSE
+                 {
+-                mELSE(); 
++                mELSE(); 
+ 
+                 }
+-                break;
++                break;
+             case 22 :
+                 // JPQL.g:1:150: EMPTY
+                 {
+-                mEMPTY(); 
++                mEMPTY(); 
+ 
+                 }
+-                break;
++                break;
+             case 23 :
+                 // JPQL.g:1:156: END
+                 {
+-                mEND(); 
++                mEND(); 
+ 
+                 }
+-                break;
++                break;
+             case 24 :
+                 // JPQL.g:1:160: ENTRY
+                 {
+-                mENTRY(); 
++                mENTRY(); 
+ 
+                 }
+-                break;
++                break;
+             case 25 :
+                 // JPQL.g:1:166: ESCAPE
+                 {
+-                mESCAPE(); 
++                mESCAPE(); 
+ 
+                 }
+-                break;
++                break;
+             case 26 :
+                 // JPQL.g:1:173: EXISTS
+                 {
+-                mEXISTS(); 
++                mEXISTS(); 
+ 
+                 }
+-                break;
++                break;
+             case 27 :
+                 // JPQL.g:1:180: FALSE
+                 {
+-                mFALSE(); 
++                mFALSE(); 
+ 
+                 }
+-                break;
++                break;
+             case 28 :
+                 // JPQL.g:1:186: FETCH
+                 {
+-                mFETCH(); 
++                mFETCH(); 
+ 
+                 }
+-                break;
++                break;
+             case 29 :
+                 // JPQL.g:1:192: FUNC
+                 {
+-                mFUNC(); 
++                mFUNC(); 
+ 
+                 }
+-                break;
++                break;
+             case 30 :
+                 // JPQL.g:1:197: FROM
+                 {
+-                mFROM(); 
++                mFROM(); 
+ 
+                 }
+-                break;
++                break;
+             case 31 :
+                 // JPQL.g:1:202: GROUP
+                 {
+-                mGROUP(); 
++                mGROUP(); 
+ 
+                 }
+-                break;
++                break;
+             case 32 :
+                 // JPQL.g:1:208: HAVING
+                 {
+-                mHAVING(); 
++                mHAVING(); 
+ 
+                 }
+-                break;
++                break;
+             case 33 :
+                 // JPQL.g:1:215: IN
+                 {
+-                mIN(); 
++                mIN(); 
+ 
+                 }
+-                break;
++                break;
+             case 34 :
+                 // JPQL.g:1:218: INDEX
+                 {
+-                mINDEX(); 
++                mINDEX(); 
+ 
+                 }
+-                break;
++                break;
+             case 35 :
+                 // JPQL.g:1:224: INNER
+                 {
+-                mINNER(); 
++                mINNER(); 
+ 
+                 }
+-                break;
++                break;
+             case 36 :
+                 // JPQL.g:1:230: IS
+                 {
+-                mIS(); 
++                mIS(); 
+ 
+                 }
+-                break;
++                break;
+             case 37 :
+                 // JPQL.g:1:233: JOIN
+                 {
+-                mJOIN(); 
++                mJOIN(); 
+ 
+                 }
+-                break;
++                break;
+             case 38 :
+                 // JPQL.g:1:238: KEY
+                 {
+-                mKEY(); 
++                mKEY(); 
+ 
+                 }
+-                break;
++                break;
+             case 39 :
+                 // JPQL.g:1:242: LEADING
+                 {
+-                mLEADING(); 
++                mLEADING(); 
+ 
+                 }
+-                break;
++                break;
+             case 40 :
+                 // JPQL.g:1:250: LEFT
+                 {
+-                mLEFT(); 
++                mLEFT(); 
+ 
+                 }
+-                break;
++                break;
+             case 41 :
+                 // JPQL.g:1:255: LENGTH
+                 {
+-                mLENGTH(); 
++                mLENGTH(); 
+ 
+                 }
+-                break;
++                break;
+             case 42 :
+                 // JPQL.g:1:262: LIKE
+                 {
+-                mLIKE(); 
++                mLIKE(); 
+ 
+                 }
+-                break;
++                break;
+             case 43 :
+                 // JPQL.g:1:267: LOCATE
+                 {
+-                mLOCATE(); 
++                mLOCATE(); 
+ 
+                 }
+-                break;
++                break;
+             case 44 :
+                 // JPQL.g:1:274: LOWER
+                 {
+-                mLOWER(); 
++                mLOWER(); 
+ 
+                 }
+-                break;
++                break;
+             case 45 :
+                 // JPQL.g:1:280: MAX
+                 {
+-                mMAX(); 
++                mMAX(); 
+ 
+                 }
+-                break;
++                break;
+             case 46 :
+                 // JPQL.g:1:284: MEMBER
+                 {
+-                mMEMBER(); 
++                mMEMBER(); 
+ 
+                 }
+-                break;
++                break;
+             case 47 :
+                 // JPQL.g:1:291: MIN
+                 {
+-                mMIN(); 
++                mMIN(); 
+ 
+                 }
+-                break;
++                break;
+             case 48 :
+                 // JPQL.g:1:295: MOD
+                 {
+-                mMOD(); 
++                mMOD(); 
+ 
+                 }
+-                break;
++                break;
+             case 49 :
+                 // JPQL.g:1:299: NEW
+                 {
+-                mNEW(); 
++                mNEW(); 
+ 
+                 }
+-                break;
++                break;
+             case 50 :
+                 // JPQL.g:1:303: NOT
+                 {
+-                mNOT(); 
++                mNOT(); 
+ 
+                 }
+-                break;
++                break;
+             case 51 :
+                 // JPQL.g:1:307: NULL
+                 {
+-                mNULL(); 
++                mNULL(); 
+ 
+                 }
+-                break;
++                break;
+             case 52 :
+                 // JPQL.g:1:312: NULLIF
+                 {
+-                mNULLIF(); 
++                mNULLIF(); 
+ 
+                 }
+-                break;
++                break;
+             case 53 :
+                 // JPQL.g:1:319: OBJECT
+                 {
+-                mOBJECT(); 
++                mOBJECT(); 
+ 
+                 }
+-                break;
++                break;
+             case 54 :
+                 // JPQL.g:1:326: OF
+                 {
+-                mOF(); 
++                mOF(); 
+ 
+                 }
+-                break;
++                break;
+             case 55 :
+                 // JPQL.g:1:329: OR
+                 {
+-                mOR(); 
++                mOR(); 
+ 
+                 }
+-                break;
++                break;
+             case 56 :
+                 // JPQL.g:1:332: ORDER
+                 {
+-                mORDER(); 
++                mORDER(); 
+ 
+                 }
+-                break;
++                break;
+             case 57 :
+                 // JPQL.g:1:338: OUTER
+                 {
+-                mOUTER(); 
++                mOUTER(); 
+ 
+                 }
+-                break;
++                break;
+             case 58 :
+                 // JPQL.g:1:344: SELECT
+                 {
+-                mSELECT(); 
++                mSELECT(); 
+ 
+                 }
+-                break;
++                break;
+             case 59 :
+                 // JPQL.g:1:351: SET
+                 {
+-                mSET(); 
++                mSET(); 
+ 
+                 }
+-                break;
++                break;
+             case 60 :
+                 // JPQL.g:1:355: SIZE
+                 {
+-                mSIZE(); 
++                mSIZE(); 
+ 
+                 }
+-                break;
++                break;
+             case 61 :
+                 // JPQL.g:1:360: SQRT
+                 {
+-                mSQRT(); 
++                mSQRT(); 
+ 
+                 }
+-                break;
++                break;
+             case 62 :
+                 // JPQL.g:1:365: SOME
+                 {
+-                mSOME(); 
++                mSOME(); 
+ 
+                 }
+-                break;
++                break;
+             case 63 :
+                 // JPQL.g:1:370: SUBSTRING
+                 {
+-                mSUBSTRING(); 
++                mSUBSTRING(); 
+ 
+                 }
+-                break;
++                break;
+             case 64 :
+                 // JPQL.g:1:380: SUM
+                 {
+-                mSUM(); 
++                mSUM(); 
+ 
+                 }
+-                break;
++                break;
+             case 65 :
+                 // JPQL.g:1:384: THEN
+                 {
+-                mTHEN(); 
++                mTHEN(); 
+ 
+                 }
+-                break;
++                break;
+             case 66 :
+                 // JPQL.g:1:389: TRAILING
+                 {
+-                mTRAILING(); 
++                mTRAILING(); 
+ 
+                 }
+-                break;
++                break;
+             case 67 :
+                 // JPQL.g:1:398: TREAT
+                 {
+-                mTREAT(); 
++                mTREAT(); 
+ 
+                 }
+-                break;
++                break;
+             case 68 :
+                 // JPQL.g:1:404: TRIM
+                 {
+-                mTRIM(); 
++                mTRIM(); 
+ 
+                 }
+-                break;
++                break;
+             case 69 :
+                 // JPQL.g:1:409: TRUE
+                 {
+-                mTRUE(); 
++                mTRUE(); 
+ 
+                 }
+-                break;
++                break;
+             case 70 :
+                 // JPQL.g:1:414: TYPE
+                 {
+-                mTYPE(); 
++                mTYPE(); 
+ 
+                 }
+-                break;
++                break;
+             case 71 :
+                 // JPQL.g:1:419: UNKNOWN
+                 {
+-                mUNKNOWN(); 
++                mUNKNOWN(); 
+ 
+                 }
+-                break;
++                break;
+             case 72 :
+                 // JPQL.g:1:427: UPDATE
+                 {
+-                mUPDATE(); 
++                mUPDATE(); 
+ 
+                 }
+-                break;
++                break;
+             case 73 :
+                 // JPQL.g:1:434: UPPER
+                 {
+-                mUPPER(); 
++                mUPPER(); 
+ 
+                 }
+-                break;
++                break;
+             case 74 :
+                 // JPQL.g:1:440: VALUE
+                 {
+-                mVALUE(); 
++                mVALUE(); 
+ 
+                 }
+-                break;
++                break;
+             case 75 :
+                 // JPQL.g:1:446: WHEN
+                 {
+-                mWHEN(); 
++                mWHEN(); 
+ 
+                 }
+-                break;
++                break;
+             case 76 :
+                 // JPQL.g:1:451: WHERE
+                 {
+-                mWHERE(); 
++                mWHERE(); 
+ 
+                 }
+-                break;
++                break;
+             case 77 :
+                 // JPQL.g:1:457: DOT
+                 {
+-                mDOT(); 
++                mDOT(); 
+ 
+                 }
+-                break;
++                break;
+             case 78 :
+                 // JPQL.g:1:461: WS
+                 {
+-                mWS(); 
++                mWS(); 
+ 
+                 }
+-                break;
++                break;
+             case 79 :
+                 // JPQL.g:1:464: LEFT_ROUND_BRACKET
+                 {
+-                mLEFT_ROUND_BRACKET(); 
++                mLEFT_ROUND_BRACKET(); 
+ 
+                 }
+-                break;
++                break;
+             case 80 :
+                 // JPQL.g:1:483: LEFT_CURLY_BRACKET
+                 {
+-                mLEFT_CURLY_BRACKET(); 
++                mLEFT_CURLY_BRACKET(); 
+ 
+                 }
+-                break;
++                break;
+             case 81 :
+                 // JPQL.g:1:502: RIGHT_ROUND_BRACKET
+                 {
+-                mRIGHT_ROUND_BRACKET(); 
++                mRIGHT_ROUND_BRACKET(); 
+ 
+                 }
+-                break;
++                break;
+             case 82 :
+                 // JPQL.g:1:522: RIGHT_CURLY_BRACKET
+                 {
+-                mRIGHT_CURLY_BRACKET(); 
++                mRIGHT_CURLY_BRACKET(); 
+ 
+                 }
+-                break;
++                break;
+             case 83 :
+                 // JPQL.g:1:542: COMMA
+                 {
+-                mCOMMA(); 
++                mCOMMA(); 
+ 
+                 }
+-                break;
++                break;
+             case 84 :
+                 // JPQL.g:1:548: IDENT
+                 {
+-                mIDENT(); 
++                mIDENT(); 
+ 
+                 }
+-                break;
++                break;
+             case 85 :
+                 // JPQL.g:1:554: HEX_LITERAL
+                 {
+-                mHEX_LITERAL(); 
++                mHEX_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 86 :
+                 // JPQL.g:1:566: INTEGER_LITERAL
+                 {
+-                mINTEGER_LITERAL(); 
++                mINTEGER_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 87 :
+                 // JPQL.g:1:582: LONG_LITERAL
+                 {
+-                mLONG_LITERAL(); 
++                mLONG_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 88 :
+                 // JPQL.g:1:595: OCTAL_LITERAL
+                 {
+-                mOCTAL_LITERAL(); 
++                mOCTAL_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 89 :
+                 // JPQL.g:1:609: DOUBLE_LITERAL
+                 {
+-                mDOUBLE_LITERAL(); 
++                mDOUBLE_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 90 :
+                 // JPQL.g:1:624: FLOAT_LITERAL
+                 {
+-                mFLOAT_LITERAL(); 
++                mFLOAT_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 91 :
+                 // JPQL.g:1:638: DATE_LITERAL
+                 {
+-                mDATE_LITERAL(); 
++                mDATE_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 92 :
+                 // JPQL.g:1:651: TIME_LITERAL
+                 {
+-                mTIME_LITERAL(); 
++                mTIME_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 93 :
+                 // JPQL.g:1:664: TIMESTAMP_LITERAL
+                 {
+-                mTIMESTAMP_LITERAL(); 
++                mTIMESTAMP_LITERAL(); 
+ 
+                 }
+-                break;
++                break;
+             case 94 :
+                 // JPQL.g:1:682: DATE_STRING
+                 {
+-                mDATE_STRING(); 
++                mDATE_STRING(); 
+ 
+                 }
+-                break;
++                break;
+             case 95 :
+                 // JPQL.g:1:694: TIME_STRING
+                 {
+-                mTIME_STRING(); 
++                mTIME_STRING(); 
+ 
+                 }
+-                break;
++                break;
+             case 96 :
+                 // JPQL.g:1:706: EQUALS
+                 {
+-                mEQUALS(); 
++                mEQUALS(); 
+ 
+                 }
+-                break;
++                break;
+             case 97 :
+                 // JPQL.g:1:713: GREATER_THAN
+                 {
+-                mGREATER_THAN(); 
++                mGREATER_THAN(); 
+ 
+                 }
+-                break;
++                break;
+             case 98 :
+                 // JPQL.g:1:726: GREATER_THAN_EQUAL_TO
+                 {
+-                mGREATER_THAN_EQUAL_TO(); 
++                mGREATER_THAN_EQUAL_TO(); 
+ 
+                 }
+-                break;
++                break;
+             case 99 :
+                 // JPQL.g:1:748: LESS_THAN
+                 {
+-                mLESS_THAN(); 
++                mLESS_THAN(); 
+ 
+                 }
+-                break;
++                break;
+             case 100 :
+                 // JPQL.g:1:758: LESS_THAN_EQUAL_TO
+                 {
+-                mLESS_THAN_EQUAL_TO(); 
++                mLESS_THAN_EQUAL_TO(); 
+ 
+                 }
+-                break;
++                break;
+             case 101 :
+                 // JPQL.g:1:777: NOT_EQUAL_TO
+                 {
+-                mNOT_EQUAL_TO(); 
++                mNOT_EQUAL_TO(); 
+ 
+                 }
+-                break;
++                break;
+             case 102 :
+                 // JPQL.g:1:790: MULTIPLY
+                 {
+-                mMULTIPLY(); 
++                mMULTIPLY(); 
+ 
+                 }
+-                break;
++                break;
+             case 103 :
+                 // JPQL.g:1:799: DIVIDE
+                 {
+-                mDIVIDE(); 
++                mDIVIDE(); 
+ 
+                 }
+-                break;
++                break;
+             case 104 :
+                 // JPQL.g:1:806: PLUS
+                 {
+-                mPLUS(); 
++                mPLUS(); 
+ 
+                 }
+-                break;
++                break;
+             case 105 :
+                 // JPQL.g:1:811: MINUS
+                 {
+-                mMINUS(); 
++                mMINUS(); 
+ 
+                 }
+-                break;
++                break;
+             case 106 :
+                 // JPQL.g:1:817: POSITIONAL_PARAM
+                 {
+-                mPOSITIONAL_PARAM(); 
++                mPOSITIONAL_PARAM(); 
+ 
+                 }
+-                break;
++                break;
+             case 107 :
+                 // JPQL.g:1:834: NAMED_PARAM
+                 {
+-                mNAMED_PARAM(); 
++                mNAMED_PARAM(); 
+ 
+                 }
+-                break;
++                break;
+             case 108 :
+                 // JPQL.g:1:846: STRING_LITERAL_DOUBLE_QUOTED
+                 {
+-                mSTRING_LITERAL_DOUBLE_QUOTED(); 
++                mSTRING_LITERAL_DOUBLE_QUOTED(); 
+ 
+                 }
+-                break;
++                break;
+             case 109 :
+                 // JPQL.g:1:875: STRING_LITERAL_SINGLE_QUOTED
+                 {
+-                mSTRING_LITERAL_SINGLE_QUOTED(); 
++                mSTRING_LITERAL_SINGLE_QUOTED(); 
+ 
+                 }
+-                break;
++                break;
+ 
+-        }
++        }
+ 
+     }
+ 
+ 
+-    protected DFA17 dfa17 = new DFA17(this);
+-    protected DFA20 dfa20 = new DFA20(this);
++    protected DFA17 dfa17 = new DFA17(this);
++    protected DFA20 dfa20 = new DFA20(this);
+     protected DFA35 dfa35 = new DFA35(this);
+     static final String DFA17_eotS =
+         "\2\uffff\1\5\3\uffff";
+@@ -4604,11 +4604,11 @@
+     static final String DFA17_specialS =
+         "\6\uffff}>";
+     static final String[] DFA17_transitionS = {
+-            "\1\1\1\3\1\uffff\12\2",
+-            "\1\3\1\uffff\12\2",
+-            "\1\4\1\uffff\12\2",
+-            "",
+-            "",
++            "\1\1\1\3\1\uffff\12\2",
++            "\1\3\1\uffff\12\2",
++            "\1\4\1\uffff\12\2",
++            "",
++            "",
+             ""
+     };
+ 
+@@ -4644,7 +4644,7 @@
+         public String getDescription() {
+             return "1462:1: fragment NUMERIC_DIGITS : ( ( MINUS )? ( '0' .. '9' )+ '.' ( '0' .. '9' )* | ( MINUS )? '.' ( '0' .. '9' )+ | ( MINUS )? ( '0' .. '9' )+ );";
+         }
+-    }
++    }
+     static final String DFA20_eotS =
+         "\11\uffff";
+     static final String DFA20_eofS =
+@@ -4658,14 +4658,14 @@
+     static final String DFA20_specialS =
+         "\11\uffff}>";
+     static final String[] DFA20_transitionS = {
+-            "\1\1\1\3\1\uffff\12\2",
+-            "\1\3\1\uffff\12\2",
+-            "\1\4\1\uffff\12\2\13\uffff\1\6\37\uffff\1\6\1\5",
+-            "\12\7",
++            "\1\1\1\3\1\uffff\12\2",
++            "\1\3\1\uffff\12\2",
++            "\1\4\1\uffff\12\2\13\uffff\1\6\37\uffff\1\6\1\5",
++            "\12\7",
+             "\12\10\13\uffff\1\6\37\uffff\1\6\1\5",
+-            "",
+-            "",
+-            "\12\7\13\uffff\1\6\37\uffff\1\6\1\5",
++            "",
++            "",
++            "\12\7\13\uffff\1\6\37\uffff\1\6\1\5",
+             "\12\10\13\uffff\1\6\37\uffff\1\6\1\5"
+     };
+ 
+@@ -4701,624 +4701,624 @@
+         public String getDescription() {
+             return "1473:1: FLOAT_LITERAL : ( NUMERIC_DIGITS EXPONENT ( FLOAT_SUFFIX )? | NUMERIC_DIGITS FLOAT_SUFFIX );";
+         }
+-    }
++    }
+     static final String DFA35_eotS =
+-        "\1\uffff\24\34\1\142\2\uffff\1\143\4\uffff\1\151\1\157\1\151\1"+
+-        "\uffff\1\165\1\167\10\uffff\3\34\1\175\3\34\1\u0081\20\34\1\u0098"+
+-        "\1\u0099\15\34\1\u00aa\1\u00ac\15\34\1\156\5\uffff\1\u00c3\1\156"+
+-        "\2\uffff\1\156\5\uffff\3\151\4\uffff\1\u00ca\1\u00cb\1\u00cc\1\u00cd"+
+-        "\1\u00ce\1\uffff\1\u00cf\2\34\1\uffff\12\34\1\u00dc\13\34\2\uffff"+
+-        "\1\34\1\u00e9\6\34\1\u00f0\1\34\1\u00f2\1\u00f3\1\u00f4\1\u00f5"+
+-        "\2\34\1\uffff\1\34\1\uffff\2\34\1\u00fb\4\34\1\u0100\13\34\2\uffff"+
+-        "\1\u00c3\1\uffff\2\156\1\u00c3\1\156\2\151\6\uffff\1\34\1\u0111"+
+-        "\1\u0112\4\34\1\u0117\2\34\1\u011a\1\34\1\uffff\5\34\1\u0121\1\u0122"+
+-        "\4\34\1\u0127\1\uffff\1\34\1\u0129\1\34\1\u012b\2\34\1\uffff\1\34"+
+-        "\4\uffff\1\u0130\4\34\1\uffff\1\u0135\1\u0136\1\u0137\1\34\1\uffff"+
+-        "\1\u0139\2\34\1\u013c\1\u013d\1\u013e\4\34\1\u0143\1\34\1\u00c3"+
+-        "\1\156\1\151\1\34\2\uffff\2\34\1\u0149\1\34\1\uffff\2\34\1\uffff"+
+-        "\1\u014d\1\u014e\2\34\1\u0151\1\u0152\2\uffff\1\u0153\1\34\1\u0155"+
+-        "\1\u0156\1\uffff\1\34\1\uffff\1\34\1\uffff\1\34\1\u015a\2\34\1\uffff"+
++        "\1\uffff\24\34\1\142\2\uffff\1\143\4\uffff\1\151\1\157\1\151\1"+
++        "\uffff\1\165\1\167\10\uffff\3\34\1\175\3\34\1\u0081\20\34\1\u0098"+
++        "\1\u0099\15\34\1\u00aa\1\u00ac\15\34\1\156\5\uffff\1\u00c3\1\156"+
++        "\2\uffff\1\156\5\uffff\3\151\4\uffff\1\u00ca\1\u00cb\1\u00cc\1\u00cd"+
++        "\1\u00ce\1\uffff\1\u00cf\2\34\1\uffff\12\34\1\u00dc\13\34\2\uffff"+
++        "\1\34\1\u00e9\6\34\1\u00f0\1\34\1\u00f2\1\u00f3\1\u00f4\1\u00f5"+
++        "\2\34\1\uffff\1\34\1\uffff\2\34\1\u00fb\4\34\1\u0100\13\34\2\uffff"+
++        "\1\u00c3\1\uffff\2\156\1\u00c3\1\156\2\151\6\uffff\1\34\1\u0111"+
++        "\1\u0112\4\34\1\u0117\2\34\1\u011a\1\34\1\uffff\5\34\1\u0121\1\u0122"+
++        "\4\34\1\u0127\1\uffff\1\34\1\u0129\1\34\1\u012b\2\34\1\uffff\1\34"+
++        "\4\uffff\1\u0130\4\34\1\uffff\1\u0135\1\u0136\1\u0137\1\34\1\uffff"+
++        "\1\u0139\2\34\1\u013c\1\u013d\1\u013e\4\34\1\u0143\1\34\1\u00c3"+
++        "\1\156\1\151\1\34\2\uffff\2\34\1\u0149\1\34\1\uffff\2\34\1\uffff"+
++        "\1\u014d\1\u014e\2\34\1\u0151\1\u0152\2\uffff\1\u0153\1\34\1\u0155"+
++        "\1\u0156\1\uffff\1\34\1\uffff\1\34\1\uffff\1\34\1\u015a\2\34\1\uffff"+
+         "\1\34\1\u015e\1\u015f\1\34\3\uffff\1\34\1\uffff\1\34\1\u0163\3\uffff"+
+-        "\2\34\1\u0166\1\u0167\1\uffff\1\u0168\1\uffff\2\34\1\u016b\1\uffff"+
+-        "\1\34\1\u016d\1\34\2\uffff\1\u016f\1\u0170\3\uffff\1\u0171\2\uffff"+
+-        "\1\34\1\u0173\1\u0174\1\uffff\1\u0175\1\u0176\1\u0177\2\uffff\1"+
+-        "\u0178\2\34\1\uffff\1\34\1\u017c\3\uffff\1\u017d\1\34\1\uffff\1"+
+-        "\34\1\uffff\1\34\3\uffff\1\u0181\6\uffff\2\34\1\u0184\2\uffff\1"+
+-        "\u0185\1\34\1\u0188\1\uffff\1\34\1\u018a\2\uffff\2\34\1\uffff\1"+
+-        "\u018d\1\uffff\2\34\1\uffff\2\34\1\u0192\1\u0194\1\uffff\1\34\1"+
++        "\2\34\1\u0166\1\u0167\1\uffff\1\u0168\1\uffff\2\34\1\u016b\1\uffff"+
++        "\1\34\1\u016d\1\34\2\uffff\1\u016f\1\u0170\3\uffff\1\u0171\2\uffff"+
++        "\1\34\1\u0173\1\u0174\1\uffff\1\u0175\1\u0176\1\u0177\2\uffff\1"+
++        "\u0178\2\34\1\uffff\1\34\1\u017c\3\uffff\1\u017d\1\34\1\uffff\1"+
++        "\34\1\uffff\1\34\3\uffff\1\u0181\6\uffff\2\34\1\u0184\2\uffff\1"+
++        "\u0185\1\34\1\u0188\1\uffff\1\34\1\u018a\2\uffff\2\34\1\uffff\1"+
++        "\u018d\1\uffff\2\34\1\uffff\2\34\1\u0192\1\u0194\1\uffff\1\34\1"+
+         "\uffff\3\34\1\u0199\1\uffff";
+     static final String DFA35_eofS =
+         "\u019a\uffff";
+     static final String DFA35_minS =
+-        "\1\11\1\142\1\145\1\141\1\145\1\154\1\141\1\162\1\141\1\156\1\157"+
+-        "\2\145\1\141\1\145\1\142\1\145\1\150\1\156\1\141\1\150\1\60\2\uffff"+
+-        "\1\144\4\uffff\3\56\1\uffff\2\75\10\uffff\1\163\1\154\1\144\1\44"+
+-        "\1\147\2\164\1\44\1\163\1\141\1\162\1\154\2\163\1\160\1\144\1\143"+
+-        "\1\151\1\154\1\164\1\156\2\157\1\166\2\44\1\151\1\171\1\141\1\153"+
+-        "\1\143\1\170\1\155\1\156\1\144\1\167\1\164\1\154\1\152\2\44\1\164"+
+-        "\1\154\1\172\1\162\1\155\1\142\1\145\1\141\1\160\1\153\1\144\1\154"+
+-        "\1\145\1\60\2\uffff\1\11\2\uffff\2\56\2\uffff\1\60\4\uffff\1\60"+
+-        "\3\56\4\uffff\5\44\1\uffff\1\44\1\167\1\150\1\uffff\1\145\1\154"+
+-        "\1\143\1\156\1\162\1\143\1\145\1\164\1\145\1\164\1\44\1\162\1\141"+
+-        "\2\163\2\143\1\155\1\165\1\151\2\145\2\uffff\1\156\1\44\1\144\1"+
+-        "\164\1\147\1\145\1\141\1\145\1\44\1\142\4\44\1\154\1\145\1\uffff"+
+-        "\1\145\1\uffff\2\145\1\44\1\145\1\164\1\145\1\163\1\44\1\156\1\151"+
+-        "\1\141\1\155\2\145\1\156\1\141\1\145\1\165\1\156\2\uffff\1\56\1"+
+-        "\uffff\1\56\1\60\4\56\6\uffff\1\145\2\44\1\145\1\141\1\164\1\145"+
+-        "\1\44\1\164\1\151\1\44\1\171\1\uffff\1\171\1\160\1\164\1\145\1\150"+
+-        "\2\44\1\160\1\156\1\170\1\162\1\44\1\uffff\1\151\1\44\1\164\1\44"+
+-        "\1\164\1\162\1\uffff\1\145\4\uffff\1\44\1\143\2\162\1\143\1\uffff"+
+-        "\3\44\1\164\1\uffff\1\44\1\154\1\164\3\44\1\157\1\164\1\162\1\145"+
+-        "\1\44\1\145\3\55\1\145\2\uffff\1\163\1\164\1\44\1\156\1\uffff\1"+
+-        "\145\1\156\1\uffff\2\44\1\145\1\163\2\44\2\uffff\1\44\1\147\2\44"+
++        "\1\11\1\142\1\145\1\141\1\145\1\154\1\141\1\162\1\141\1\156\1\157"+
++        "\2\145\1\141\1\145\1\142\1\145\1\150\1\156\1\141\1\150\1\60\2\uffff"+
++        "\1\144\4\uffff\3\56\1\uffff\2\75\10\uffff\1\163\1\154\1\144\1\44"+
++        "\1\147\2\164\1\44\1\163\1\141\1\162\1\154\2\163\1\160\1\144\1\143"+
++        "\1\151\1\154\1\164\1\156\2\157\1\166\2\44\1\151\1\171\1\141\1\153"+
++        "\1\143\1\170\1\155\1\156\1\144\1\167\1\164\1\154\1\152\2\44\1\164"+
++        "\1\154\1\172\1\162\1\155\1\142\1\145\1\141\1\160\1\153\1\144\1\154"+
++        "\1\145\1\60\2\uffff\1\11\2\uffff\2\56\2\uffff\1\60\4\uffff\1\60"+
++        "\3\56\4\uffff\5\44\1\uffff\1\44\1\167\1\150\1\uffff\1\145\1\154"+
++        "\1\143\1\156\1\162\1\143\1\145\1\164\1\145\1\164\1\44\1\162\1\141"+
++        "\2\163\2\143\1\155\1\165\1\151\2\145\2\uffff\1\156\1\44\1\144\1"+
++        "\164\1\147\1\145\1\141\1\145\1\44\1\142\4\44\1\154\1\145\1\uffff"+
++        "\1\145\1\uffff\2\145\1\44\1\145\1\164\1\145\1\163\1\44\1\156\1\151"+
++        "\1\141\1\155\2\145\1\156\1\141\1\145\1\165\1\156\2\uffff\1\56\1"+
++        "\uffff\1\56\1\60\4\56\6\uffff\1\145\2\44\1\145\1\141\1\164\1\145"+
++        "\1\44\1\164\1\151\1\44\1\171\1\uffff\1\171\1\160\1\164\1\145\1\150"+
++        "\2\44\1\160\1\156\1\170\1\162\1\44\1\uffff\1\151\1\44\1\164\1\44"+
++        "\1\164\1\162\1\uffff\1\145\4\uffff\1\44\1\143\2\162\1\143\1\uffff"+
++        "\3\44\1\164\1\uffff\1\44\1\154\1\164\3\44\1\157\1\164\1\162\1\145"+
++        "\1\44\1\145\3\55\1\145\2\uffff\1\163\1\164\1\44\1\156\1\uffff\1"+
++        "\145\1\156\1\uffff\2\44\1\145\1\163\2\44\2\uffff\1\44\1\147\2\44"+
+         "\1\uffff\1\156\1\uffff\1\150\1\uffff\1\145\1\44\1\162\1\146\1\uffff"+
+-        "\1\164\2\44\1\164\3\uffff\1\162\1\uffff\1\151\1\44\3\uffff\1\167"+
+-        "\1\145\2\44\1\uffff\1\44\1\uffff\1\156\1\143\1\44\1\uffff\1\164"+
+-        "\1\44\1\143\2\uffff\2\44\3\uffff\1\44\2\uffff\1\147\2\44\1\uffff"+
+-        "\3\44\2\uffff\1\44\1\151\1\156\1\uffff\1\156\1\44\3\uffff\1\44\1"+
+-        "\145\1\uffff\1\137\1\uffff\1\164\3\uffff\1\44\6\uffff\1\156\1\147"+
+-        "\1\44\2\uffff\1\44\1\144\1\44\1\uffff\1\147\1\44\2\uffff\1\141\1"+
+-        "\151\1\uffff\1\44\1\uffff\1\164\1\155\1\uffff\2\145\2\44\1\uffff"+
++        "\1\164\2\44\1\164\3\uffff\1\162\1\uffff\1\151\1\44\3\uffff\1\167"+
++        "\1\145\2\44\1\uffff\1\44\1\uffff\1\156\1\143\1\44\1\uffff\1\164"+
++        "\1\44\1\143\2\uffff\2\44\3\uffff\1\44\2\uffff\1\147\2\44\1\uffff"+
++        "\3\44\2\uffff\1\44\1\151\1\156\1\uffff\1\156\1\44\3\uffff\1\44\1"+
++        "\145\1\uffff\1\137\1\uffff\1\164\3\uffff\1\44\6\uffff\1\156\1\147"+
++        "\1\44\2\uffff\1\44\1\144\1\44\1\uffff\1\147\1\44\2\uffff\1\141\1"+
++        "\151\1\uffff\1\44\1\uffff\1\164\1\155\1\uffff\2\145\2\44\1\uffff"+
+         "\1\164\1\uffff\1\141\1\155\1\160\1\44\1\uffff";
+     static final String DFA35_maxS =
+-        "\1\176\1\166\1\171\1\165\1\151\1\170\1\165\1\162\1\141\1\163\1"+
+-        "\157\1\145\2\157\3\165\1\171\1\160\1\141\1\150\1\71\2\uffff\1\164"+
+-        "\4\uffff\1\170\1\71\1\154\1\uffff\1\75\1\76\10\uffff\1\163\1\154"+
+-        "\1\171\1\ufffe\1\147\2\164\1\ufffe\1\163\1\165\1\162\3\163\1\160"+
+-        "\1\164\1\143\1\151\1\154\1\164\1\156\2\157\1\166\2\ufffe\1\151\1"+
+-        "\171\1\156\1\153\1\167\1\170\1\155\1\156\1\144\1\167\1\164\1\154"+
+-        "\1\152\2\ufffe\2\164\1\172\1\162\2\155\1\145\1\165\1\160\1\153\1"+
+-        "\160\1\154\1\145\1\146\2\uffff\1\163\2\uffff\2\146\2\uffff\1\146"+
+-        "\4\uffff\1\71\3\154\4\uffff\5\ufffe\1\uffff\1\ufffe\1\167\1\150"+
+-        "\1\uffff\1\145\1\154\1\143\1\156\1\162\1\143\1\145\1\164\1\145\1"+
+-        "\164\1\ufffe\1\162\1\141\2\163\2\143\1\155\1\165\1\151\2\145\2\uffff"+
+-        "\1\156\1\ufffe\1\144\1\164\1\147\1\145\1\141\1\145\1\ufffe\1\142"+
+-        "\4\ufffe\1\154\1\145\1\uffff\1\145\1\uffff\2\145\1\ufffe\1\145\1"+
+-        "\164\1\145\1\163\1\ufffe\1\156\1\151\1\141\1\155\2\145\1\156\1\141"+
+-        "\1\145\1\165\1\162\2\uffff\1\146\1\uffff\4\146\2\154\6\uffff\1\145"+
+-        "\2\ufffe\1\145\1\141\1\164\1\145\1\ufffe\1\164\1\151\1\ufffe\1\171"+
+-        "\1\uffff\1\171\1\160\1\164\1\145\1\150\2\ufffe\1\160\1\156\1\170"+
+-        "\1\162\1\ufffe\1\uffff\1\151\1\ufffe\1\164\1\ufffe\1\164\1\162\1"+
+-        "\uffff\1\145\4\uffff\1\ufffe\1\143\2\162\1\143\1\uffff\3\ufffe\1"+
+-        "\164\1\uffff\1\ufffe\1\154\1\164\3\ufffe\1\157\1\164\1\162\1\145"+
+-        "\1\ufffe\1\145\2\146\1\154\1\145\2\uffff\1\163\1\164\1\ufffe\1\156"+
+-        "\1\uffff\1\145\1\156\1\uffff\2\ufffe\1\145\1\163\2\ufffe\2\uffff"+
+-        "\1\ufffe\1\147\2\ufffe\1\uffff\1\156\1\uffff\1\150\1\uffff\1\145"+
+-        "\1\ufffe\1\162\1\146\1\uffff\1\164\2\ufffe\1\164\3\uffff\1\162\1"+
++        "\1\176\1\166\1\171\1\165\1\151\1\170\1\165\1\162\1\141\1\163\1"+
++        "\157\1\145\2\157\3\165\1\171\1\160\1\141\1\150\1\71\2\uffff\1\164"+
++        "\4\uffff\1\170\1\71\1\154\1\uffff\1\75\1\76\10\uffff\1\163\1\154"+
++        "\1\171\1\ufffe\1\147\2\164\1\ufffe\1\163\1\165\1\162\3\163\1\160"+
++        "\1\164\1\143\1\151\1\154\1\164\1\156\2\157\1\166\2\ufffe\1\151\1"+
++        "\171\1\156\1\153\1\167\1\170\1\155\1\156\1\144\1\167\1\164\1\154"+
++        "\1\152\2\ufffe\2\164\1\172\1\162\2\155\1\145\1\165\1\160\1\153\1"+
++        "\160\1\154\1\145\1\146\2\uffff\1\163\2\uffff\2\146\2\uffff\1\146"+
++        "\4\uffff\1\71\3\154\4\uffff\5\ufffe\1\uffff\1\ufffe\1\167\1\150"+
++        "\1\uffff\1\145\1\154\1\143\1\156\1\162\1\143\1\145\1\164\1\145\1"+
++        "\164\1\ufffe\1\162\1\141\2\163\2\143\1\155\1\165\1\151\2\145\2\uffff"+
++        "\1\156\1\ufffe\1\144\1\164\1\147\1\145\1\141\1\145\1\ufffe\1\142"+
++        "\4\ufffe\1\154\1\145\1\uffff\1\145\1\uffff\2\145\1\ufffe\1\145\1"+
++        "\164\1\145\1\163\1\ufffe\1\156\1\151\1\141\1\155\2\145\1\156\1\141"+
++        "\1\145\1\165\1\162\2\uffff\1\146\1\uffff\4\146\2\154\6\uffff\1\145"+
++        "\2\ufffe\1\145\1\141\1\164\1\145\1\ufffe\1\164\1\151\1\ufffe\1\171"+
++        "\1\uffff\1\171\1\160\1\164\1\145\1\150\2\ufffe\1\160\1\156\1\170"+
++        "\1\162\1\ufffe\1\uffff\1\151\1\ufffe\1\164\1\ufffe\1\164\1\162\1"+
++        "\uffff\1\145\4\uffff\1\ufffe\1\143\2\162\1\143\1\uffff\3\ufffe\1"+
++        "\164\1\uffff\1\ufffe\1\154\1\164\3\ufffe\1\157\1\164\1\162\1\145"+
++        "\1\ufffe\1\145\2\146\1\154\1\145\2\uffff\1\163\1\164\1\ufffe\1\156"+
++        "\1\uffff\1\145\1\156\1\uffff\2\ufffe\1\145\1\163\2\ufffe\2\uffff"+
++        "\1\ufffe\1\147\2\ufffe\1\uffff\1\156\1\uffff\1\150\1\uffff\1\145"+
++        "\1\ufffe\1\162\1\146\1\uffff\1\164\2\ufffe\1\164\3\uffff\1\162\1"+
+         "\uffff\1\151\1\ufffe\3\uffff\1\167\1\145\2\ufffe\1\uffff\1\ufffe"+
+-        "\1\uffff\1\156\1\143\1\ufffe\1\uffff\1\164\1\ufffe\1\143\2\uffff"+
+-        "\2\ufffe\3\uffff\1\ufffe\2\uffff\1\147\2\ufffe\1\uffff\3\ufffe\2"+
+-        "\uffff\1\ufffe\1\151\1\156\1\uffff\1\156\1\ufffe\3\uffff\1\ufffe"+
+-        "\1\145\1\uffff\1\137\1\uffff\1\164\3\uffff\1\ufffe\6\uffff\1\156"+
+-        "\1\147\1\ufffe\2\uffff\1\ufffe\1\164\1\ufffe\1\uffff\1\147\1\ufffe"+
+-        "\2\uffff\1\141\1\151\1\uffff\1\ufffe\1\uffff\1\164\1\155\1\uffff"+
+-        "\2\145\2\ufffe\1\uffff\1\164\1\uffff\1\141\1\155\1\160\1\ufffe\1"+
++        "\1\uffff\1\156\1\143\1\ufffe\1\uffff\1\164\1\ufffe\1\143\2\uffff"+
++        "\2\ufffe\3\uffff\1\ufffe\2\uffff\1\147\2\ufffe\1\uffff\3\ufffe\2"+
++        "\uffff\1\ufffe\1\151\1\156\1\uffff\1\156\1\ufffe\3\uffff\1\ufffe"+
++        "\1\145\1\uffff\1\137\1\uffff\1\164\3\uffff\1\ufffe\6\uffff\1\156"+
++        "\1\147\1\ufffe\2\uffff\1\ufffe\1\164\1\ufffe\1\uffff\1\147\1\ufffe"+
++        "\2\uffff\1\141\1\151\1\uffff\1\ufffe\1\uffff\1\164\1\155\1\uffff"+
++        "\2\145\2\ufffe\1\uffff\1\164\1\uffff\1\141\1\155\1\160\1\ufffe\1"+
+         "\uffff";
+     static final String DFA35_acceptS =
+-        "\26\uffff\1\116\1\117\1\uffff\1\121\1\122\1\123\1\124\3\uffff\1"+
+-        "\140\2\uffff\1\145\1\146\1\147\1\150\1\152\1\153\1\154\1\155\67"+
+-        "\uffff\1\115\1\120\1\uffff\1\133\1\125\2\uffff\1\126\1\127\1\uffff"+
+-        "\1\137\1\132\1\131\1\151\4\uffff\1\142\1\141\1\144\1\143\5\uffff"+
+-        "\1\5\3\uffff\1\12\26\uffff\1\41\1\44\20\uffff\1\66\1\uffff\1\67"+
+-        "\23\uffff\1\135\1\134\1\uffff\1\130\6\uffff\1\1\1\2\1\3\1\4\1\6"+
+-        "\1\7\14\uffff\1\27\14\uffff\1\46\6\uffff\1\55\1\uffff\1\57\1\60"+
+-        "\1\61\1\62\5\uffff\1\73\4\uffff\1\100\20\uffff\1\11\1\13\4\uffff"+
+-        "\1\22\2\uffff\1\25\6\uffff\1\35\1\36\4\uffff\1\45\1\uffff\1\50\1"+
+-        "\uffff\1\52\4\uffff\1\63\4\uffff\1\74\1\75\1\76\1\uffff\1\101\2"+
+-        "\uffff\1\104\1\105\1\106\4\uffff\1\113\1\uffff\1\136\3\uffff\1\16"+
+-        "\3\uffff\1\26\1\30\2\uffff\1\33\1\34\1\37\1\uffff\1\42\1\43\3\uffff"+
+-        "\1\54\3\uffff\1\70\1\71\3\uffff\1\103\2\uffff\1\111\1\112\1\114"+
+-        "\2\uffff\1\15\1\uffff\1\23\1\uffff\1\31\1\32\1\40\1\uffff\1\51\1"+
+-        "\53\1\56\1\64\1\65\1\72\3\uffff\1\110\1\10\3\uffff\1\47\2\uffff"+
+-        "\1\107\1\14\2\uffff\1\24\1\uffff\1\102\2\uffff\1\77\4\uffff\1\17"+
++        "\26\uffff\1\116\1\117\1\uffff\1\121\1\122\1\123\1\124\3\uffff\1"+
++        "\140\2\uffff\1\145\1\146\1\147\1\150\1\152\1\153\1\154\1\155\67"+
++        "\uffff\1\115\1\120\1\uffff\1\133\1\125\2\uffff\1\126\1\127\1\uffff"+
++        "\1\137\1\132\1\131\1\151\4\uffff\1\142\1\141\1\144\1\143\5\uffff"+
++        "\1\5\3\uffff\1\12\26\uffff\1\41\1\44\20\uffff\1\66\1\uffff\1\67"+
++        "\23\uffff\1\135\1\134\1\uffff\1\130\6\uffff\1\1\1\2\1\3\1\4\1\6"+
++        "\1\7\14\uffff\1\27\14\uffff\1\46\6\uffff\1\55\1\uffff\1\57\1\60"+
++        "\1\61\1\62\5\uffff\1\73\4\uffff\1\100\20\uffff\1\11\1\13\4\uffff"+
++        "\1\22\2\uffff\1\25\6\uffff\1\35\1\36\4\uffff\1\45\1\uffff\1\50\1"+
++        "\uffff\1\52\4\uffff\1\63\4\uffff\1\74\1\75\1\76\1\uffff\1\101\2"+
++        "\uffff\1\104\1\105\1\106\4\uffff\1\113\1\uffff\1\136\3\uffff\1\16"+
++        "\3\uffff\1\26\1\30\2\uffff\1\33\1\34\1\37\1\uffff\1\42\1\43\3\uffff"+
++        "\1\54\3\uffff\1\70\1\71\3\uffff\1\103\2\uffff\1\111\1\112\1\114"+
++        "\2\uffff\1\15\1\uffff\1\23\1\uffff\1\31\1\32\1\40\1\uffff\1\51\1"+
++        "\53\1\56\1\64\1\65\1\72\3\uffff\1\110\1\10\3\uffff\1\47\2\uffff"+
++        "\1\107\1\14\2\uffff\1\24\1\uffff\1\102\2\uffff\1\77\4\uffff\1\17"+
+         "\1\uffff\1\20\4\uffff\1\21";
+     static final String DFA35_specialS =
+         "\u019a\uffff}>";
+     static final String[] DFA35_transitionS = {
+-            "\2\26\2\uffff\1\26\22\uffff\1\26\1\43\1\51\4\34\1\52\1\27\1"+
+-            "\31\1\44\1\46\1\33\1\36\1\25\1\45\1\35\11\37\1\50\1\34\1\42"+
+-            "\1\40\1\41\1\47\34\34\1\uffff\4\34\1\1\1\2\1\3\1\4\1\5\1\6\1"+
+-            "\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16\1\17\3\34\1\20\1\21\1"+
+-            "\22\1\23\1\24\3\34\1\30\1\34\1\32\1\34",
+-            "\1\53\11\uffff\1\54\1\uffff\1\55\4\uffff\1\56\2\uffff\1\57",
+-            "\1\60\11\uffff\1\61\11\uffff\1\62",
+-            "\1\63\15\uffff\1\64\5\uffff\1\65",
+-            "\1\66\3\uffff\1\67",
+-            "\1\70\1\71\1\72\4\uffff\1\73\4\uffff\1\74",
+-            "\1\75\3\uffff\1\76\14\uffff\1\100\2\uffff\1\77",
+-            "\1\101",
+-            "\1\102",
+-            "\1\103\4\uffff\1\104",
+-            "\1\105",
+-            "\1\106",
+-            "\1\107\3\uffff\1\110\5\uffff\1\111",
+-            "\1\112\3\uffff\1\113\3\uffff\1\114\5\uffff\1\115",
+-            "\1\116\11\uffff\1\117\5\uffff\1\120",
+-            "\1\121\3\uffff\1\122\13\uffff\1\123\2\uffff\1\124",
+-            "\1\125\3\uffff\1\126\5\uffff\1\130\1\uffff\1\127\3\uffff\1"+
++            "\2\26\2\uffff\1\26\22\uffff\1\26\1\43\1\51\4\34\1\52\1\27\1"+
++            "\31\1\44\1\46\1\33\1\36\1\25\1\45\1\35\11\37\1\50\1\34\1\42"+
++            "\1\40\1\41\1\47\34\34\1\uffff\4\34\1\1\1\2\1\3\1\4\1\5\1\6\1"+
++            "\7\1\10\1\11\1\12\1\13\1\14\1\15\1\16\1\17\3\34\1\20\1\21\1"+
++            "\22\1\23\1\24\3\34\1\30\1\34\1\32\1\34",
++            "\1\53\11\uffff\1\54\1\uffff\1\55\4\uffff\1\56\2\uffff\1\57",
++            "\1\60\11\uffff\1\61\11\uffff\1\62",
++            "\1\63\15\uffff\1\64\5\uffff\1\65",
++            "\1\66\3\uffff\1\67",
++            "\1\70\1\71\1\72\4\uffff\1\73\4\uffff\1\74",
++            "\1\75\3\uffff\1\76\14\uffff\1\100\2\uffff\1\77",
++            "\1\101",
++            "\1\102",
++            "\1\103\4\uffff\1\104",
++            "\1\105",
++            "\1\106",
++            "\1\107\3\uffff\1\110\5\uffff\1\111",
++            "\1\112\3\uffff\1\113\3\uffff\1\114\5\uffff\1\115",
++            "\1\116\11\uffff\1\117\5\uffff\1\120",
++            "\1\121\3\uffff\1\122\13\uffff\1\123\2\uffff\1\124",
++            "\1\125\3\uffff\1\126\5\uffff\1\130\1\uffff\1\127\3\uffff\1"+
+             "\131",
+-            "\1\132\11\uffff\1\133\6\uffff\1\134",
+-            "\1\135\1\uffff\1\136",
+-            "\1\137",
+-            "\1\140",
+-            "\12\141",
+-            "",
+-            "",
+-            "\1\145\17\uffff\1\144",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "\1\153\1\uffff\10\147\2\150\1\154\12\uffff\1\155\6\uffff\1"+
+-            "\152\13\uffff\1\146\13\uffff\1\156\2\155\5\uffff\1\152\13\uffff"+
+-            "\1\146",
+-            "\1\160\1\uffff\1\161\11\162",
+-            "\1\153\1\uffff\12\163\1\154\12\uffff\1\155\6\uffff\1\152\27"+
+-            "\uffff\1\156\2\155\5\uffff\1\152",
+-            "",
+-            "\1\164",
+-            "\1\166\1\43",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "\1\170",
++            "\1\132\11\uffff\1\133\6\uffff\1\134",
++            "\1\135\1\uffff\1\136",
++            "\1\137",
++            "\1\140",
++            "\12\141",
++            "",
++            "",
++            "\1\145\17\uffff\1\144",
++            "",
++            "",
++            "",
++            "",
++            "\1\153\1\uffff\10\147\2\150\1\154\12\uffff\1\155\6\uffff\1"+
++            "\152\13\uffff\1\146\13\uffff\1\156\2\155\5\uffff\1\152\13\uffff"+
++            "\1\146",
++            "\1\160\1\uffff\1\161\11\162",
++            "\1\153\1\uffff\12\163\1\154\12\uffff\1\155\6\uffff\1\152\27"+
++            "\uffff\1\156\2\155\5\uffff\1\152",
++            "",
++            "\1\164",
++            "\1\166\1\43",
++            "",
++            "",
++            "",
++            "",
++            "",
++            "",
++            "",
++            "",
++            "\1\170",
+             "\1\171",
+             "\1\172\24\uffff\1\173",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\2\34\1\174\27\34"+
+-            "\5\uffff\uff7f\34",
+-            "\1\176",
+-            "\1\177",
+-            "\1\u0080",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0082",
+-            "\1\u0083\14\uffff\1\u0084\6\uffff\1\u0085",
+-            "\1\u0086",
+-            "\1\u0088\6\uffff\1\u0087",
+-            "\1\u0089",
+-            "\1\u008a",
+-            "\1\u008b",
+-            "\1\u008c\17\uffff\1\u008d",
+-            "\1\u008e",
+-            "\1\u008f",
+-            "\1\u0090",
+-            "\1\u0091",
+-            "\1\u0092",
+-            "\1\u0093",
+-            "\1\u0094",
+-            "\1\u0095",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\3\34\1\u0096\11"+
+-            "\34\1\u0097\14\34\5\uffff\uff7f\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u009a",
+-            "\1\u009b",
+-            "\1\u009c\4\uffff\1\u009d\7\uffff\1\u009e",
+-            "\1\u009f",
+-            "\1\u00a0\23\uffff\1\u00a1",
+-            "\1\u00a2",
+-            "\1\u00a3",
+-            "\1\u00a4",
+-            "\1\u00a5",
+-            "\1\u00a6",
+-            "\1\u00a7",
+-            "\1\u00a8",
+-            "\1\u00a9",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\2\34\1\174\27\34"+
++            "\5\uffff\uff7f\34",
++            "\1\176",
++            "\1\177",
++            "\1\u0080",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0082",
++            "\1\u0083\14\uffff\1\u0084\6\uffff\1\u0085",
++            "\1\u0086",
++            "\1\u0088\6\uffff\1\u0087",
++            "\1\u0089",
++            "\1\u008a",
++            "\1\u008b",
++            "\1\u008c\17\uffff\1\u008d",
++            "\1\u008e",
++            "\1\u008f",
++            "\1\u0090",
++            "\1\u0091",
++            "\1\u0092",
++            "\1\u0093",
++            "\1\u0094",
++            "\1\u0095",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\3\34\1\u0096\11"+
++            "\34\1\u0097\14\34\5\uffff\uff7f\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u009a",
++            "\1\u009b",
++            "\1\u009c\4\uffff\1\u009d\7\uffff\1\u009e",
++            "\1\u009f",
++            "\1\u00a0\23\uffff\1\u00a1",
++            "\1\u00a2",
++            "\1\u00a3",
++            "\1\u00a4",
++            "\1\u00a5",
++            "\1\u00a6",
++            "\1\u00a7",
++            "\1\u00a8",
++            "\1\u00a9",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\3\34\1\u00ab\26"+
+             "\34\5\uffff\uff7f\34",
+-            "\1\u00ad",
+-            "\1\u00ae\7\uffff\1\u00af",
+-            "\1\u00b0",
+-            "\1\u00b1",
+-            "\1\u00b2",
+-            "\1\u00b3\12\uffff\1\u00b4",
+-            "\1\u00b5",
+-            "\1\u00b6\3\uffff\1\u00b7\3\uffff\1\u00b8\13\uffff\1\u00b9",
+-            "\1\u00ba",
+-            "\1\u00bb",
+-            "\1\u00bc\13\uffff\1\u00bd",
+-            "\1\u00be",
+-            "\1\u00bf",
+-            "\12\141\13\uffff\1\155\37\uffff\2\155",
+-            "",
+-            "",
+-            "\1\u00c1\26\uffff\1\u00c1\122\uffff\1\u00c0",
+-            "",
+-            "",
++            "\1\u00ad",
++            "\1\u00ae\7\uffff\1\u00af",
++            "\1\u00b0",
++            "\1\u00b1",
++            "\1\u00b2",
++            "\1\u00b3\12\uffff\1\u00b4",
++            "\1\u00b5",
++            "\1\u00b6\3\uffff\1\u00b7\3\uffff\1\u00b8\13\uffff\1\u00b9",
++            "\1\u00ba",
++            "\1\u00bb",
++            "\1\u00bc\13\uffff\1\u00bd",
++            "\1\u00be",
++            "\1\u00bf",
++            "\12\141\13\uffff\1\155\37\uffff\2\155",
++            "",
++            "",
++            "\1\u00c1\26\uffff\1\u00c1\122\uffff\1\u00c0",
++            "",
++            "",
+             "\1\153\1\uffff\10\u00c2\2\u00c4\1\154\12\uffff\1\155\36\uffff"+
+             "\1\156\2\155",
+             "\1\153\1\uffff\12\u00c4\1\154\12\uffff\1\155\37\uffff\2\155",
+-            "",
+-            "",
+-            "\12\u00c5\13\uffff\1\155\37\uffff\2\155",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "\12\141",
++            "",
++            "",
++            "\12\u00c5\13\uffff\1\155\37\uffff\2\155",
++            "",
++            "",
++            "",
++            "",
++            "\12\141",
+             "\1\153\1\uffff\10\u00c6\2\u00c7\13\uffff\1\155\6\uffff\1\152"+
+             "\27\uffff\1\156\2\155\5\uffff\1\152",
+-            "\1\153\1\uffff\12\u00c8\13\uffff\1\155\6\uffff\1\152\27\uffff"+
+-            "\1\156\2\155\5\uffff\1\152",
+-            "\1\153\1\uffff\12\u00c9\1\154\12\uffff\1\155\6\uffff\1\152"+
+-            "\27\uffff\1\156\2\155\5\uffff\1\152",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u00d0",
+-            "\1\u00d1",
+-            "",
+-            "\1\u00d2",
+-            "\1\u00d3",
+-            "\1\u00d4",
+-            "\1\u00d5",
+-            "\1\u00d6",
+-            "\1\u00d7",
+-            "\1\u00d8",
+-            "\1\u00d9",
+-            "\1\u00da",
+-            "\1\u00db",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\153\1\uffff\12\u00c8\13\uffff\1\155\6\uffff\1\152\27\uffff"+
++            "\1\156\2\155\5\uffff\1\152",
++            "\1\153\1\uffff\12\u00c9\1\154\12\uffff\1\155\6\uffff\1\152"+
++            "\27\uffff\1\156\2\155\5\uffff\1\152",
++            "",
++            "",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u00d0",
++            "\1\u00d1",
++            "",
++            "\1\u00d2",
++            "\1\u00d3",
++            "\1\u00d4",
++            "\1\u00d5",
++            "\1\u00d6",
++            "\1\u00d7",
++            "\1\u00d8",
++            "\1\u00d9",
++            "\1\u00da",
++            "\1\u00db",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u00dd",
+-            "\1\u00de",
+-            "\1\u00df",
+-            "\1\u00e0",
+-            "\1\u00e1",
+-            "\1\u00e2",
+-            "\1\u00e3",
+-            "\1\u00e4",
+-            "\1\u00e5",
+-            "\1\u00e6",
+-            "\1\u00e7",
+-            "",
+-            "",
+-            "\1\u00e8",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u00ea",
+-            "\1\u00eb",
+-            "\1\u00ec",
+-            "\1\u00ed",
+-            "\1\u00ee",
+-            "\1\u00ef",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\u00de",
++            "\1\u00df",
++            "\1\u00e0",
++            "\1\u00e1",
++            "\1\u00e2",
++            "\1\u00e3",
++            "\1\u00e4",
++            "\1\u00e5",
++            "\1\u00e6",
++            "\1\u00e7",
++            "",
++            "",
++            "\1\u00e8",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u00ea",
++            "\1\u00eb",
++            "\1\u00ec",
++            "\1\u00ed",
++            "\1\u00ee",
++            "\1\u00ef",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u00f1",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u00f6",
+-            "\1\u00f7",
+-            "",
+-            "\1\u00f8",
+-            "",
+-            "\1\u00f9",
++            "\1\u00f7",
++            "",
++            "\1\u00f8",
++            "",
++            "\1\u00f9",
+             "\1\u00fa",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u00fc",
+-            "\1\u00fd",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u00fc",
++            "\1\u00fd",
+             "\1\u00fe",
+             "\1\u00ff",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0101",
+-            "\1\u0102",
+-            "\1\u0103",
+-            "\1\u0104",
+-            "\1\u0105",
+-            "\1\u0106",
+-            "\1\u0107",
+-            "\1\u0108",
+-            "\1\u0109",
+-            "\1\u010a",
+-            "\1\u010b\3\uffff\1\u010c",
+-            "",
+-            "",
+-            "\1\153\1\uffff\10\u010d\2\u010e\13\uffff\1\155\36\uffff\1"+
+-            "\156\2\155",
+-            "",
+-            "\1\153\1\uffff\12\u010e\13\uffff\1\155\37\uffff\2\155",
+-            "\12\u00c5\13\uffff\1\155\37\uffff\2\155",
+-            "\1\153\1\uffff\10\u00c6\2\u00c7\13\uffff\1\155\36\uffff\1"+
+-            "\156\2\155",
+-            "\1\153\1\uffff\12\u00c7\13\uffff\1\155\37\uffff\2\155",
+-            "\1\153\1\uffff\12\u00c8\13\uffff\1\155\6\uffff\1\152\27\uffff"+
+-            "\1\156\2\155\5\uffff\1\152",
+-            "\1\153\1\uffff\12\u010f\13\uffff\1\155\6\uffff\1\152\27\uffff"+
+-            "\1\156\2\155\5\uffff\1\152",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "\1\u0110",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0113",
+-            "\1\u0114",
+-            "\1\u0115",
+-            "\1\u0116",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0101",
++            "\1\u0102",
++            "\1\u0103",
++            "\1\u0104",
++            "\1\u0105",
++            "\1\u0106",
++            "\1\u0107",
++            "\1\u0108",
++            "\1\u0109",
++            "\1\u010a",
++            "\1\u010b\3\uffff\1\u010c",
++            "",
++            "",
++            "\1\153\1\uffff\10\u010d\2\u010e\13\uffff\1\155\36\uffff\1"+
++            "\156\2\155",
++            "",
++            "\1\153\1\uffff\12\u010e\13\uffff\1\155\37\uffff\2\155",
++            "\12\u00c5\13\uffff\1\155\37\uffff\2\155",
++            "\1\153\1\uffff\10\u00c6\2\u00c7\13\uffff\1\155\36\uffff\1"+
++            "\156\2\155",
++            "\1\153\1\uffff\12\u00c7\13\uffff\1\155\37\uffff\2\155",
++            "\1\153\1\uffff\12\u00c8\13\uffff\1\155\6\uffff\1\152\27\uffff"+
++            "\1\156\2\155\5\uffff\1\152",
++            "\1\153\1\uffff\12\u010f\13\uffff\1\155\6\uffff\1\152\27\uffff"+
++            "\1\156\2\155\5\uffff\1\152",
++            "",
++            "",
++            "",
++            "",
++            "",
++            "",
++            "\1\u0110",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0113",
++            "\1\u0114",
++            "\1\u0115",
++            "\1\u0116",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u0118",
+             "\1\u0119",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u011b",
+-            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u011b",
++            "",
+             "\1\u011c",
+-            "\1\u011d",
+-            "\1\u011e",
++            "\1\u011d",
++            "\1\u011e",
+             "\1\u011f",
+             "\1\u0120",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0123",
+-            "\1\u0124",
+-            "\1\u0125",
+-            "\1\u0126",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\u0128",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u012a",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0123",
++            "\1\u0124",
++            "\1\u0125",
++            "\1\u0126",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\u0128",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u012a",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u012c",
+-            "\1\u012d",
+-            "",
++            "\1\u012d",
++            "",
+             "\1\u012e",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\10\34\1\u012f\21"+
+-            "\34\5\uffff\uff7f\34",
+-            "\1\u0131",
+-            "\1\u0132",
+-            "\1\u0133",
+-            "\1\u0134",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "",
++            "",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\10\34\1\u012f\21"+
++            "\34\5\uffff\uff7f\34",
++            "\1\u0131",
++            "\1\u0132",
++            "\1\u0133",
++            "\1\u0134",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u0138",
+             "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u013a",
+             "\1\u013b",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u013f",
+-            "\1\u0140",
+-            "\1\u0141",
+-            "\1\u0142",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u013f",
++            "\1\u0140",
++            "\1\u0141",
++            "\1\u0142",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u0144",
+-            "\1\u0145\1\153\1\uffff\10\u00c6\2\u00c7\13\uffff\1\155\36"+
+-            "\uffff\1\156\2\155",
+-            "\1\u0145\1\153\1\uffff\12\u00c7\13\uffff\1\155\37\uffff\2"+
++            "\1\u0145\1\153\1\uffff\10\u00c6\2\u00c7\13\uffff\1\155\36"+
++            "\uffff\1\156\2\155",
++            "\1\u0145\1\153\1\uffff\12\u00c7\13\uffff\1\155\37\uffff\2"+
+             "\155",
+-            "\1\u0145\1\153\1\uffff\12\u00c8\13\uffff\1\155\6\uffff\1\152"+
+-            "\27\uffff\1\156\2\155\5\uffff\1\152",
+-            "\1\u0146",
+-            "",
+-            "",
+-            "\1\u0147",
+-            "\1\u0148",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u014a",
+-            "",
+-            "\1\u014b",
+-            "\1\u014c",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\u0145\1\153\1\uffff\12\u00c8\13\uffff\1\155\6\uffff\1\152"+
++            "\27\uffff\1\156\2\155\5\uffff\1\152",
++            "\1\u0146",
++            "",
++            "",
++            "\1\u0147",
++            "\1\u0148",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u014a",
++            "",
++            "\1\u014b",
++            "\1\u014c",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\u014f",
+-            "\1\u0150",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0154",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\u0157",
+-            "",
+-            "\1\u0158",
+-            "",
+-            "\1\u0159",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u015b",
+-            "\1\u015c",
+-            "",
++            "\1\u0150",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0154",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\u0157",
++            "",
++            "\1\u0158",
++            "",
++            "\1\u0159",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u015b",
++            "\1\u015c",
++            "",
+             "\1\u015d",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0160",
+-            "",
+-            "",
+-            "",
+-            "\1\u0161",
+-            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0160",
++            "",
++            "",
++            "",
++            "\1\u0161",
++            "",
+             "\1\u0162",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "",
+-            "\1\u0164",
+-            "\1\u0165",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\u0169",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "",
++            "\1\u0164",
++            "\1\u0165",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\u0169",
+             "\1\u016a",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\u016c",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u016e",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "\1\u0172",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0179",
+-            "\1\u017a",
+-            "",
+-            "\1\u017b",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u017e",
+-            "",
+-            "\1\u017f",
+-            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\u016c",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u016e",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "\1\u0172",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0179",
++            "\1\u017a",
++            "",
++            "\1\u017b",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u017e",
++            "",
++            "\1\u017f",
++            "",
+             "\1\u0180",
+-            "",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "",
+-            "",
+-            "",
++            "",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "",
++            "",
++            "",
+             "",
+             "\1\u0182",
+-            "\1\u0183",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "\1\u0186\17\uffff\1\u0187",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\u0189",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "",
+-            "\1\u018b",
+-            "\1\u018c",
+-            "",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
+-            "",
+-            "\1\u018e",
+-            "\1\u018f",
+-            "",
+-            "\1\u0190",
+-            "\1\u0191",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "\1\u0183",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "\1\u0186\17\uffff\1\u0187",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\u0189",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "",
++            "\1\u018b",
++            "\1\u018c",
++            "",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
++            "",
++            "\1\u018e",
++            "\1\u018f",
++            "",
++            "\1\u0190",
++            "\1\u0191",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\22\34\1\u0193\7"+
+-            "\34\5\uffff\uff7f\34",
+-            "",
++            "\34\5\uffff\uff7f\34",
++            "",
+             "\1\u0195",
+-            "",
+-            "\1\u0196",
+-            "\1\u0197",
+-            "\1\u0198",
+-            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
+-            "\34",
++            "",
++            "\1\u0196",
++            "\1\u0197",
++            "\1\u0198",
++            "\1\34\13\uffff\12\34\45\uffff\1\34\1\uffff\32\34\5\uffff\uff7f"+
++            "\34",
+             ""
+     };
+ 
+@@ -5354,7 +5354,7 @@
+         public String getDescription() {
+             return "1:1: Tokens : ( ABS | ALL | AND | ANY | AS | ASC | AVG | BETWEEN | BOTH | BY | CASE | COALESCE | CONCAT | COUNT | CURRENT_DATE | CURRENT_TIME | CURRENT_TIMESTAMP | DESC | DELETE | DISTINCT | ELSE | EMPTY | END | ENTRY | ESCAPE | EXISTS | FALSE | FETCH | FUNC | FROM | GROUP | HAVING | IN | INDEX | INNER | IS | JOIN | KEY | LEADING | LEFT | LENGTH | LIKE | LOCATE | LOWER | MAX | MEMBER | MIN | MOD | NEW | NOT | NULL | NULLIF | OBJECT | OF | OR | ORDER | OUTER | SELECT | SET | SIZE | SQRT | SOME | SUBSTRING | SUM | THEN | TRAILING | TREAT | TRIM | TRUE | TYPE | UNKNOWN | UPDATE | UPPER | VALUE | WHEN | WHERE | DOT | WS | LEFT_ROUND_BRACKET | LEFT_CURLY_BRACKET | RIGHT_ROUND_BRACKET | RIGHT_CURLY_BRACKET | COMMA | IDENT | HEX_LITERAL | INTEGER_LITERAL | LONG_LITERAL | OCTAL_LITERAL | DOUBLE_LITERAL | FLOAT_LITERAL | DATE_LITERAL | TIME_LITERAL | TIMESTAMP_LITERAL | DATE_STRING | TIME_STRING | EQUALS | GREATER_THAN | GREATER_THAN_EQUAL_TO | LESS_THAN | LESS_T
 HAN_EQUAL_TO | NOT_EQUAL_TO | MULTIPLY | DIVIDE | PLUS | MINUS | POSITIONAL_PARAM | NAMED_PARAM | STRING_LITERAL_DOUBLE_QUOTED | STRING_LITERAL_SINGLE_QUOTED );";
+         }
+-    }
++    }
+  
+ 
+-}
+\ Manca newline alla fine del file
++}
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParserBuilder.java	2011-10-24 01:51:00.326908950 +0200
+@@ -12,8 +12,8 @@
+  ******************************************************************************/  
+ package org.eclipse.persistence.internal.jpa.parsing.jpql.antlr;
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
+-//import org.eclipse.persistence.internal.libraries.antlr.TokenBuffer;
++import org.antlr.runtime.*;
++//import org.antlr.TokenBuffer;
+ 
+ //eclipselink imports
+ import org.eclipse.persistence.internal.jpa.parsing.jpql.CaseInsensitiveJPQLLexer;
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/antlr/JPQLParser.java	2011-10-24 01:51:45.568906970 +0200
+@@ -9,7 +9,7 @@
+     import org.eclipse.persistence.internal.jpa.parsing.jpql.InvalidIdentifierException;
+ 
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
++import org.antlr.runtime.*;
+ 
+ import java.util.Stack;
+ /*******************************************************************************
+@@ -22441,4 +22441,4 @@
+     public static final BitSet FOLLOW_LEFT_ROUND_BRACKET_in_synpred1_JPQL3610 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x00FFFFFFFFFFFFFFL});
+     public static final BitSet FOLLOW_conditionalExpression_in_synpred1_JPQL3612 = new BitSet(new long[]{0x0000000000000002L});
+ 
+-}
+\ Manca newline alla fine del file
++}
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveANTLRStringStream.java	2011-10-24 01:52:48.963904195 +0200
+@@ -12,7 +12,7 @@
+  ******************************************************************************/  
+ package org.eclipse.persistence.internal.jpa.parsing.jpql;
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.ANTLRStringStream;
++import org.antlr.runtime.ANTLRStringStream;
+ 
+ /**
+  * This Stream is used when tokenizing JPQL queries
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/CaseInsensitiveJPQLLexer.java	2011-10-24 01:53:48.863901573 +0200
+@@ -12,7 +12,7 @@
+  ******************************************************************************/  
+ package org.eclipse.persistence.internal.jpa.parsing.jpql;
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
++import org.antlr.runtime.*;
+ import org.eclipse.persistence.internal.jpa.parsing.jpql.antlr.JPQLLexer;
+ 
+ /*
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierException.java	2011-10-24 01:54:29.907899776 +0200
+@@ -12,8 +12,8 @@
+  ******************************************************************************/  
+ package org.eclipse.persistence.internal.jpa.parsing.jpql;
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.RecognitionException;
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.Token;
++import org.antlr.runtime.RecognitionException;
++import org.antlr.runtime.Token;
+ 
+ /**
+  * This is a custom Exception class that is thrown from ANTLR JPQL code when we 
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/InvalidIdentifierStartException.java	2011-10-24 01:55:13.957897848 +0200
+@@ -12,7 +12,7 @@
+  ******************************************************************************/  
+ package org.eclipse.persistence.internal.jpa.parsing.jpql;
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.RecognitionException;
++import org.antlr.runtime.RecognitionException;
+ 
+ /*
+  * This is a custom Exception class that is thrown from ANTLR JPQL code when we 
+diff -Nru eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java
+--- eclipselink-2.2.1/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java	2010-12-22 07:43:32.000000000 +0100
++++ eclipselink-2.2.1-gil/org/eclipse/persistence/internal/jpa/parsing/jpql/JPQLParser.java	2011-10-24 01:58:09.709890154 +0200
+@@ -15,21 +15,21 @@
+ import java.util.List;
+ import java.util.ArrayList;
+ 
+-import org.eclipse.persistence.internal.libraries.antlr.runtime.*;
++import org.antlr.runtime.*;
+ // Third party (ANLTR) stuff
+-/*import org.eclipse.persistence.internal.libraries.antlr.ANTLRException;
+-import org.eclipse.persistence.internal.libraries.antlr.LLkParser;
+-import org.eclipse.persistence.internal.libraries.antlr.MismatchedCharException;
+-import org.eclipse.persistence.internal.libraries.antlr.MismatchedTokenException;
+-import org.eclipse.persistence.internal.libraries.antlr.NoViableAltException;
+-import org.eclipse.persistence.internal.libraries.antlr.NoViableAltForCharException;
+-import org.eclipse.persistence.internal.libraries.antlr.ParserSharedInputState;
+-import org.eclipse.persistence.internal.libraries.antlr.RecognitionException;
+-import org.eclipse.persistence.internal.libraries.antlr.Token;
+-import org.eclipse.persistence.internal.libraries.antlr.TokenBuffer;
+-import org.eclipse.persistence.internal.libraries.antlr.TokenStream;
+-import org.eclipse.persistence.internal.libraries.antlr.TokenStreamException;
+-import org.eclipse.persistence.internal.libraries.antlr.TokenStreamRecognitionException;*/
++/*import org.antlr.ANTLRException;
++import org.antlr.LLkParser;
++import org.antlr.MismatchedCharException;
++import org.antlr.MismatchedTokenException;
++import org.antlr.NoViableAltException;
++import org.antlr.NoViableAltForCharException;
++import org.antlr.ParserSharedInputState;
++import org.antlr.RecognitionException;
++import org.antlr.Token;
++import org.antlr.TokenBuffer;
++import org.antlr.TokenStream;
++import org.antlr.TokenStreamException;
++import org.antlr.TokenStreamRecognitionException;*/
+ 
+ //toplink imports
+ import org.eclipse.persistence.exceptions.JPQLException;
+@@ -41,7 +41,7 @@
+ /**
+  * EJBQLParser is the superclass of the ANTLR generated parser.
+  */
+-public abstract class JPQLParser extends org.eclipse.persistence.internal.libraries.antlr.runtime.Parser {
++public abstract class JPQLParser extends org.antlr.runtime.Parser {
+ 
+     /** List of errors. */
+     private List errors = new ArrayList();
diff --git a/eclipselink-2.3.2-06-build.xml b/eclipselink-2.3.2-06-build.xml
new file mode 100644
index 0000000..0ba75ee
--- /dev/null
+++ b/eclipselink-2.3.2-06-build.xml
@@ -0,0 +1,241 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- build file by gil -->
+<project name="build-eclipselink" default="package">
+  <property file="build.properties"/>
+  <property name="api.version"    value="2.3.2"/>
+  <property name="reltag.version" value="v20111125-r10461"/>
+  <property name="named.version"  value="${api.version}.${reltag.version}"/>
+
+  <target name="init">
+    <mkdir dir="${dir.build}/classes"/>
+  </target>
+
+  <target name="clean">
+    <delete dir="${dir.build}"/>
+  </target>
+
+  <path id="build.classpath">
+    <pathelement location="${dir.build}/classes/**"/>
+    <fileset dir="${dir.build}"    includes="eclipselink.jar"/>
+    <fileset dir="/usr/share/java" includes="ant.jar"/>
+    <fileset dir="/usr/share/java" includes="antlr3-runtime.jar"/>
+    <fileset dir="/usr/share/java" includes="felix/org.apache.felix.framework.jar"/>
+    <fileset dir="/usr/share/java" includes="geronimo-jms.jar"/>
+    <fileset dir="/usr/share/java" includes="hibernate-jpa-2.0-api.jar"/>
+    <fileset dir="/usr/share/java" includes="jboss-connector-1.6-api.jar"/>
+    <fileset dir="/usr/share/java" includes="jboss-transaction-1.1-api.jar"/>
+    <fileset dir="/usr/share/java" includes="geronimo-validation.jar"/>
+    <fileset dir="/usr/share/java" includes="javamail/mail.jar"/>
+    <fileset dir="/usr/share/java" includes="objectweb-asm/asm.jar"/>
+    <fileset dir="/usr/share/java" includes="objectweb-asm/asm-commons.jar"/>
+    <fileset dir="/usr/share/java" includes="objectweb-asm/asm-tree.jar"/>
+    <fileset dir="/usr/share/java" includes="objectweb-asm/asm-util.jar"/>
+    <fileset dir="/usr/share/java" includes="objectweb-asm/asm-xml.jar"/>
+    <!--fileset dir="/usr/share/java" includes="org.osgi.enterprise.jar"/-->
+    <fileset dir="/usr/share/java" includes="tuscany-sdo-api.jar"/>
+    <fileset dir="/usr/share/java" includes="tomcat-servlet-api.jar"/>
+    <fileset dir="/usr/share/java" includes="qname.jar"/>
+    <fileset dir="/usr/share/java" includes="wsdl4j.jar"/>
+    <!--fileset dir="/usr/share/java" includes="aspectjtools.jar"/-->
+    <!--fileset dir="/usr/share/java" includes="stringtemplate.jar"/-->
+  </path>
+
+  <target name="compile" depends="init">
+    <javac
+      srcdir="${dir.src}"
+      destdir="${dir.build}/classes"
+      debug="${debug}"
+      source="${source}"
+      target="${target}"
+      classpathref="build.classpath"
+      includeantruntime="false">
+      <include name="org/eclipse/persistence/**"/>
+      <include name="commonj/**"/>
+      <!-- Oracle non free -->
+      <exclude name="org/eclipse/persistence/platform/database/oracle/ucp/**" />
+      <exclude name="org/eclipse/persistence/tools/dbws/**" />
+      <exclude name="org/eclipse/persistence/internal/eis/adapters/aq/**" />
+      <exclude name="org/eclipse/persistence/eis/adapters/aq/**" />
+      <exclude name="org/eclipse/persistence/internal/platform/database/oracle/**" />
+      <exclude name="org/eclipse/persistence/platform/database/oracle/*.java" />
+      <exclude name="org/eclipse/persistence/platform/database/oracle/converters/**" />
+      <exclude name="org/eclipse/persistence/platform/xml/xdk/**" />
+      <!-- Embedded libraries -->
+      <exclude name="org/eclipse/persistence/internal/libraries/**" />
+    </javac>
+  </target>
+  
+  <target name="jar" depends="compile ">
+    <jar
+      destfile="${dir.build}/eclipselink.jar"
+      basedir="${dir.build}/classes"
+      excludes="org/eclipse/persistence/internal/libraries/**">
+      <!--zipfileset dir="${dir.src}/xsd" prefix="xsd"/>
+      <zipfileset file="${dir.src}/eclipselink_oxm_2_0.xsd" prefix="xsd"/>
+      <zipfileset file="${dir.src}/eclipselink_oxm_2_1.xsd" prefix="xsd"/-->
+      <fileset dir="${dir.src}">
+	<include name="org/eclipse/persistence/internal/helper/VendorNameToPlatformMapping.properties"/>
+	<include name="org/eclipse/persistence/*.xsd"/>
+	<include name="org/eclipse/persistence/jpa/*.xsd"/>
+	<include name="org/eclipse/persistence/jaxb/*.xsd"/>
+	<include name="org/eclipse/persistence/dbws/*.xsd"/>
+	<include name="*.html"/>
+      </fileset>
+      <service type="javax.persistence.spi.PersistenceProvider" provider="org.eclipse.persistence.jpa.PersistenceProvider"/>
+      <manifest>
+	<attribute name="Specification-Title" value="Eclipse Persistence Services Source"/>
+	<attribute name="Specification-Vendor" value="Eclipse.org - EclipseLink Project"/>
+	<attribute name="Specification-Version" value="${api.version}"/>
+	<attribute name="Implementation-Title" value="org.eclipse.persistence"/>
+	<attribute name="Implementation-Version" value="${named.version}"/>
+	<attribute name="Implementation-Vendor" value="Eclipse.org - EclipseLink Project"/>
+	<attribute name="Release-Designation" value="EclipseLink ${api.version}"/>
+	<attribute name="Premain-Class" value="org.eclipse.persistence.internal.jap.deployment.JavaSECMPInitializerAgent"/>
+	<attribute name="Main-Class" value="org.eclipse.persistence.Version"/>
+      </manifest>
+    </jar>
+  </target>
+
+  <!--taskdef name="osgiJar" classname="net.luminis.build.plugin.bnd.BuildTask">
+    <classpath>
+     <fileset dir="/usr/share/java" includes="net.luminis.build.plugin.jar" />
+     <fileset dir="/usr/share/java" includes="aqute-bndlib.jar" />
+     <fileset dir="/usr/share/java" includes="ant.jar" />
+    </classpath>
+  </taskdef>
+  
+  <target name="compile.antlr" depends="init">
+    <javac
+      srcdir="${dir.src}"
+      destdir="${dir.build}/classes-antlr"
+      debug="${debug}"
+      source="${source}"
+      target="${target}"
+      classpathref="build.classpath"
+      includeantruntime="false">
+      <include name="org/eclipse/persistence/internal/libraries/antlr/**"/>
+      <classpath>
+	<pathelement location="${dir.build}/classes"/>
+	<pathelement location="${dir.build}/classes-antlr"/>
+	<fileset dir="/usr/share/java" includes="stringtemplate.jar"/>
+      </classpath>
+    </javac>
+  </target>
+  
+  <target name="compile.asm" depends="init">
+    <javac
+      srcdir="${dir.src}"
+      destdir="${dir.build}/classes-asm"
+      debug="${debug}"
+      source="${source}"
+      target="${target}"
+      classpathref="build.classpath"
+      includeantruntime="false">
+      <include name="org/eclipse/persistence/internal/libraries/asm/**"/>
+    </javac>
+  </target>
+  
+  <target name="jar.antlr" depends="compile.antlr">
+      <osgiJar
+         outputdir="${dir.build}"
+         bundleName="EclipseLink ANTLR"
+         bundleVendor="Eclipse.org - EclipseLink Project"
+         bundleSymbolicName="org.eclipse.persistence.antlr"
+         bundleVersion="${named.version}"
+         bundleRequiredExecutionEnvironment="J2SE-1.5"
+         exportpackage="
+org.eclipse.persistence.internal.libraries.antlr.runtime;version=${named.version},
+org.eclipse.persistence.internal.libraries.antlr.runtime.debug;version=${named.version},
+org.eclipse.persistence.internal.libraries.antlr.runtime.misc;version=${named.version},
+org.eclipse.persistence.internal.libraries.antlr.runtime.tree;version=${named.version},
+"
+         privatePackage=""
+	 includeResource="${dir.src}/about.html,${dir.src}/license.html,${dir.src}/readme.html"
+         includeIncludeResourceHeader="false"
+        >
+        <classpath><pathelement path="${dir.build}/classes-antlr" /></classpath>
+        <manifest>
+          <attribute name="Built-By" value="${user.name}"/>
+          <attribute name="Specification-Title" value="Eclipse Persistence Services Source"/>
+          <attribute name="Specification-Vendor" value="Eclipse.org - EclipseLink Project"/>
+          <attribute name="Specification-Version" value="${api.version}"/>
+          <attribute name="Implementation-Title" value="org.eclipse.persistence.antlr"/>
+          <attribute name="Implementation-Version" value="${named.version}"/>
+          <attribute name="Implementation-Vendor" value="Eclipse.org - EclipseLink Project"/>
+          <attribute name="Release-Designation" value="EclipseLink ${api.version}"/>
+          <attribute name="HK2-Bundle-Name" value="org.eclipse.persistence:org.eclipse.persistence.antlr"/>
+       </manifest>
+      </osgiJar>
+  </target>
+  
+  <target name="jar.asm" depends="compile.asm">
+      <osgiJar
+         outputdir="${dir.build}"
+         bundleName="EclipseLink ASM"
+         bundleVendor="Eclipse.org - EclipseLink Project"
+         bundleSymbolicName="org.eclipse.persistence.asm"
+         bundleVersion="${named.version}"
+         bundleRequiredExecutionEnvironment="J2SE-1.5"
+importPackage="
+javax.xml.transform,
+javax.xml.transform.sax,
+javax.xml.transform.stream,
+org.xml.sax,org.xml.sax.ext,
+org.xml.sax.helpers,
+"
+         exportpackage="
+org.eclipse.persistence.internal.libraries.asm;version=${named.version},
+org.eclipse.persistence.internal.libraries.asm.commons;version=${named.version},
+org.eclipse.persistence.internal.libraries.asm.signature;version=${named.version},
+org.eclipse.persistence.internal.libraries.asm.tree;version=${named.version},
+org.eclipse.persistence.internal.libraries.asm.tree.analysis;version=${named.version},
+org.eclipse.persistence.internal.libraries.asm.util;version=${named.version},
+org.eclipse.persistence.internal.libraries.asm.xml;version=${named.version},
+"
+         privatePackage=""
+	 includeResource="${dir.src}/about.html,${dir.src}/license.html,${dir.src}/readme.html"
+         includeIncludeResourceHeader="false"
+        >
+        <classpath><pathelement path="${dir.build}/classes-asm" /></classpath>
+        <manifest>
+          <attribute name="Built-By" value="${user.name}"/>
+          <attribute name="Specification-Title" value="Eclipse Persistence Services Source"/>
+          <attribute name="Specification-Vendor" value="Eclipse.org - EclipseLink Project"/>
+          <attribute name="Specification-Version" value="${api.version}"/>
+          <attribute name="Implementation-Title" value="org.eclipse.persistence.asm"/>
+          <attribute name="Implementation-Version" value="${named.version}"/>
+          <attribute name="Implementation-Vendor" value="Eclipse.org - EclipseLink Project"/>
+          <attribute name="Release-Designation" value="EclipseLink ${api.version}"/>
+          <attribute name="HK2-Bundle-Name" value="org.eclipse.persistence:org.eclipse.persistence.asm"/>
+       </manifest>
+      </osgiJar>
+  </target-->
+  
+  <target name="javadoc" depends="init">
+    <mkdir dir="${dir.build}/api"/>
+    <javadoc
+      destdir="${dir.build}/api"
+      access="public"
+      windowtitle="EclipseLink ${api.version}, &quot;build ${reltag.version}&quot; API Reference"
+      doctitle="EclipseLink ${api.version}, &quot;build ${reltag.version}&quot; API Reference"
+      bottom="EclipseLink ${api.version}, &quot;build ${reltag.version}&quot; API Reference"
+      defaultexcludes="yes">
+      <packageset dir="${dir.src}">
+	<include name="org/eclipse/persistence/**"/>
+	<!-- Oracle non free -->
+	<exclude name="org/eclipse/persistence/platform/database/oracle/ucp/**" />
+	<exclude name="org/eclipse/persistence/tools/dbws/**" />
+	<exclude name="org/eclipse/persistence/eis/adapters/aq/**" />
+	<exclude name="org/eclipse/persistence/platform/database/oracle/**" />
+	<exclude name="org/eclipse/persistence/platform/xml/xdk/**" />
+	<!-- Embedded libraries-->
+	<exclude name="org/eclipse/persistence/internal/**" />
+      </packageset>
+      <link href="/usr/share/javadoc/java/" packagelistLoc="/usr/share/javadoc/java/package-list"/>
+      <classpath refid="build.classpath"/>
+    </javadoc>
+  </target>
+  <!--  jar.asm, jar.antlr, -->
+  <target name="package" depends="jar, javadoc"/>
+
+</project>
diff --git a/eclipselink-2.3.2-core-pom.patch b/eclipselink-2.3.2-core-pom.patch
new file mode 100644
index 0000000..6027811
--- /dev/null
+++ b/eclipselink-2.3.2-core-pom.patch
@@ -0,0 +1,76 @@
+--- org.eclipse.persistence.core-2.3.2.pom	2011-12-09 18:38:44.000000000 +0100
++++ org.eclipse.persistence.core-2.3.2.pom-gil	2012-07-16 13:09:15.393170953 +0200
+@@ -39,7 +39,72 @@
+       <comments>Standard Eclipse Distribution License</comments>
+     </license>
+   </licenses>
+-  <dependencies><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.asm</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.antlr</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency></dependencies>
++  <dependencies>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-commons</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-tree</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-tree</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-util</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-xml</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++     <groupId>org.antlr</groupId>
++     <artifactId>antlr-runtime</artifactId>
++     <version>3.2</version>
++     <type>jar</type>
++     <scope>compile</scope>
++     <optional>false</optional>
++    </dependency>
++    <dependency>
++     <groupId>org.antlr</groupId>
++     <artifactId>antlr</artifactId>
++     <version>3.2</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++  </dependencies>
+ </project>
+ 
+ 
diff --git a/eclipselink-2.3.2-disable-non-free-osgi-enterprise.patch b/eclipselink-2.3.2-disable-non-free-osgi-enterprise.patch
new file mode 100644
index 0000000..fd68f1f
--- /dev/null
+++ b/eclipselink-2.3.2-disable-non-free-osgi-enterprise.patch
@@ -0,0 +1,35 @@
+--- org/eclipse/persistence/jpa/osgi/Activator.java	2011-06-15 12:35:44.000000000 +0200
++++ org/eclipse/persistence/jpa/osgi/Activator.java-gil	2012-06-26 14:16:26.661985088 +0200
+@@ -28,7 +28,7 @@
+ import org.osgi.framework.BundleEvent;
+ import org.osgi.framework.ServiceReference;
+ import org.osgi.framework.SynchronousBundleListener;
+-import org.osgi.service.jpa.EntityManagerFactoryBuilder;
++//import org.osgi.service.jpa.EntityManagerFactoryBuilder;
+ import org.osgi.service.packageadmin.PackageAdmin;
+ 
+ /**
+@@ -173,17 +173,17 @@
+         Object emfBuilderServiceProxy = null ;
+    
+         try {
+-            emfBuilderServiceProxy = 
+-                Proxy.newProxyInstance(this.getClass().getClassLoader(), 
+-                        new Class[]{EntityManagerFactoryBuilder.class}, 
+-                        emfBuilderProxyHandler);
++            //emfBuilderServiceProxy = 
++            //    Proxy.newProxyInstance(this.getClass().getClassLoader(), 
++            //            new Class[]{EntityManagerFactoryBuilder.class}, 
++            //            emfBuilderProxyHandler);
+         } catch (Exception e) {
+             AbstractSessionLog.getLog().finest("EclipseLink OSGi - Failed to create proxy for EMF builder service: " + e); 
+         }
+    
+         try {
+-            String[] serviceInterfaces = new String[]{EntityManagerFactoryBuilder.class.getName()};
+-            context.registerService(serviceInterfaces, emfBuilderServiceProxy, props);
++            //String[] serviceInterfaces = new String[]{EntityManagerFactoryBuilder.class.getName()};
++            //context.registerService(serviceInterfaces, emfBuilderServiceProxy, props);
+         } catch (Exception e) {
+             AbstractSessionLog.getLog().finest("EclipseLink OSGi could not register EMF Builder service for " + puName +  e);
+         }
diff --git a/eclipselink-2.3.2-disable_asm_embedded_copy.patch b/eclipselink-2.3.2-disable_asm_embedded_copy.patch
new file mode 100644
index 0000000..3e6b571
--- /dev/null
+++ b/eclipselink-2.3.2-disable_asm_embedded_copy.patch
@@ -0,0 +1,315 @@
+Index: eclipselink-2.3.2/org/eclipse/persistence/dynamic/DynamicClassWriter.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/dynamic/DynamicClassWriter.java
++++ eclipselink-2.3.2/org/eclipse/persistence/dynamic/DynamicClassWriter.java	2012-04-03 12:51:11.520304245 +0200
+@@ -24,39 +24,39 @@
+ import org.eclipse.persistence.internal.dynamic.DynamicEntityImpl;
+ import org.eclipse.persistence.internal.dynamic.DynamicPropertiesManager;
+ import org.eclipse.persistence.internal.helper.Helper;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Type;
+ import static org.eclipse.persistence.internal.dynamic.DynamicPropertiesManager.PROPERTIES_MANAGER_FIELD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.AASTORE;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_ENUM;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_FINAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PRIVATE;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PUBLIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_STATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SUPER;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SYNTHETIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ALOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ANEWARRAY;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ARETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.BIPUSH;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.CHECKCAST;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.DUP;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.GETSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_0;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_1;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_2;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_3;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_4;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ICONST_5;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ILOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESPECIAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKEVIRTUAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.NEW;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.PUTSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.RETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.V1_5;
++import static org.objectweb.asm.Opcodes.AASTORE;
++import static org.objectweb.asm.Opcodes.ACC_ENUM;
++import static org.objectweb.asm.Opcodes.ACC_FINAL;
++import static org.objectweb.asm.Opcodes.ACC_PRIVATE;
++import static org.objectweb.asm.Opcodes.ACC_PUBLIC;
++import static org.objectweb.asm.Opcodes.ACC_STATIC;
++import static org.objectweb.asm.Opcodes.ACC_SUPER;
++import static org.objectweb.asm.Opcodes.ACC_SYNTHETIC;
++import static org.objectweb.asm.Opcodes.ALOAD;
++import static org.objectweb.asm.Opcodes.ANEWARRAY;
++import static org.objectweb.asm.Opcodes.ARETURN;
++import static org.objectweb.asm.Opcodes.BIPUSH;
++import static org.objectweb.asm.Opcodes.CHECKCAST;
++import static org.objectweb.asm.Opcodes.DUP;
++import static org.objectweb.asm.Opcodes.GETSTATIC;
++import static org.objectweb.asm.Opcodes.ICONST_0;
++import static org.objectweb.asm.Opcodes.ICONST_1;
++import static org.objectweb.asm.Opcodes.ICONST_2;
++import static org.objectweb.asm.Opcodes.ICONST_3;
++import static org.objectweb.asm.Opcodes.ICONST_4;
++import static org.objectweb.asm.Opcodes.ICONST_5;
++import static org.objectweb.asm.Opcodes.ILOAD;
++import static org.objectweb.asm.Opcodes.INVOKESPECIAL;
++import static org.objectweb.asm.Opcodes.INVOKESTATIC;
++import static org.objectweb.asm.Opcodes.INVOKEVIRTUAL;
++import static org.objectweb.asm.Opcodes.NEW;
++import static org.objectweb.asm.Opcodes.PUTSTATIC;
++import static org.objectweb.asm.Opcodes.RETURN;
++import static org.objectweb.asm.Opcodes.V1_5;
+ 
+ /**
+  * Write the byte codes of a dynamic entity class. The class writer will create
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/AttributeDetails.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/AttributeDetails.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/AttributeDetails.java	2012-04-03 12:54:16.321297213 +0200
+@@ -12,7 +12,7 @@
+  ******************************************************************************/  
+ package org.eclipse.persistence.internal.jpa.weaving;
+ 
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.Type;
+ 
+ import org.eclipse.persistence.mappings.DatabaseMapping;
+ 
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/ClassWeaver.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/ClassWeaver.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/ClassWeaver.java	2012-04-03 12:58:33.205287439 +0200
+@@ -20,8 +20,8 @@
+ import java.util.*;
+ 
+ import org.eclipse.persistence.internal.helper.Helper;
+-import org.eclipse.persistence.internal.libraries.asm.*;
+-import org.eclipse.persistence.internal.libraries.asm.commons.*;
++import org.objectweb.asm.*;
++import org.objectweb.asm.commons.*;
+ 
+ /**
+  * INTERNAL: Weaves classes to allow them to support EclipseLink indirection.
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/MethodWeaver.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/MethodWeaver.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/MethodWeaver.java	2012-04-03 12:59:25.065285462 +0200
+@@ -14,7 +14,7 @@
+ 
+ //ASM imports
+ import org.eclipse.persistence.internal.descriptors.VirtualAttributeMethodInfo;
+-import org.eclipse.persistence.internal.libraries.asm.*;
++import org.objectweb.asm.*;
+ 
+ /**
+  * Processes all the methods of a class to weave in persistence code such as,
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/PersistenceWeaver.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/PersistenceWeaver.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/PersistenceWeaver.java	2012-04-03 13:00:38.279282674 +0200
+@@ -24,8 +24,8 @@
+ 
+ import org.eclipse.persistence.config.SystemProperties;
+ import org.eclipse.persistence.internal.helper.Helper;
+-import org.eclipse.persistence.internal.libraries.asm.ClassReader;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
++import org.objectweb.asm.ClassReader;
++import org.objectweb.asm.ClassWriter;
+ import org.eclipse.persistence.internal.sessions.AbstractSession;
+ import org.eclipse.persistence.logging.SessionLog;
+ import org.eclipse.persistence.sessions.Session;
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/TransformerFactory.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/TransformerFactory.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/weaving/TransformerFactory.java	2012-04-03 13:02:40.629278019 +0200
+@@ -29,7 +29,7 @@
+ import org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataClass;
+ import org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataField;
+ import org.eclipse.persistence.internal.jpa.metadata.accessors.objects.MetadataMethod;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.Type;
+ import org.eclipse.persistence.internal.sessions.AbstractSession;
+ import org.eclipse.persistence.internal.weaving.PersistenceWeavedChangeTracking;
+ import org.eclipse.persistence.logging.SessionLog;
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataAsmFactory.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataAsmFactory.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataAsmFactory.java	2012-04-03 12:53:07.958299813 +0200
+@@ -26,14 +26,14 @@
+ import org.eclipse.persistence.internal.helper.Helper;
+ import org.eclipse.persistence.internal.jpa.metadata.MetadataDescriptor;
+ import org.eclipse.persistence.internal.jpa.metadata.MetadataLogger;
+-import org.eclipse.persistence.internal.libraries.asm.AnnotationVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Attribute;
+-import org.eclipse.persistence.internal.libraries.asm.ClassReader;
+-import org.eclipse.persistence.internal.libraries.asm.ClassVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.FieldVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
+-import org.eclipse.persistence.internal.libraries.asm.commons.EmptyVisitor;
++import org.objectweb.asm.AnnotationVisitor;
++import org.objectweb.asm.Attribute;
++import org.objectweb.asm.ClassReader;
++import org.objectweb.asm.ClassVisitor;
++import org.objectweb.asm.FieldVisitor;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Type;
++import org.objectweb.asm.commons.EmptyVisitor;
+ 
+ /**
+  * INTERNAL: A metadata factory that uses ASM technology and no reflection
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataClass.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataClass.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/jpa/metadata/accessors/objects/MetadataClass.java	2012-04-03 12:53:32.559298875 +0200
+@@ -32,7 +32,7 @@
+ import java.util.Set;
+ 
+ import org.eclipse.persistence.internal.helper.Helper;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
++import org.objectweb.asm.Opcodes;
+ 
+ /**
+  * INTERNAL:
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/xr/XRClassWriter.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/xr/XRClassWriter.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/xr/XRClassWriter.java	2012-04-03 13:04:10.820274586 +0200
+@@ -17,21 +17,21 @@
+ //EclipseLink imports
+ import org.eclipse.persistence.dynamic.DynamicClassLoader;
+ import org.eclipse.persistence.dynamic.DynamicClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
+ import static org.eclipse.persistence.internal.dynamic.DynamicPropertiesManager.PROPERTIES_MANAGER_FIELD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PUBLIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_STATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SUPER;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ALOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ARETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.DUP;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.GETSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESPECIAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.NEW;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.PUTSTATIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.RETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.V1_5;
++import static org.objectweb.asm.Opcodes.ACC_PUBLIC;
++import static org.objectweb.asm.Opcodes.ACC_STATIC;
++import static org.objectweb.asm.Opcodes.ACC_SUPER;
++import static org.objectweb.asm.Opcodes.ALOAD;
++import static org.objectweb.asm.Opcodes.ARETURN;
++import static org.objectweb.asm.Opcodes.DUP;
++import static org.objectweb.asm.Opcodes.GETSTATIC;
++import static org.objectweb.asm.Opcodes.INVOKESPECIAL;
++import static org.objectweb.asm.Opcodes.NEW;
++import static org.objectweb.asm.Opcodes.PUTSTATIC;
++import static org.objectweb.asm.Opcodes.RETURN;
++import static org.objectweb.asm.Opcodes.V1_5;
+ import static org.eclipse.persistence.internal.xr.XRDynamicClassLoader.COLLECTION_WRAPPER_SUFFIX;
+ 
+ /**
+Index: eclipselink-2.3.2/org/eclipse/persistence/internal/dbws/SOAPResponseClassLoader.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/internal/dbws/SOAPResponseClassLoader.java
++++ eclipselink-2.3.2/org/eclipse/persistence/internal/dbws/SOAPResponseClassLoader.java	2012-04-03 12:51:58.298302464 +0200
+@@ -18,14 +18,14 @@
+ // Java extension imports
+ 
+ // EclipseLink imports
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_PUBLIC;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ACC_SUPER;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.ALOAD;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.INVOKESPECIAL;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.RETURN;
+-import static org.eclipse.persistence.internal.libraries.asm.Opcodes.V1_5;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import static org.objectweb.asm.Opcodes.ACC_PUBLIC;
++import static org.objectweb.asm.Opcodes.ACC_SUPER;
++import static org.objectweb.asm.Opcodes.ALOAD;
++import static org.objectweb.asm.Opcodes.INVOKESPECIAL;
++import static org.objectweb.asm.Opcodes.RETURN;
++import static org.objectweb.asm.Opcodes.V1_5;
+ 
+ /**
+  * <p><b>INTERNAL</b>: A subclass of {@link ClassLoader} that exposes a build method to the hidden
+Index: eclipselink-2.3.2/org/eclipse/persistence/jaxb/compiler/AnnotationsProcessor.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/jaxb/compiler/AnnotationsProcessor.java
++++ eclipselink-2.3.2/org/eclipse/persistence/jaxb/compiler/AnnotationsProcessor.java	2012-04-03 13:13:42.329252838 +0200
+@@ -73,13 +73,13 @@
+ import org.eclipse.persistence.internal.helper.ClassConstants;
+ import org.eclipse.persistence.internal.helper.ConversionManager;
+ import org.eclipse.persistence.internal.jaxb.JaxbClassLoader;
+-import org.eclipse.persistence.internal.libraries.asm.AnnotationVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.FieldVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
+-import org.eclipse.persistence.internal.libraries.asm.Label;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.AnnotationVisitor;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.FieldVisitor;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
++import org.objectweb.asm.Label;
++import org.objectweb.asm.Type;
+ import org.eclipse.persistence.internal.oxm.XMLConversionManager;
+ import org.eclipse.persistence.internal.security.PrivilegedAccessHelper;
+ import org.eclipse.persistence.jaxb.TypeMappingInfo;
+Index: eclipselink-2.3.2/org/eclipse/persistence/jaxb/compiler/MappingsGenerator.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/jaxb/compiler/MappingsGenerator.java
++++ eclipselink-2.3.2/org/eclipse/persistence/jaxb/compiler/MappingsGenerator.java	2012-04-03 13:07:31.082266966 +0200
+@@ -54,10 +54,10 @@
+ import org.eclipse.persistence.internal.jaxb.many.ManyValue;
+ import org.eclipse.persistence.internal.jaxb.many.MapValue;
+ import org.eclipse.persistence.internal.jaxb.many.MapValueAttributeAccessor;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
++import org.objectweb.asm.Type;
+ import org.eclipse.persistence.internal.oxm.XMLConversionManager;
+ import org.eclipse.persistence.internal.queries.ContainerPolicy;
+ import org.eclipse.persistence.internal.security.PrivilegedAccessHelper;
+Index: eclipselink-2.3.2/org/eclipse/persistence/sdo/helper/DynamicClassWriter.java
+===================================================================
+--- eclipselink-2.3.2/org/eclipse/persistence/sdo/helper/DynamicClassWriter.java
++++ eclipselink-2.3.2/org/eclipse/persistence/sdo/helper/DynamicClassWriter.java	2012-04-03 13:10:16.236260681 +0200
+@@ -25,10 +25,10 @@
+ import org.eclipse.persistence.sdo.SDOProperty;
+ import org.eclipse.persistence.sdo.SDOType;
+ import org.eclipse.persistence.sdo.helper.extension.SDOUtil;
+-import org.eclipse.persistence.internal.libraries.asm.ClassWriter;
+-import org.eclipse.persistence.internal.libraries.asm.MethodVisitor;
+-import org.eclipse.persistence.internal.libraries.asm.Opcodes;
+-import org.eclipse.persistence.internal.libraries.asm.Type;
++import org.objectweb.asm.ClassWriter;
++import org.objectweb.asm.MethodVisitor;
++import org.objectweb.asm.Opcodes;
++import org.objectweb.asm.Type;
+ import org.eclipse.persistence.internal.security.PrivilegedAccessHelper;
+ 
+ import commonj.sdo.helper.HelperContext;
diff --git a/eclipselink-2.3.2-jdk7.patch b/eclipselink-2.3.2-jdk7.patch
new file mode 100644
index 0000000..5a31e37
--- /dev/null
+++ b/eclipselink-2.3.2-jdk7.patch
@@ -0,0 +1,24 @@
+--- org/eclipse/persistence/internal/jpa/jdbc/DataSourceImpl.java	2011-06-15 12:35:44.000000000 +0200
++++ org/eclipse/persistence/internal/jpa/jdbc/DataSourceImpl.java-gil	2012-06-01 10:11:07.038478722 +0200
+@@ -13,9 +13,12 @@
+ package org.eclipse.persistence.internal.jpa.jdbc;
+ 
+ import java.io.PrintWriter;
++import java.lang.NullPointerException;
+ import java.sql.Connection;
+ import java.sql.SQLException;
++import java.sql.SQLFeatureNotSupportedException;
+ import java.sql.DriverManager;
++import java.util.logging.Logger;
+ import javax.sql.DataSource;
+ import org.eclipse.persistence.internal.jpa.transaction.TransactionManagerImpl;
+ 
+@@ -154,4 +157,8 @@
+         return false;
+     }
+ 
++    public Logger getParentLogger() throws SQLFeatureNotSupportedException {
++        throw new NullPointerException();
++    }
++
+ }
diff --git a/eclipselink-2.3.2-jpa-pom.patch b/eclipselink-2.3.2-jpa-pom.patch
new file mode 100644
index 0000000..096e672
--- /dev/null
+++ b/eclipselink-2.3.2-jpa-pom.patch
@@ -0,0 +1,68 @@
+--- org.eclipse.persistence.jpa-2.3.2.pom	2011-12-09 18:38:45.000000000 +0100
++++ org.eclipse.persistence.jpa-2.3.2.pom-gil	2012-07-16 13:14:16.587899457 +0200
+@@ -39,7 +39,64 @@
+       <comments>Standard Eclipse Distribution License</comments>
+     </license>
+   </licenses>
+-  <dependencies><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.asm</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.core</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency></dependencies>
++  <dependencies>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-commons</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-tree</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-tree</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-util</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>asm</groupId>
++      <artifactId>asm-xml</artifactId>
++      <version>3.3.1</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++    <dependency>
++      <groupId>org.eclipse.persistence</groupId>
++      <artifactId>org.eclipse.persistence.core</artifactId>
++      <version>2.3.2</version>
++      <type>jar</type>
++      <scope>compile</scope>
++      <optional>false</optional>
++    </dependency>
++  </dependencies>
+ </project>
+ 
+ 
diff --git a/eclipselink-2.3.2.pom b/eclipselink-2.3.2.pom
new file mode 100644
index 0000000..1276143
--- /dev/null
+++ b/eclipselink-2.3.2.pom
@@ -0,0 +1,46 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.eclipse.persistence</groupId>
+  <artifactId>eclipselink</artifactId>
+  <packaging>jar</packaging>
+  <name>EclipseLink (non-OSGi)</name>
+  <description>EclipseLink subversion revision 10461</description>
+  <version>2.3.2</version>
+  <url>http://www.eclipse.org/eclipselink</url>
+  <issueManagement>
+    <system>bugzilla</system>
+    <url>https://bugs.eclipse.org/bugs</url>
+  </issueManagement>
+  <inceptionYear>2007</inceptionYear>
+  <mailingLists>
+    <mailingList>
+      <name>EclipseLink Developer List</name>
+      <post>eclipselink-dev at eclipse.org</post>
+      <archive>http://dev.eclipse.org/mhonarc/lists/eclipselink-dev</archive>
+    </mailingList>
+    <mailingList>
+      <name>EclipseLink User List</name>
+      <post>eclipselink-users at eclipse.org</post>
+      <archive>http://dev.eclipse.org/mhonarc/lists/eclipselink-users</archive>
+    </mailingList>
+  </mailingLists>
+  <licenses>
+    <license>
+      <name>Eclipse Public License v1.0</name>
+      <url>http://www.eclipse.org/legal/epl-v10.html</url>
+      <distribution>repo</distribution>
+      <comments>Standard Eclipse Licence</comments>
+    </license>
+    <license>
+      <name>Eclipse Distribution License v. 1.0</name>
+      <url>http://www.eclipse.org/org/documents/edl-v10.php</url>
+      <distribution>repo</distribution>
+      <comments>Standard Eclipse Distribution License</comments>
+    </license>
+  </licenses>
+  
+</project>
+
+
+
diff --git a/eclipselink.spec b/eclipselink.spec
new file mode 100644
index 0000000..0205967
--- /dev/null
+++ b/eclipselink.spec
@@ -0,0 +1,144 @@
+%global reltag .v20111125-r10461
+%global namedversion %{version}%{?reltag}
+Name:          eclipselink
+# for the next release is require hibernate-jpa-2.1-api unavailable at the moment
+Version:       2.3.2
+Release:       1%{?dist}
+Summary:       Eclipse Persistence Services Project
+Group:         Development/Libraries
+License:       EPL and BSD
+Url:           http://www.eclipse.org/eclipselink/
+Source0:       http://www.mirrorservice.org/sites/download.eclipse.org/eclipseMirror/rt/%{name}/releases/%{version}/%{name}-src-%{namedversion}.zip
+Source1:       %{name}-2.1.3-build.properties
+Source2:       %{name}-%{version}-06-build.xml
+Source3:       http://maven.eclipse.org/nexus/content/repositories/build/org/eclipse/persistence/%{name}/%{version}/%{name}-%{version}.pom
+Source4:       http://maven.eclipse.org/nexus/content/repositories/build/org/eclipse/persistence/org.eclipse.persistence.core/%{version}/org.eclipse.persistence.core-%{version}.pom
+Source5:       http://maven.eclipse.org/nexus/content/repositories/build/org/eclipse/persistence/org.eclipse.persistence.jpa/%{version}/org.eclipse.persistence.jpa-%{version}.pom
+
+# use system libraries
+Patch0:        %{name}-2.2.1-disable_antlr3_embedded_copy.patch
+Patch1:        %{name}-%{version}-disable_asm_embedded_copy.patch
+# change 
+#    org.eclipse.persistence org.eclipse.persistence.asm in asm asm (and requires asm libraries)
+#    org.eclipse.persistence org.eclipse.persistence.antlr in org.antlr antlr (and requires antlr3 libraries)
+Patch2:        %{name}-%{version}-core-pom.patch
+Patch3:        %{name}-%{version}-jpa-pom.patch
+
+Patch4:        %{name}-%{version}-jdk7.patch
+# the org.osgi.enterprise license is not free for Fedora
+# this patch remove org.osgi.enterprise support only
+Patch5:        %{name}-%{version}-disable-non-free-osgi-enterprise.patch
+
+BuildRequires: java-devel
+BuildRequires: jpackage-utils
+
+BuildRequires: ant
+BuildRequires: antlr3-java
+BuildRequires: antlr3-tool
+BuildRequires: felix-framework
+BuildRequires: geronimo-jms
+BuildRequires: geronimo-validation
+BuildRequires: hibernate-jpa-2.0-api
+BuildRequires: javamail
+BuildRequires: jboss-connector-1.6-api
+BuildRequires: jboss-transaction-1.1-api
+BuildRequires: objectweb-asm
+BuildRequires: tomcat-servlet-3.0-api
+BuildRequires: tuscany-sdo-java
+BuildRequires: wsdl4j
+
+Requires:      antlr3-tool
+Requires:      objectweb-asm
+
+Requires:      java
+Requires:      jpackage-utils
+BuildArch:     noarch
+
+%description
+Eclipse Persistence Services Project, more commonly known as EclipseLink,
+is a Java comprehensive persistence framework delivering a set of persistence
+services based around standards. This lets you rapidly build applications
+that combine the best aspects of object technology and the specific data
+source.
+
+EclipseLink was started by a donation of the full source code and
+test suites of Oracle's TopLink product.
+
+EclipseLink's services currently include object-relational with JPA,
+object-XML binding in MOXy (with support for JAXB), a Service Data Objects
+(SDO) implementation and support for another technologies like: Database Web
+Services (DWS), XML-Relational (XRM) and Non-Relational (EIS via JCA).
+
+%package javadoc
+Group:         Documentation
+Summary:       Javadoc for %{name}
+Requires:      jpackage-utils
+
+%description javadoc
+This package contains javadoc for %{name}.
+
+%prep
+%setup -q -c
+%patch0 -p1
+%patch1 -p1
+
+cp -p %{SOURCE1} build.properties
+cp -p %{SOURCE2} build.xml
+
+cp -p %{SOURCE4} .
+cp -p %{SOURCE5} .
+
+%patch2 -p0
+%patch3 -p0
+%patch4 -p0
+%patch5 -p0
+
+# fix non ASCII chars
+for s in org/eclipse/persistence/jpa/internal/jpql/GrammarValidator.java\
+  org/eclipse/persistence/platform/database/MaxDBPlatform.java\
+  org/eclipse/persistence/jpa/internal/jpql/SemanticValidator.java;do
+  native2ascii -encoding UTF8 ${s} ${s}
+done
+
+%build
+
+ant
+
+%install
+
+mkdir -p %{buildroot}%{_javadir}/%{name}
+install -m 644 target/%{name}.jar \
+  %{buildroot}%{_javadir}/%{name}/%{name}.jar
+
+(
+  cd %{buildroot}%{_javadir}/%{name}
+  ln -sf %{name}.jar org.eclipse.persistence.core.jar
+  ln -sf %{name}.jar org.eclipse.persistence.jpa.jar
+)
+
+mkdir -p %{buildroot}%{_mavenpomdir}
+install -pm 644 %{SOURCE3} %{buildroot}%{_mavenpomdir}/JPP.%{name}-%{name}.pom
+%add_maven_depmap JPP.%{name}-%{name}.pom %{name}/%{name}.jar
+
+install -pm 644 org.eclipse.persistence.core-%{version}.pom %{buildroot}%{_mavenpomdir}/JPP.%{name}-org.eclipse.persistence.core.pom
+%add_maven_depmap JPP.%{name}-org.eclipse.persistence.core.pom %{name}/org.eclipse.persistence.core.jar
+
+install -pm 644 org.eclipse.persistence.jpa-%{version}.pom %{buildroot}%{_mavenpomdir}/JPP.%{name}-org.eclipse.persistence.jpa.pom
+%add_maven_depmap JPP.%{name}-org.eclipse.persistence.jpa.pom %{name}/org.eclipse.persistence.jpa.jar
+
+mkdir -p %{buildroot}%{_javadocdir}/%{name}
+cp -pr target/api/* %{buildroot}%{_javadocdir}/%{name}
+
+%files
+%{_javadir}/%{name}
+%{_mavenpomdir}/JPP.%{name}-*.pom
+%{_mavendepmapfragdir}/%{name}
+%doc about.html license.html readme.html
+
+%files javadoc
+%{_javadocdir}/%{name}
+%doc license.html
+
+%changelog
+* Tue Apr 03 2012 gil cattaneo <puntogil at libero.it> 2.3.2-1
+- initial rpm
\ No newline at end of file
diff --git a/org.eclipse.persistence.core-2.3.2.pom b/org.eclipse.persistence.core-2.3.2.pom
new file mode 100644
index 0000000..0ea7bd6
--- /dev/null
+++ b/org.eclipse.persistence.core-2.3.2.pom
@@ -0,0 +1,46 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.eclipse.persistence</groupId>
+  <artifactId>org.eclipse.persistence.core</artifactId>
+  <packaging>jar</packaging>
+  <name>EclipseLink Core</name>
+  <description>EclipseLink subversion revision 10461</description>
+  <version>2.3.2</version>
+  <url>http://www.eclipse.org/eclipselink</url>
+  <issueManagement>
+    <system>bugzilla</system>
+    <url>https://bugs.eclipse.org/bugs</url>
+  </issueManagement>
+  <inceptionYear>2007</inceptionYear>
+  <mailingLists>
+    <mailingList>
+      <name>EclipseLink Developer List</name>
+      <post>eclipselink-dev at eclipse.org</post>
+      <archive>http://dev.eclipse.org/mhonarc/lists/eclipselink-dev</archive>
+    </mailingList>
+    <mailingList>
+      <name>EclipseLink User List</name>
+      <post>eclipselink-users at eclipse.org</post>
+      <archive>http://dev.eclipse.org/mhonarc/lists/eclipselink-users</archive>
+    </mailingList>
+  </mailingLists>
+  <licenses>
+    <license>
+      <name>Eclipse Public License v1.0</name>
+      <url>http://www.eclipse.org/legal/epl-v10.html</url>
+      <distribution>repo</distribution>
+      <comments>Standard Eclipse Licence</comments>
+    </license>
+    <license>
+      <name>Eclipse Distribution License v. 1.0</name>
+      <url>http://www.eclipse.org/org/documents/edl-v10.php</url>
+      <distribution>repo</distribution>
+      <comments>Standard Eclipse Distribution License</comments>
+    </license>
+  </licenses>
+  <dependencies><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.asm</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.antlr</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency></dependencies>
+</project>
+
+
+
diff --git a/org.eclipse.persistence.jpa-2.3.2.pom b/org.eclipse.persistence.jpa-2.3.2.pom
new file mode 100644
index 0000000..d4f4d86
--- /dev/null
+++ b/org.eclipse.persistence.jpa-2.3.2.pom
@@ -0,0 +1,46 @@
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+  <modelVersion>4.0.0</modelVersion>
+  <groupId>org.eclipse.persistence</groupId>
+  <artifactId>org.eclipse.persistence.jpa</artifactId>
+  <packaging>jar</packaging>
+  <name>EclipseLink JPA</name>
+  <description>EclipseLink subversion revision 10461</description>
+  <version>2.3.2</version>
+  <url>http://www.eclipse.org/eclipselink</url>
+  <issueManagement>
+    <system>bugzilla</system>
+    <url>https://bugs.eclipse.org/bugs</url>
+  </issueManagement>
+  <inceptionYear>2007</inceptionYear>
+  <mailingLists>
+    <mailingList>
+      <name>EclipseLink Developer List</name>
+      <post>eclipselink-dev at eclipse.org</post>
+      <archive>http://dev.eclipse.org/mhonarc/lists/eclipselink-dev</archive>
+    </mailingList>
+    <mailingList>
+      <name>EclipseLink User List</name>
+      <post>eclipselink-users at eclipse.org</post>
+      <archive>http://dev.eclipse.org/mhonarc/lists/eclipselink-users</archive>
+    </mailingList>
+  </mailingLists>
+  <licenses>
+    <license>
+      <name>Eclipse Public License v1.0</name>
+      <url>http://www.eclipse.org/legal/epl-v10.html</url>
+      <distribution>repo</distribution>
+      <comments>Standard Eclipse Licence</comments>
+    </license>
+    <license>
+      <name>Eclipse Distribution License v. 1.0</name>
+      <url>http://www.eclipse.org/org/documents/edl-v10.php</url>
+      <distribution>repo</distribution>
+      <comments>Standard Eclipse Distribution License</comments>
+    </license>
+  </licenses>
+  <dependencies><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.asm</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency><dependency><groupId>org.eclipse.persistence</groupId><artifactId>org.eclipse.persistence.core</artifactId><version>2.3.2</version><type>jar</type><scope>compile</scope><optional>false</optional></dependency></dependencies>
+</project>
+
+
+
diff --git a/sources b/sources
index e69de29..6a7e9d3 100644
--- a/sources
+++ b/sources
@@ -0,0 +1 @@
+f741f3a4a4d9473ad28e8185c140c5be  eclipselink-src-2.3.2.v20111125-r10461.zip


More information about the scm-commits mailing list