[jboss-svn-commits] JBL Code SVN: r14296 - in labs/jbossrules/trunk/drools-compiler/src: main/resources/org/drools/lang and 2 other directories.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Thu Aug 16 03:20:31 EDT 2007


Author: michael.neale at jboss.com
Date: 2007-08-16 03:20:31 -0400 (Thu, 16 Aug 2007)
New Revision: 14296

Modified:
   labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLLexer.java
   labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLParser.java
   labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g
   labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java
   labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/package_attributes.drl
Log:
JBRULES-1036

Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLLexer.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLLexer.java	2007-08-16 07:03:30 UTC (rev 14295)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLLexer.java	2007-08-16 07:20:31 UTC (rev 14296)
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g 2007-08-01 10:32:37
+// $ANTLR 3.0 /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g 2007-08-16 17:08:34
 
 	package org.drools.lang;
 
@@ -10,98 +10,98 @@
 import java.util.Map;
 import java.util.HashMap;
 public class DRLLexer extends Lexer {
-    public static final int COMMA=12;
-    public static final int EXISTS=39;
-    public static final int T79=79;
-    public static final int AUTO_FOCUS=27;
-    public static final int END=15;
-    public static final int HexDigit=64;
-    public static final int FORALL=42;
-    public static final int TEMPLATE=16;
-    public static final int MISC=70;
-    public static final int FLOAT=54;
+    public static final int T75=75;
+    public static final int PACKAGE=4;
+    public static final int FUNCTION=6;
+    public static final int ACCUMULATE=43;
+    public static final int T76=76;
+    public static final int RIGHT_SQUARE=59;
+    public static final int T73=73;
     public static final int T74=74;
-    public static final int QUERY=14;
-    public static final int THEN=60;
-    public static final int RULE=17;
-    public static final int INIT=44;
-    public static final int IMPORT=6;
-    public static final int PACKAGE=5;
-    public static final int DATE_EFFECTIVE=19;
-    public static final int OR=34;
-    public static final int DOT=9;
-    public static final int DOUBLE_PIPE=35;
-    public static final int AND=36;
-    public static final int FUNCTION=7;
-    public static final int GLOBAL=10;
-    public static final int EscapeSequence=63;
-    public static final int DIALECT=32;
-    public static final int INT=25;
-    public static final int LOCK_ON_ACTIVE=33;
-    public static final int DATE_EXPIRES=21;
-    public static final int LEFT_SQUARE=58;
-    public static final int CONTAINS=49;
-    public static final int SH_STYLE_SINGLE_LINE_COMMENT=67;
-    public static final int T77=77;
-    public static final int ATTRIBUTES=4;
-    public static final int LEFT_CURLY=56;
-    public static final int RESULT=47;
-    public static final int ID=8;
-    public static final int FROM=38;
-    public static final int LEFT_PAREN=11;
+    public static final int T79=79;
     public static final int ACTIVATION_GROUP=28;
-    public static final int DOUBLE_AMPER=37;
+    public static final int T77=77;
+    public static final int ATTRIBUTES=18;
     public static final int RIGHT_CURLY=57;
-    public static final int BOOL=23;
-    public static final int EXCLUDES=50;
-    public static final int T73=73;
-    public static final int MEMBEROF=52;
-    public static final int WHEN=18;
     public static final int T78=78;
-    public static final int RULEFLOW_GROUP=29;
-    public static final int WS=62;
-    public static final int STRING=20;
+    public static final int DIALECT=32;
+    public static final int CONTAINS=49;
+    public static final int NO_LOOP=26;
+    public static final int LOCK_ON_ACTIVE=33;
+    public static final int MEMBEROF=52;
+    public static final int AGENDA_GROUP=30;
+    public static final int FLOAT=54;
+    public static final int NOT=40;
+    public static final int SH_STYLE_SINGLE_LINE_COMMENT=67;
+    public static final int ID=7;
+    public static final int AND=36;
+    public static final int EOF=-1;
+    public static final int HexDigit=64;
+    public static final int DATE_EFFECTIVE=19;
+    public static final int T72=72;
     public static final int ACTION=45;
     public static final int T71=71;
-    public static final int T72=72;
-    public static final int COLLECT=48;
-    public static final int T76=76;
-    public static final int REVERSE=46;
+    public static final int DOUBLE_PIPE=35;
+    public static final int RIGHT_PAREN=12;
+    public static final int IMPORT=5;
+    public static final int EOL=61;
+    public static final int DOUBLE_AMPER=37;
+    public static final int THEN=60;
     public static final int IN=53;
-    public static final int T80=80;
-    public static final int ACCUMULATE=43;
-    public static final int NO_LOOP=26;
-    public static final int UnicodeEscape=65;
-    public static final int T75=75;
-    public static final int DURATION=31;
-    public static final int EVAL=41;
     public static final int MATCHES=51;
-    public static final int EOF=-1;
-    public static final int AGENDA_GROUP=30;
+    public static final int COMMA=11;
+    public static final int ENABLED=22;
+    public static final int EXISTS=39;
+    public static final int DOT=8;
+    public static final int RULE=16;
+    public static final int EXCLUDES=50;
+    public static final int AUTO_FOCUS=27;
     public static final int NULL=55;
-    public static final int EOL=61;
-    public static final int Tokens=81;
+    public static final int BOOL=23;
+    public static final int FORALL=42;
+    public static final int RULEFLOW_GROUP=29;
     public static final int SALIENCE=24;
-    public static final int OctalEscape=66;
+    public static final int RESULT=47;
+    public static final int INT=25;
+    public static final int Tokens=81;
     public static final int MULTI_LINE_COMMENT=69;
-    public static final int NOT=40;
-    public static final int RIGHT_PAREN=13;
-    public static final int ENABLED=22;
-    public static final int RIGHT_SQUARE=59;
+    public static final int DURATION=31;
+    public static final int WS=62;
+    public static final int EVAL=41;
+    public static final int TEMPLATE=15;
+    public static final int WHEN=17;
+    public static final int UnicodeEscape=65;
+    public static final int LEFT_CURLY=56;
+    public static final int OR=34;
+    public static final int LEFT_PAREN=10;
+    public static final int QUERY=13;
+    public static final int FROM=38;
+    public static final int GLOBAL=9;
+    public static final int END=14;
+    public static final int REVERSE=46;
+    public static final int MISC=70;
+    public static final int T80=80;
+    public static final int COLLECT=48;
+    public static final int INIT=44;
+    public static final int LEFT_SQUARE=58;
+    public static final int EscapeSequence=63;
+    public static final int OctalEscape=66;
     public static final int C_STYLE_SINGLE_LINE_COMMENT=68;
+    public static final int DATE_EXPIRES=21;
+    public static final int STRING=20;
     public DRLLexer() {;} 
     public DRLLexer(CharStream input) {
         super(input);
         ruleMemo = new HashMap[79+1];
      }
-    public String getGrammarFileName() { return "/home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g"; }
+    public String getGrammarFileName() { return "/home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g"; }
 
     // $ANTLR start T71
     public final void mT71() throws RecognitionException {
         try {
             int _type = T71;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:6:7: ( ';' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:6:7: ';'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:6:5: ( ';' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:6:7: ';'
             {
             match(';'); if (failed) return ;
 
@@ -118,11 +118,12 @@
     public final void mT72() throws RecognitionException {
         try {
             int _type = T72;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:7:7: ( ':' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:7:7: ':'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:7:5: ( '.*' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:7:7: '.*'
             {
-            match(':'); if (failed) return ;
+            match(".*"); if (failed) return ;
 
+
             }
 
             this.type = _type;
@@ -136,12 +137,11 @@
     public final void mT73() throws RecognitionException {
         try {
             int _type = T73;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:8:7: ( '.*' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:8:7: '.*'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:8:5: ( ':' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:8:7: ':'
             {
-            match(".*"); if (failed) return ;
+            match(':'); if (failed) return ;
 
-
             }
 
             this.type = _type;
@@ -155,8 +155,8 @@
     public final void mT74() throws RecognitionException {
         try {
             int _type = T74;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:9:7: ( '->' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:9:7: '->'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:9:5: ( '->' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:9:7: '->'
             {
             match("->"); if (failed) return ;
 
@@ -174,8 +174,8 @@
     public final void mT75() throws RecognitionException {
         try {
             int _type = T75;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:10:7: ( '==' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:10:7: '=='
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:10:5: ( '==' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:10:7: '=='
             {
             match("=="); if (failed) return ;
 
@@ -193,8 +193,8 @@
     public final void mT76() throws RecognitionException {
         try {
             int _type = T76;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:11:7: ( '>' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:11:7: '>'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:11:5: ( '>' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:11:7: '>'
             {
             match('>'); if (failed) return ;
 
@@ -211,8 +211,8 @@
     public final void mT77() throws RecognitionException {
         try {
             int _type = T77;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:12:7: ( '>=' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:12:7: '>='
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:12:5: ( '>=' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:12:7: '>='
             {
             match(">="); if (failed) return ;
 
@@ -230,8 +230,8 @@
     public final void mT78() throws RecognitionException {
         try {
             int _type = T78;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:13:7: ( '<' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:13:7: '<'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:13:5: ( '<' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:13:7: '<'
             {
             match('<'); if (failed) return ;
 
@@ -248,8 +248,8 @@
     public final void mT79() throws RecognitionException {
         try {
             int _type = T79;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:14:7: ( '<=' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:14:7: '<='
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:14:5: ( '<=' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:14:7: '<='
             {
             match("<="); if (failed) return ;
 
@@ -267,8 +267,8 @@
     public final void mT80() throws RecognitionException {
         try {
             int _type = T80;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:15:7: ( '!=' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:15:7: '!='
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:15:5: ( '!=' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:15:7: '!='
             {
             match("!="); if (failed) return ;
 
@@ -286,10 +286,10 @@
     public final void mWS() throws RecognitionException {
         try {
             int _type = WS;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1648:17: ( ( ' ' | '\\t' | '\\f' | EOL )+ )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1648:17: ( ' ' | '\\t' | '\\f' | EOL )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1640:9: ( ( ' ' | '\\t' | '\\f' | EOL )+ )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1640:17: ( ' ' | '\\t' | '\\f' | EOL )+
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1648:17: ( ' ' | '\\t' | '\\f' | EOL )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1640:17: ( ' ' | '\\t' | '\\f' | EOL )+
             int cnt1=0;
             loop1:
             do {
@@ -321,28 +321,28 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1648:19: ' '
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1640:19: ' '
             	    {
             	    match(' '); if (failed) return ;
 
             	    }
             	    break;
             	case 2 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1649:19: '\\t'
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1641:19: '\\t'
             	    {
             	    match('\t'); if (failed) return ;
 
             	    }
             	    break;
             	case 3 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1650:19: '\\f'
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1642:19: '\\f'
             	    {
             	    match('\f'); if (failed) return ;
 
             	    }
             	    break;
             	case 4 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1651:19: EOL
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1643:19: EOL
             	    {
             	    mEOL(); if (failed) return ;
 
@@ -375,10 +375,10 @@
     // $ANTLR start EOL
     public final void mEOL() throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1658:6: ( ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1658:6: ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1649:6: ( ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1650:6: ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' )
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1658:6: ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1650:6: ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' )
             int alt2=3;
             int LA2_0 = input.LA(1);
 
@@ -397,13 +397,13 @@
             else {
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1658:6: ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' )", 2, 0, input);
+                    new NoViableAltException("1650:6: ( ( '\\r\\n' )=> '\\r\\n' | '\\r' | '\\n' )", 2, 0, input);
 
                 throw nvae;
             }
             switch (alt2) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1658:14: ( '\\r\\n' )=> '\\r\\n'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1650:14: ( '\\r\\n' )=> '\\r\\n'
                     {
                     match("\r\n"); if (failed) return ;
 
@@ -411,14 +411,14 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1659:25: '\\r'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1651:25: '\\r'
                     {
                     match('\r'); if (failed) return ;
 
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1660:25: '\\n'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1652:25: '\\n'
                     {
                     match('\n'); if (failed) return ;
 
@@ -440,10 +440,10 @@
     public final void mINT() throws RecognitionException {
         try {
             int _type = INT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:4: ( ( '-' )? ( '0' .. '9' )+ )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:4: ( '-' )? ( '0' .. '9' )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1657:2: ( ( '-' )? ( '0' .. '9' )+ )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1657:4: ( '-' )? ( '0' .. '9' )+
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:4: ( '-' )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1657:4: ( '-' )?
             int alt3=2;
             int LA3_0 = input.LA(1);
 
@@ -452,7 +452,7 @@
             }
             switch (alt3) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:5: '-'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1657:5: '-'
                     {
                     match('-'); if (failed) return ;
 
@@ -461,7 +461,7 @@
 
             }
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:10: ( '0' .. '9' )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1657:10: ( '0' .. '9' )+
             int cnt4=0;
             loop4:
             do {
@@ -475,7 +475,7 @@
 
                 switch (alt4) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:11: '0' .. '9'
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1657:11: '0' .. '9'
             	    {
             	    matchRange('0','9'); if (failed) return ;
 
@@ -506,10 +506,10 @@
     public final void mFLOAT() throws RecognitionException {
         try {
             int _type = FLOAT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:4: ( ( '-' )? ( '0' .. '9' )+ '.' ( '0' .. '9' )+ )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:4: ( '-' )? ( '0' .. '9' )+ '.' ( '0' .. '9' )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:2: ( ( '-' )? ( '0' .. '9' )+ '.' ( '0' .. '9' )+ )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:4: ( '-' )? ( '0' .. '9' )+ '.' ( '0' .. '9' )+
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:4: ( '-' )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:4: ( '-' )?
             int alt5=2;
             int LA5_0 = input.LA(1);
 
@@ -518,7 +518,7 @@
             }
             switch (alt5) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:5: '-'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:5: '-'
                     {
                     match('-'); if (failed) return ;
 
@@ -527,7 +527,7 @@
 
             }
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:10: ( '0' .. '9' )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:10: ( '0' .. '9' )+
             int cnt6=0;
             loop6:
             do {
@@ -541,7 +541,7 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:11: '0' .. '9'
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:11: '0' .. '9'
             	    {
             	    matchRange('0','9'); if (failed) return ;
 
@@ -559,7 +559,7 @@
             } while (true);
 
             match('.'); if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:26: ( '0' .. '9' )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:26: ( '0' .. '9' )+
             int cnt7=0;
             loop7:
             do {
@@ -573,7 +573,7 @@
 
                 switch (alt7) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1669:27: '0' .. '9'
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1661:27: '0' .. '9'
             	    {
             	    matchRange('0','9'); if (failed) return ;
 
@@ -604,7 +604,7 @@
     public final void mSTRING() throws RecognitionException {
         try {
             int _type = STRING;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1673:8: ( ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' ) | ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:5: ( ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' ) | ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' ) )
             int alt10=2;
             int LA10_0 = input.LA(1);
 
@@ -617,19 +617,19 @@
             else {
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1672:1: STRING : ( ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' ) | ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' ) );", 10, 0, input);
+                    new NoViableAltException("1664:1: STRING : ( ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' ) | ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' ) );", 10, 0, input);
 
                 throw nvae;
             }
             switch (alt10) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1673:8: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:8: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1673:8: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1673:9: '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:8: ( '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:9: '\"' ( EscapeSequence | ~ ( '\\\\' | '\"' ) )* '\"'
                     {
                     match('\"'); if (failed) return ;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1673:13: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:13: ( EscapeSequence | ~ ( '\\\\' | '\"' ) )*
                     loop8:
                     do {
                         int alt8=3;
@@ -645,14 +645,14 @@
 
                         switch (alt8) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1673:15: EscapeSequence
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:15: EscapeSequence
                     	    {
                     	    mEscapeSequence(); if (failed) return ;
 
                     	    }
                     	    break;
                     	case 2 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1673:32: ~ ( '\\\\' | '\"' )
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1665:32: ~ ( '\\\\' | '\"' )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='!')||(input.LA(1)>='#' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
                     	        input.consume();
@@ -682,13 +682,13 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:8: ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1666:8: ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' )
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:8: ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:9: '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\''
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1666:8: ( '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\'' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1666:9: '\\'' ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )* '\\''
                     {
                     match('\''); if (failed) return ;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:14: ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )*
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1666:14: ( EscapeSequence | ~ ( '\\\\' | '\\'' ) )*
                     loop9:
                     do {
                         int alt9=3;
@@ -704,14 +704,14 @@
 
                         switch (alt9) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:16: EscapeSequence
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1666:16: EscapeSequence
                     	    {
                     	    mEscapeSequence(); if (failed) return ;
 
                     	    }
                     	    break;
                     	case 2 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:33: ~ ( '\\\\' | '\\'' )
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1666:33: ~ ( '\\\\' | '\\'' )
                     	    {
                     	    if ( (input.LA(1)>='\u0000' && input.LA(1)<='&')||(input.LA(1)>='(' && input.LA(1)<='[')||(input.LA(1)>=']' && input.LA(1)<='\uFFFE') ) {
                     	        input.consume();
@@ -752,8 +752,8 @@
     // $ANTLR start HexDigit
     public final void mHexDigit() throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1678:12: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1678:12: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1670:10: ( ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1670:12: ( '0' .. '9' | 'a' .. 'f' | 'A' .. 'F' )
             {
             if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='F')||(input.LA(1)>='a' && input.LA(1)<='f') ) {
                 input.consume();
@@ -778,7 +778,7 @@
     // $ANTLR start EscapeSequence
     public final void mEscapeSequence() throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1682:9: ( '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' ) | UnicodeEscape | OctalEscape )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:5: ( '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' ) | UnicodeEscape | OctalEscape )
             int alt11=3;
             int LA11_0 = input.LA(1);
 
@@ -850,7 +850,7 @@
                 default:
                     if (backtracking>0) {failed=true; return ;}
                     NoViableAltException nvae =
-                        new NoViableAltException("1680:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' ) | UnicodeEscape | OctalEscape );", 11, 1, input);
+                        new NoViableAltException("1672:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' ) | UnicodeEscape | OctalEscape );", 11, 1, input);
 
                     throw nvae;
                 }
@@ -859,13 +859,13 @@
             else {
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1680:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' ) | UnicodeEscape | OctalEscape );", 11, 0, input);
+                    new NoViableAltException("1672:1: fragment EscapeSequence : ( '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' ) | UnicodeEscape | OctalEscape );", 11, 0, input);
 
                 throw nvae;
             }
             switch (alt11) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1682:9: '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1674:9: '\\\\' ( 'b' | 'B' | 't' | 'n' | 'f' | 'r' | '\\\"' | '\\'' | '\\\\' | '.' | 'o' | 'x' | 'a' | 'e' | 'c' | 'd' | 'D' | 's' | 'S' | 'w' | 'W' | 'p' | 'A' | 'G' | 'Z' | 'z' | 'Q' | 'E' | '*' | '[' | ']' | '(' | ')' | '$' | '^' | '{' | '}' | '?' | '+' | '-' | '&' | '|' )
                     {
                     match('\\'); if (failed) return ;
                     if ( input.LA(1)=='\"'||input.LA(1)=='$'||(input.LA(1)>='&' && input.LA(1)<='+')||(input.LA(1)>='-' && input.LA(1)<='.')||input.LA(1)=='?'||(input.LA(1)>='A' && input.LA(1)<='B')||(input.LA(1)>='D' && input.LA(1)<='E')||input.LA(1)=='G'||input.LA(1)=='Q'||input.LA(1)=='S'||input.LA(1)=='W'||(input.LA(1)>='Z' && input.LA(1)<='^')||(input.LA(1)>='a' && input.LA(1)<='f')||(input.LA(1)>='n' && input.LA(1)<='p')||(input.LA(1)>='r' && input.LA(1)<='t')||(input.LA(1)>='w' && input.LA(1)<='x')||(input.LA(1)>='z' && input.LA(1)<='}') ) {
@@ -883,14 +883,14 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1686:9: UnicodeEscape
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1678:9: UnicodeEscape
                     {
                     mUnicodeEscape(); if (failed) return ;
 
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1687:9: OctalEscape
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1679:9: OctalEscape
                     {
                     mOctalEscape(); if (failed) return ;
 
@@ -907,7 +907,7 @@
     // $ANTLR start OctalEscape
     public final void mOctalEscape() throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:9: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:5: ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) )
             int alt12=3;
             int LA12_0 = input.LA(1);
 
@@ -941,7 +941,7 @@
                 else {
                     if (backtracking>0) {failed=true; return ;}
                     NoViableAltException nvae =
-                        new NoViableAltException("1690:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 12, 1, input);
+                        new NoViableAltException("1682:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 12, 1, input);
 
                     throw nvae;
                 }
@@ -949,31 +949,31 @@
             else {
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1690:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 12, 0, input);
+                    new NoViableAltException("1682:1: fragment OctalEscape : ( '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) ( '0' .. '7' ) | '\\\\' ( '0' .. '7' ) );", 12, 0, input);
 
                 throw nvae;
             }
             switch (alt12) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:9: '\\\\' ( '0' .. '3' ) ( '0' .. '7' ) ( '0' .. '7' )
                     {
                     match('\\'); if (failed) return ;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:14: ( '0' .. '3' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:15: '0' .. '3'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:14: ( '0' .. '3' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:15: '0' .. '3'
                     {
                     matchRange('0','3'); if (failed) return ;
 
                     }
 
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:25: ( '0' .. '7' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:26: '0' .. '7'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:25: ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:26: '0' .. '7'
                     {
                     matchRange('0','7'); if (failed) return ;
 
                     }
 
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:36: ( '0' .. '7' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1692:37: '0' .. '7'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:36: ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1684:37: '0' .. '7'
                     {
                     matchRange('0','7'); if (failed) return ;
 
@@ -983,18 +983,18 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1693:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1685:9: '\\\\' ( '0' .. '7' ) ( '0' .. '7' )
                     {
                     match('\\'); if (failed) return ;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1693:14: ( '0' .. '7' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1693:15: '0' .. '7'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1685:14: ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1685:15: '0' .. '7'
                     {
                     matchRange('0','7'); if (failed) return ;
 
                     }
 
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1693:25: ( '0' .. '7' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1693:26: '0' .. '7'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1685:25: ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1685:26: '0' .. '7'
                     {
                     matchRange('0','7'); if (failed) return ;
 
@@ -1004,11 +1004,11 @@
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1694:9: '\\\\' ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1686:9: '\\\\' ( '0' .. '7' )
                     {
                     match('\\'); if (failed) return ;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1694:14: ( '0' .. '7' )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1694:15: '0' .. '7'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1686:14: ( '0' .. '7' )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1686:15: '0' .. '7'
                     {
                     matchRange('0','7'); if (failed) return ;
 
@@ -1028,8 +1028,8 @@
     // $ANTLR start UnicodeEscape
     public final void mUnicodeEscape() throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1699:9: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1699:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1691:5: ( '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1691:9: '\\\\' 'u' HexDigit HexDigit HexDigit HexDigit
             {
             match('\\'); if (failed) return ;
             match('u'); if (failed) return ;
@@ -1050,10 +1050,10 @@
     public final void mBOOL() throws RecognitionException {
         try {
             int _type = BOOL;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1703:4: ( ( 'true' | 'false' ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1703:4: ( 'true' | 'false' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1695:2: ( ( 'true' | 'false' ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1695:4: ( 'true' | 'false' )
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1703:4: ( 'true' | 'false' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1695:4: ( 'true' | 'false' )
             int alt13=2;
             int LA13_0 = input.LA(1);
 
@@ -1066,13 +1066,13 @@
             else {
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1703:4: ( 'true' | 'false' )", 13, 0, input);
+                    new NoViableAltException("1695:4: ( 'true' | 'false' )", 13, 0, input);
 
                 throw nvae;
             }
             switch (alt13) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1703:5: 'true'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1695:5: 'true'
                     {
                     match("true"); if (failed) return ;
 
@@ -1080,7 +1080,7 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1703:12: 'false'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1695:12: 'false'
                     {
                     match("false"); if (failed) return ;
 
@@ -1104,8 +1104,8 @@
     public final void mPACKAGE() throws RecognitionException {
         try {
             int _type = PACKAGE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1706:11: ( 'package' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1706:11: 'package'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1698:9: ( 'package' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1698:11: 'package'
             {
             match("package"); if (failed) return ;
 
@@ -1123,8 +1123,8 @@
     public final void mIMPORT() throws RecognitionException {
         try {
             int _type = IMPORT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1708:10: ( 'import' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1708:10: 'import'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1700:8: ( 'import' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1700:10: 'import'
             {
             match("import"); if (failed) return ;
 
@@ -1142,8 +1142,8 @@
     public final void mFUNCTION() throws RecognitionException {
         try {
             int _type = FUNCTION;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1710:12: ( 'function' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1710:12: 'function'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1702:10: ( 'function' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1702:12: 'function'
             {
             match("function"); if (failed) return ;
 
@@ -1161,8 +1161,8 @@
     public final void mGLOBAL() throws RecognitionException {
         try {
             int _type = GLOBAL;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1712:10: ( 'global' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1712:10: 'global'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1704:8: ( 'global' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1704:10: 'global'
             {
             match("global"); if (failed) return ;
 
@@ -1180,8 +1180,8 @@
     public final void mRULE() throws RecognitionException {
         try {
             int _type = RULE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1714:11: ( 'rule' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1714:11: 'rule'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1706:9: ( 'rule' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1706:11: 'rule'
             {
             match("rule"); if (failed) return ;
 
@@ -1199,8 +1199,8 @@
     public final void mQUERY() throws RecognitionException {
         try {
             int _type = QUERY;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1716:9: ( 'query' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1716:9: 'query'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1708:7: ( 'query' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1708:9: 'query'
             {
             match("query"); if (failed) return ;
 
@@ -1218,8 +1218,8 @@
     public final void mTEMPLATE() throws RecognitionException {
         try {
             int _type = TEMPLATE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1718:12: ( 'template' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1718:12: 'template'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1710:10: ( 'template' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1710:12: 'template'
             {
             match("template"); if (failed) return ;
 
@@ -1237,8 +1237,8 @@
     public final void mATTRIBUTES() throws RecognitionException {
         try {
             int _type = ATTRIBUTES;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1720:14: ( 'attributes' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1720:14: 'attributes'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1712:12: ( 'attributes' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1712:14: 'attributes'
             {
             match("attributes"); if (failed) return ;
 
@@ -1256,8 +1256,8 @@
     public final void mDATE_EFFECTIVE() throws RecognitionException {
         try {
             int _type = DATE_EFFECTIVE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1723:4: ( 'date-effective' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1723:4: 'date-effective'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1715:2: ( 'date-effective' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1715:4: 'date-effective'
             {
             match("date-effective"); if (failed) return ;
 
@@ -1275,8 +1275,8 @@
     public final void mDATE_EXPIRES() throws RecognitionException {
         try {
             int _type = DATE_EXPIRES;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1726:4: ( 'date-expires' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1726:4: 'date-expires'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1718:2: ( 'date-expires' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1718:4: 'date-expires'
             {
             match("date-expires"); if (failed) return ;
 
@@ -1294,8 +1294,8 @@
     public final void mENABLED() throws RecognitionException {
         try {
             int _type = ENABLED;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1728:11: ( 'enabled' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1728:11: 'enabled'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1720:9: ( 'enabled' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1720:11: 'enabled'
             {
             match("enabled"); if (failed) return ;
 
@@ -1313,8 +1313,8 @@
     public final void mSALIENCE() throws RecognitionException {
         try {
             int _type = SALIENCE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1731:4: ( 'salience' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1731:4: 'salience'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1723:2: ( 'salience' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1723:4: 'salience'
             {
             match("salience"); if (failed) return ;
 
@@ -1332,8 +1332,8 @@
     public final void mNO_LOOP() throws RecognitionException {
         try {
             int _type = NO_LOOP;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1733:11: ( 'no-loop' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1733:11: 'no-loop'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1725:9: ( 'no-loop' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1725:11: 'no-loop'
             {
             match("no-loop"); if (failed) return ;
 
@@ -1351,8 +1351,8 @@
     public final void mAUTO_FOCUS() throws RecognitionException {
         try {
             int _type = AUTO_FOCUS;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1736:4: ( 'auto-focus' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1736:4: 'auto-focus'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1728:2: ( 'auto-focus' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1728:4: 'auto-focus'
             {
             match("auto-focus"); if (failed) return ;
 
@@ -1370,8 +1370,8 @@
     public final void mACTIVATION_GROUP() throws RecognitionException {
         try {
             int _type = ACTIVATION_GROUP;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1739:4: ( 'activation-group' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1739:4: 'activation-group'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1731:2: ( 'activation-group' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1731:4: 'activation-group'
             {
             match("activation-group"); if (failed) return ;
 
@@ -1389,8 +1389,8 @@
     public final void mAGENDA_GROUP() throws RecognitionException {
         try {
             int _type = AGENDA_GROUP;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1742:4: ( 'agenda-group' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1742:4: 'agenda-group'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1734:2: ( 'agenda-group' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1734:4: 'agenda-group'
             {
             match("agenda-group"); if (failed) return ;
 
@@ -1408,8 +1408,8 @@
     public final void mDIALECT() throws RecognitionException {
         try {
             int _type = DIALECT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1745:4: ( 'dialect' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1745:4: 'dialect'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1737:2: ( 'dialect' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1737:4: 'dialect'
             {
             match("dialect"); if (failed) return ;
 
@@ -1427,8 +1427,8 @@
     public final void mRULEFLOW_GROUP() throws RecognitionException {
         try {
             int _type = RULEFLOW_GROUP;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1748:4: ( 'ruleflow-group' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1748:4: 'ruleflow-group'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1740:2: ( 'ruleflow-group' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1740:4: 'ruleflow-group'
             {
             match("ruleflow-group"); if (failed) return ;
 
@@ -1446,8 +1446,8 @@
     public final void mDURATION() throws RecognitionException {
         try {
             int _type = DURATION;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1751:4: ( 'duration' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1751:4: 'duration'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1743:2: ( 'duration' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1743:4: 'duration'
             {
             match("duration"); if (failed) return ;
 
@@ -1465,8 +1465,8 @@
     public final void mLOCK_ON_ACTIVE() throws RecognitionException {
         try {
             int _type = LOCK_ON_ACTIVE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1754:4: ( 'lock-on-active' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1754:4: 'lock-on-active'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1746:2: ( 'lock-on-active' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1746:4: 'lock-on-active'
             {
             match("lock-on-active"); if (failed) return ;
 
@@ -1484,8 +1484,8 @@
     public final void mFROM() throws RecognitionException {
         try {
             int _type = FROM;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1756:8: ( 'from' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1756:8: 'from'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1748:6: ( 'from' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1748:8: 'from'
             {
             match("from"); if (failed) return ;
 
@@ -1503,8 +1503,8 @@
     public final void mACCUMULATE() throws RecognitionException {
         try {
             int _type = ACCUMULATE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1759:4: ( 'accumulate' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1759:4: 'accumulate'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1751:2: ( 'accumulate' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1751:4: 'accumulate'
             {
             match("accumulate"); if (failed) return ;
 
@@ -1522,8 +1522,8 @@
     public final void mINIT() throws RecognitionException {
         try {
             int _type = INIT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1761:8: ( 'init' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1761:8: 'init'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1753:6: ( 'init' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1753:8: 'init'
             {
             match("init"); if (failed) return ;
 
@@ -1541,8 +1541,8 @@
     public final void mACTION() throws RecognitionException {
         try {
             int _type = ACTION;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1763:10: ( 'action' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1763:10: 'action'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1755:8: ( 'action' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1755:10: 'action'
             {
             match("action"); if (failed) return ;
 
@@ -1560,8 +1560,8 @@
     public final void mREVERSE() throws RecognitionException {
         try {
             int _type = REVERSE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1765:11: ( 'reverse' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1765:11: 'reverse'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1757:9: ( 'reverse' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1757:11: 'reverse'
             {
             match("reverse"); if (failed) return ;
 
@@ -1579,8 +1579,8 @@
     public final void mRESULT() throws RecognitionException {
         try {
             int _type = RESULT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1767:10: ( 'result' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1767:10: 'result'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1759:8: ( 'result' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1759:10: 'result'
             {
             match("result"); if (failed) return ;
 
@@ -1598,8 +1598,8 @@
     public final void mCOLLECT() throws RecognitionException {
         try {
             int _type = COLLECT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1769:11: ( 'collect' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1769:11: 'collect'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1761:9: ( 'collect' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1761:11: 'collect'
             {
             match("collect"); if (failed) return ;
 
@@ -1617,8 +1617,8 @@
     public final void mOR() throws RecognitionException {
         try {
             int _type = OR;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1771:6: ( 'or' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1771:6: 'or'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1763:4: ( 'or' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1763:6: 'or'
             {
             match("or"); if (failed) return ;
 
@@ -1636,8 +1636,8 @@
     public final void mAND() throws RecognitionException {
         try {
             int _type = AND;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1773:7: ( 'and' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1773:7: 'and'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1765:5: ( 'and' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1765:7: 'and'
             {
             match("and"); if (failed) return ;
 
@@ -1655,8 +1655,8 @@
     public final void mCONTAINS() throws RecognitionException {
         try {
             int _type = CONTAINS;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1776:4: ( 'contains' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1776:4: 'contains'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1768:2: ( 'contains' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1768:4: 'contains'
             {
             match("contains"); if (failed) return ;
 
@@ -1674,8 +1674,8 @@
     public final void mEXCLUDES() throws RecognitionException {
         try {
             int _type = EXCLUDES;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1779:4: ( 'excludes' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1779:4: 'excludes'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1771:2: ( 'excludes' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1771:4: 'excludes'
             {
             match("excludes"); if (failed) return ;
 
@@ -1693,8 +1693,8 @@
     public final void mMEMBEROF() throws RecognitionException {
         try {
             int _type = MEMBEROF;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1782:4: ( 'memberOf' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1782:4: 'memberOf'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1774:2: ( 'memberOf' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1774:4: 'memberOf'
             {
             match("memberOf"); if (failed) return ;
 
@@ -1712,8 +1712,8 @@
     public final void mMATCHES() throws RecognitionException {
         try {
             int _type = MATCHES;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1784:11: ( 'matches' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1784:11: 'matches'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1776:9: ( 'matches' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1776:11: 'matches'
             {
             match("matches"); if (failed) return ;
 
@@ -1731,8 +1731,8 @@
     public final void mIN() throws RecognitionException {
         try {
             int _type = IN;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1786:6: ( 'in' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1786:6: 'in'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1778:4: ( 'in' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1778:6: 'in'
             {
             match("in"); if (failed) return ;
 
@@ -1750,8 +1750,8 @@
     public final void mNULL() throws RecognitionException {
         try {
             int _type = NULL;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1788:8: ( 'null' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1788:8: 'null'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1780:6: ( 'null' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1780:8: 'null'
             {
             match("null"); if (failed) return ;
 
@@ -1769,8 +1769,8 @@
     public final void mEXISTS() throws RecognitionException {
         try {
             int _type = EXISTS;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1790:10: ( 'exists' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1790:10: 'exists'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1782:8: ( 'exists' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1782:10: 'exists'
             {
             match("exists"); if (failed) return ;
 
@@ -1788,8 +1788,8 @@
     public final void mNOT() throws RecognitionException {
         try {
             int _type = NOT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1792:7: ( 'not' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1792:7: 'not'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1784:5: ( 'not' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1784:7: 'not'
             {
             match("not"); if (failed) return ;
 
@@ -1807,8 +1807,8 @@
     public final void mEVAL() throws RecognitionException {
         try {
             int _type = EVAL;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1794:8: ( 'eval' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1794:8: 'eval'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1786:6: ( 'eval' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1786:8: 'eval'
             {
             match("eval"); if (failed) return ;
 
@@ -1826,8 +1826,8 @@
     public final void mFORALL() throws RecognitionException {
         try {
             int _type = FORALL;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1796:10: ( 'forall' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1796:10: 'forall'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1788:8: ( 'forall' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1788:10: 'forall'
             {
             match("forall"); if (failed) return ;
 
@@ -1845,8 +1845,8 @@
     public final void mWHEN() throws RecognitionException {
         try {
             int _type = WHEN;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1798:11: ( 'when' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1798:11: 'when'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1790:9: ( 'when' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1790:11: 'when'
             {
             match("when"); if (failed) return ;
 
@@ -1864,8 +1864,8 @@
     public final void mTHEN() throws RecognitionException {
         try {
             int _type = THEN;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1800:12: ( 'then' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1800:12: 'then'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1792:6: ( 'then' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1792:12: 'then'
             {
             match("then"); if (failed) return ;
 
@@ -1883,8 +1883,8 @@
     public final void mEND() throws RecognitionException {
         try {
             int _type = END;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1802:11: ( 'end' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1802:11: 'end'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1794:9: ( 'end' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1794:11: 'end'
             {
             match("end"); if (failed) return ;
 
@@ -1902,8 +1902,8 @@
     public final void mID() throws RecognitionException {
         try {
             int _type = ID;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1805:4: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '$' | '\\u00c0' .. '\\u00ff' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' | '\\u00c0' .. '\\u00ff' )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1805:4: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '$' | '\\u00c0' .. '\\u00ff' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' | '\\u00c0' .. '\\u00ff' )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1797:2: ( ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '$' | '\\u00c0' .. '\\u00ff' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' | '\\u00c0' .. '\\u00ff' )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1797:4: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '$' | '\\u00c0' .. '\\u00ff' ) ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' | '\\u00c0' .. '\\u00ff' )*
             {
             if ( input.LA(1)=='$'||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z')||(input.LA(1)>='\u00C0' && input.LA(1)<='\u00FF') ) {
                 input.consume();
@@ -1916,7 +1916,7 @@
                 recover(mse);    throw mse;
             }
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1805:50: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' | '\\u00c0' .. '\\u00ff' )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1797:50: ( 'a' .. 'z' | 'A' .. 'Z' | '_' | '0' .. '9' | '\\u00c0' .. '\\u00ff' )*
             loop14:
             do {
                 int alt14=2;
@@ -1929,7 +1929,7 @@
 
                 switch (alt14) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:
             	    {
             	    if ( (input.LA(1)>='0' && input.LA(1)<='9')||(input.LA(1)>='A' && input.LA(1)<='Z')||input.LA(1)=='_'||(input.LA(1)>='a' && input.LA(1)<='z')||(input.LA(1)>='\u00C0' && input.LA(1)<='\u00FF') ) {
             	        input.consume();
@@ -1965,8 +1965,8 @@
     public final void mLEFT_PAREN() throws RecognitionException {
         try {
             int _type = LEFT_PAREN;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1809:11: ( '(' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1809:11: '('
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1801:9: ( '(' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1801:11: '('
             {
             match('('); if (failed) return ;
 
@@ -1983,8 +1983,8 @@
     public final void mRIGHT_PAREN() throws RecognitionException {
         try {
             int _type = RIGHT_PAREN;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1813:11: ( ')' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1813:11: ')'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1805:9: ( ')' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1805:11: ')'
             {
             match(')'); if (failed) return ;
 
@@ -2001,8 +2001,8 @@
     public final void mLEFT_SQUARE() throws RecognitionException {
         try {
             int _type = LEFT_SQUARE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1817:11: ( '[' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1817:11: '['
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1809:9: ( '[' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1809:11: '['
             {
             match('['); if (failed) return ;
 
@@ -2019,8 +2019,8 @@
     public final void mRIGHT_SQUARE() throws RecognitionException {
         try {
             int _type = RIGHT_SQUARE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1821:11: ( ']' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1821:11: ']'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1813:9: ( ']' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1813:11: ']'
             {
             match(']'); if (failed) return ;
 
@@ -2037,8 +2037,8 @@
     public final void mLEFT_CURLY() throws RecognitionException {
         try {
             int _type = LEFT_CURLY;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1825:11: ( '{' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1825:11: '{'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1817:9: ( '{' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1817:11: '{'
             {
             match('{'); if (failed) return ;
 
@@ -2055,8 +2055,8 @@
     public final void mRIGHT_CURLY() throws RecognitionException {
         try {
             int _type = RIGHT_CURLY;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1829:11: ( '}' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1829:11: '}'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1821:9: ( '}' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1821:11: '}'
             {
             match('}'); if (failed) return ;
 
@@ -2073,8 +2073,8 @@
     public final void mCOMMA() throws RecognitionException {
         try {
             int _type = COMMA;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1832:9: ( ',' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1832:9: ','
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1824:7: ( ',' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1824:9: ','
             {
             match(','); if (failed) return ;
 
@@ -2091,8 +2091,8 @@
     public final void mDOT() throws RecognitionException {
         try {
             int _type = DOT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1835:7: ( '.' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1835:7: '.'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1827:5: ( '.' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1827:7: '.'
             {
             match('.'); if (failed) return ;
 
@@ -2109,8 +2109,8 @@
     public final void mDOUBLE_AMPER() throws RecognitionException {
         try {
             int _type = DOUBLE_AMPER;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1839:4: ( '&&' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1839:4: '&&'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1831:2: ( '&&' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1831:4: '&&'
             {
             match("&&"); if (failed) return ;
 
@@ -2128,8 +2128,8 @@
     public final void mDOUBLE_PIPE() throws RecognitionException {
         try {
             int _type = DOUBLE_PIPE;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1843:4: ( '||' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1843:4: '||'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1835:2: ( '||' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1835:4: '||'
             {
             match("||"); if (failed) return ;
 
@@ -2147,11 +2147,11 @@
     public final void mSH_STYLE_SINGLE_LINE_COMMENT() throws RecognitionException {
         try {
             int _type = SH_STYLE_SINGLE_LINE_COMMENT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1847:4: ( '#' ( options {greedy=false; } : . )* EOL )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1847:4: '#' ( options {greedy=false; } : . )* EOL
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1839:2: ( '#' ( options {greedy=false; } : . )* EOL )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1839:4: '#' ( options {greedy=false; } : . )* EOL
             {
             match('#'); if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1847:8: ( options {greedy=false; } : . )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1839:8: ( options {greedy=false; } : . )*
             loop15:
             do {
                 int alt15=2;
@@ -2170,7 +2170,7 @@
 
                 switch (alt15) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1847:35: .
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1839:35: .
             	    {
             	    matchAny(); if (failed) return ;
 
@@ -2200,12 +2200,12 @@
     public final void mC_STYLE_SINGLE_LINE_COMMENT() throws RecognitionException {
         try {
             int _type = C_STYLE_SINGLE_LINE_COMMENT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1853:4: ( '//' ( options {greedy=false; } : . )* EOL )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1853:4: '//' ( options {greedy=false; } : . )* EOL
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1845:2: ( '//' ( options {greedy=false; } : . )* EOL )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1845:4: '//' ( options {greedy=false; } : . )* EOL
             {
             match("//"); if (failed) return ;
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1853:9: ( options {greedy=false; } : . )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1845:9: ( options {greedy=false; } : . )*
             loop16:
             do {
                 int alt16=2;
@@ -2224,7 +2224,7 @@
 
                 switch (alt16) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1853:36: .
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1845:36: .
             	    {
             	    matchAny(); if (failed) return ;
 
@@ -2254,12 +2254,12 @@
     public final void mMULTI_LINE_COMMENT() throws RecognitionException {
         try {
             int _type = MULTI_LINE_COMMENT;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1858:4: ( '/*' ( options {greedy=false; } : . )* '*/' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1858:4: '/*' ( options {greedy=false; } : . )* '*/'
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1850:2: ( '/*' ( options {greedy=false; } : . )* '*/' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1850:4: '/*' ( options {greedy=false; } : . )* '*/'
             {
             match("/*"); if (failed) return ;
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1858:9: ( options {greedy=false; } : . )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1850:9: ( options {greedy=false; } : . )*
             loop17:
             do {
                 int alt17=2;
@@ -2284,7 +2284,7 @@
 
                 switch (alt17) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1858:35: .
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1850:35: .
             	    {
             	    matchAny(); if (failed) return ;
 
@@ -2315,8 +2315,8 @@
     public final void mMISC() throws RecognitionException {
         try {
             int _type = MISC;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1863:3: ( '!' | '@' | '$' | '%' | '^' | '*' | '_' | '-' | '+' | '?' | '=' | '/' | '\\'' | '\\\\' | '|' | '&' )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1854:7: ( '!' | '@' | '$' | '%' | '^' | '*' | '_' | '-' | '+' | '?' | '=' | '/' | '\\'' | '\\\\' | '|' | '&' )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:
             {
             if ( input.LA(1)=='!'||(input.LA(1)>='$' && input.LA(1)<='\'')||(input.LA(1)>='*' && input.LA(1)<='+')||input.LA(1)=='-'||input.LA(1)=='/'||input.LA(1)=='='||(input.LA(1)>='?' && input.LA(1)<='@')||input.LA(1)=='\\'||(input.LA(1)>='^' && input.LA(1)<='_')||input.LA(1)=='|' ) {
                 input.consume();
@@ -2340,509 +2340,509 @@
     // $ANTLR end MISC
 
     public void mTokens() throws RecognitionException {
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:10: ( T71 | T72 | T73 | T74 | T75 | T76 | T77 | T78 | T79 | T80 | WS | INT | FLOAT | STRING | BOOL | PACKAGE | IMPORT | FUNCTION | GLOBAL | RULE | QUERY | TEMPLATE | ATTRIBUTES | DATE_EFFECTIVE | DATE_EXPIRES | ENABLED | SALIENCE | NO_LOOP | AUTO_FOCUS | ACTIVATION_GROUP | AGENDA_GROUP | DIALECT | RULEFLOW_GROUP | DURATION | LOCK_ON_ACTIVE | FROM | ACCUMULATE | INIT | ACTION | REVERSE | RESULT | COLLECT | OR | AND | CONTAINS | EXCLUDES | MEMBEROF | MATCHES | IN | NULL | EXISTS | NOT | EVAL | FORALL | WHEN | THEN | END | ID | LEFT_PAREN | RIGHT_PAREN | LEFT_SQUARE | RIGHT_SQUARE | LEFT_CURLY | RIGHT_CURLY | COMMA | DOT | DOUBLE_AMPER | DOUBLE_PIPE | SH_STYLE_SINGLE_LINE_COMMENT | C_STYLE_SINGLE_LINE_COMMENT | MULTI_LINE_COMMENT | MISC )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:8: ( T71 | T72 | T73 | T74 | T75 | T76 | T77 | T78 | T79 | T80 | WS | INT | FLOAT | STRING | BOOL | PACKAGE | IMPORT | FUNCTION | GLOBAL | RULE | QUERY | TEMPLATE | ATTRIBUTES | DATE_EFFECTIVE | DATE_EXPIRES | ENABLED | SALIENCE | NO_LOOP | AUTO_FOCUS | ACTIVATION_GROUP | AGENDA_GROUP | DIALECT | RULEFLOW_GROUP | DURATION | LOCK_ON_ACTIVE | FROM | ACCUMULATE | INIT | ACTION | REVERSE | RESULT | COLLECT | OR | AND | CONTAINS | EXCLUDES | MEMBEROF | MATCHES | IN | NULL | EXISTS | NOT | EVAL | FORALL | WHEN | THEN | END | ID | LEFT_PAREN | RIGHT_PAREN | LEFT_SQUARE | RIGHT_SQUARE | LEFT_CURLY | RIGHT_CURLY | COMMA | DOT | DOUBLE_AMPER | DOUBLE_PIPE | SH_STYLE_SINGLE_LINE_COMMENT | C_STYLE_SINGLE_LINE_COMMENT | MULTI_LINE_COMMENT | MISC )
         int alt18=72;
         alt18 = dfa18.predict(input);
         switch (alt18) {
             case 1 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:10: T71
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:10: T71
                 {
                 mT71(); if (failed) return ;
 
                 }
                 break;
             case 2 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:14: T72
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:14: T72
                 {
                 mT72(); if (failed) return ;
 
                 }
                 break;
             case 3 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:18: T73
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:18: T73
                 {
                 mT73(); if (failed) return ;
 
                 }
                 break;
             case 4 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:22: T74
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:22: T74
                 {
                 mT74(); if (failed) return ;
 
                 }
                 break;
             case 5 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:26: T75
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:26: T75
                 {
                 mT75(); if (failed) return ;
 
                 }
                 break;
             case 6 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:30: T76
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:30: T76
                 {
                 mT76(); if (failed) return ;
 
                 }
                 break;
             case 7 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:34: T77
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:34: T77
                 {
                 mT77(); if (failed) return ;
 
                 }
                 break;
             case 8 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:38: T78
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:38: T78
                 {
                 mT78(); if (failed) return ;
 
                 }
                 break;
             case 9 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:42: T79
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:42: T79
                 {
                 mT79(); if (failed) return ;
 
                 }
                 break;
             case 10 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:46: T80
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:46: T80
                 {
                 mT80(); if (failed) return ;
 
                 }
                 break;
             case 11 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:50: WS
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:50: WS
                 {
                 mWS(); if (failed) return ;
 
                 }
                 break;
             case 12 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:53: INT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:53: INT
                 {
                 mINT(); if (failed) return ;
 
                 }
                 break;
             case 13 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:57: FLOAT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:57: FLOAT
                 {
                 mFLOAT(); if (failed) return ;
 
                 }
                 break;
             case 14 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:63: STRING
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:63: STRING
                 {
                 mSTRING(); if (failed) return ;
 
                 }
                 break;
             case 15 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:70: BOOL
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:70: BOOL
                 {
                 mBOOL(); if (failed) return ;
 
                 }
                 break;
             case 16 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:75: PACKAGE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:75: PACKAGE
                 {
                 mPACKAGE(); if (failed) return ;
 
                 }
                 break;
             case 17 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:83: IMPORT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:83: IMPORT
                 {
                 mIMPORT(); if (failed) return ;
 
                 }
                 break;
             case 18 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:90: FUNCTION
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:90: FUNCTION
                 {
                 mFUNCTION(); if (failed) return ;
 
                 }
                 break;
             case 19 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:99: GLOBAL
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:99: GLOBAL
                 {
                 mGLOBAL(); if (failed) return ;
 
                 }
                 break;
             case 20 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:106: RULE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:106: RULE
                 {
                 mRULE(); if (failed) return ;
 
                 }
                 break;
             case 21 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:111: QUERY
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:111: QUERY
                 {
                 mQUERY(); if (failed) return ;
 
                 }
                 break;
             case 22 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:117: TEMPLATE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:117: TEMPLATE
                 {
                 mTEMPLATE(); if (failed) return ;
 
                 }
                 break;
             case 23 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:126: ATTRIBUTES
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:126: ATTRIBUTES
                 {
                 mATTRIBUTES(); if (failed) return ;
 
                 }
                 break;
             case 24 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:137: DATE_EFFECTIVE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:137: DATE_EFFECTIVE
                 {
                 mDATE_EFFECTIVE(); if (failed) return ;
 
                 }
                 break;
             case 25 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:152: DATE_EXPIRES
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:152: DATE_EXPIRES
                 {
                 mDATE_EXPIRES(); if (failed) return ;
 
                 }
                 break;
             case 26 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:165: ENABLED
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:165: ENABLED
                 {
                 mENABLED(); if (failed) return ;
 
                 }
                 break;
             case 27 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:173: SALIENCE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:173: SALIENCE
                 {
                 mSALIENCE(); if (failed) return ;
 
                 }
                 break;
             case 28 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:182: NO_LOOP
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:182: NO_LOOP
                 {
                 mNO_LOOP(); if (failed) return ;
 
                 }
                 break;
             case 29 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:190: AUTO_FOCUS
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:190: AUTO_FOCUS
                 {
                 mAUTO_FOCUS(); if (failed) return ;
 
                 }
                 break;
             case 30 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:201: ACTIVATION_GROUP
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:201: ACTIVATION_GROUP
                 {
                 mACTIVATION_GROUP(); if (failed) return ;
 
                 }
                 break;
             case 31 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:218: AGENDA_GROUP
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:218: AGENDA_GROUP
                 {
                 mAGENDA_GROUP(); if (failed) return ;
 
                 }
                 break;
             case 32 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:231: DIALECT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:231: DIALECT
                 {
                 mDIALECT(); if (failed) return ;
 
                 }
                 break;
             case 33 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:239: RULEFLOW_GROUP
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:239: RULEFLOW_GROUP
                 {
                 mRULEFLOW_GROUP(); if (failed) return ;
 
                 }
                 break;
             case 34 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:254: DURATION
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:254: DURATION
                 {
                 mDURATION(); if (failed) return ;
 
                 }
                 break;
             case 35 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:263: LOCK_ON_ACTIVE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:263: LOCK_ON_ACTIVE
                 {
                 mLOCK_ON_ACTIVE(); if (failed) return ;
 
                 }
                 break;
             case 36 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:278: FROM
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:278: FROM
                 {
                 mFROM(); if (failed) return ;
 
                 }
                 break;
             case 37 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:283: ACCUMULATE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:283: ACCUMULATE
                 {
                 mACCUMULATE(); if (failed) return ;
 
                 }
                 break;
             case 38 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:294: INIT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:294: INIT
                 {
                 mINIT(); if (failed) return ;
 
                 }
                 break;
             case 39 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:299: ACTION
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:299: ACTION
                 {
                 mACTION(); if (failed) return ;
 
                 }
                 break;
             case 40 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:306: REVERSE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:306: REVERSE
                 {
                 mREVERSE(); if (failed) return ;
 
                 }
                 break;
             case 41 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:314: RESULT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:314: RESULT
                 {
                 mRESULT(); if (failed) return ;
 
                 }
                 break;
             case 42 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:321: COLLECT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:321: COLLECT
                 {
                 mCOLLECT(); if (failed) return ;
 
                 }
                 break;
             case 43 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:329: OR
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:329: OR
                 {
                 mOR(); if (failed) return ;
 
                 }
                 break;
             case 44 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:332: AND
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:332: AND
                 {
                 mAND(); if (failed) return ;
 
                 }
                 break;
             case 45 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:336: CONTAINS
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:336: CONTAINS
                 {
                 mCONTAINS(); if (failed) return ;
 
                 }
                 break;
             case 46 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:345: EXCLUDES
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:345: EXCLUDES
                 {
                 mEXCLUDES(); if (failed) return ;
 
                 }
                 break;
             case 47 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:354: MEMBEROF
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:354: MEMBEROF
                 {
                 mMEMBEROF(); if (failed) return ;
 
                 }
                 break;
             case 48 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:363: MATCHES
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:363: MATCHES
                 {
                 mMATCHES(); if (failed) return ;
 
                 }
                 break;
             case 49 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:371: IN
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:371: IN
                 {
                 mIN(); if (failed) return ;
 
                 }
                 break;
             case 50 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:374: NULL
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:374: NULL
                 {
                 mNULL(); if (failed) return ;
 
                 }
                 break;
             case 51 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:379: EXISTS
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:379: EXISTS
                 {
                 mEXISTS(); if (failed) return ;
 
                 }
                 break;
             case 52 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:386: NOT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:386: NOT
                 {
                 mNOT(); if (failed) return ;
 
                 }
                 break;
             case 53 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:390: EVAL
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:390: EVAL
                 {
                 mEVAL(); if (failed) return ;
 
                 }
                 break;
             case 54 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:395: FORALL
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:395: FORALL
                 {
                 mFORALL(); if (failed) return ;
 
                 }
                 break;
             case 55 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:402: WHEN
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:402: WHEN
                 {
                 mWHEN(); if (failed) return ;
 
                 }
                 break;
             case 56 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:407: THEN
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:407: THEN
                 {
                 mTHEN(); if (failed) return ;
 
                 }
                 break;
             case 57 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:412: END
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:412: END
                 {
                 mEND(); if (failed) return ;
 
                 }
                 break;
             case 58 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:416: ID
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:416: ID
                 {
                 mID(); if (failed) return ;
 
                 }
                 break;
             case 59 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:419: LEFT_PAREN
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:419: LEFT_PAREN
                 {
                 mLEFT_PAREN(); if (failed) return ;
 
                 }
                 break;
             case 60 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:430: RIGHT_PAREN
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:430: RIGHT_PAREN
                 {
                 mRIGHT_PAREN(); if (failed) return ;
 
                 }
                 break;
             case 61 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:442: LEFT_SQUARE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:442: LEFT_SQUARE
                 {
                 mLEFT_SQUARE(); if (failed) return ;
 
                 }
                 break;
             case 62 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:454: RIGHT_SQUARE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:454: RIGHT_SQUARE
                 {
                 mRIGHT_SQUARE(); if (failed) return ;
 
                 }
                 break;
             case 63 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:467: LEFT_CURLY
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:467: LEFT_CURLY
                 {
                 mLEFT_CURLY(); if (failed) return ;
 
                 }
                 break;
             case 64 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:478: RIGHT_CURLY
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:478: RIGHT_CURLY
                 {
                 mRIGHT_CURLY(); if (failed) return ;
 
                 }
                 break;
             case 65 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:490: COMMA
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:490: COMMA
                 {
                 mCOMMA(); if (failed) return ;
 
                 }
                 break;
             case 66 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:496: DOT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:496: DOT
                 {
                 mDOT(); if (failed) return ;
 
                 }
                 break;
             case 67 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:500: DOUBLE_AMPER
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:500: DOUBLE_AMPER
                 {
                 mDOUBLE_AMPER(); if (failed) return ;
 
                 }
                 break;
             case 68 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:513: DOUBLE_PIPE
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:513: DOUBLE_PIPE
                 {
                 mDOUBLE_PIPE(); if (failed) return ;
 
                 }
                 break;
             case 69 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:525: SH_STYLE_SINGLE_LINE_COMMENT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:525: SH_STYLE_SINGLE_LINE_COMMENT
                 {
                 mSH_STYLE_SINGLE_LINE_COMMENT(); if (failed) return ;
 
                 }
                 break;
             case 70 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:554: C_STYLE_SINGLE_LINE_COMMENT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:554: C_STYLE_SINGLE_LINE_COMMENT
                 {
                 mC_STYLE_SINGLE_LINE_COMMENT(); if (failed) return ;
 
                 }
                 break;
             case 71 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:582: MULTI_LINE_COMMENT
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:582: MULTI_LINE_COMMENT
                 {
                 mMULTI_LINE_COMMENT(); if (failed) return ;
 
                 }
                 break;
             case 72 :
-                // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:601: MISC
+                // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1:601: MISC
                 {
                 mMISC(); if (failed) return ;
 
@@ -2855,8 +2855,8 @@
 
     // $ANTLR start synpred1
     public final void synpred1_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1658:14: ( '\\r\\n' )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1658:16: '\\r\\n'
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1650:14: ( '\\r\\n' )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1650:16: '\\r\\n'
         {
         match("\r\n"); if (failed) return ;
 
@@ -2883,123 +2883,121 @@
 
     protected DFA18 dfa18 = new DFA18(this);
     static final String DFA18_eotS =
-        "\3\uffff\1\55\2\53\1\61\1\63\1\53\1\uffff\1\65\1\uffff\1\53\21\52"+
-        "\10\uffff\2\53\1\uffff\1\53\15\uffff\10\52\1\146\25\52\1\u0082\3"+
-        "\52\4\uffff\11\52\1\uffff\11\52\1\u0098\7\52\1\u00a0\3\52\1\u00a4"+
-        "\1\uffff\4\52\1\uffff\3\52\1\u00ac\1\52\1\u00ae\3\52\1\u00b2\1\52"+
-        "\1\u00b4\2\52\1\u00b8\6\52\1\uffff\7\52\1\uffff\1\52\1\u00c8\1\52"+
-        "\1\uffff\1\u00ca\5\52\1\u00d0\1\uffff\1\52\1\uffff\1\u00ac\2\52"+
-        "\1\uffff\1\52\1\uffff\3\52\1\uffff\2\52\1\u00da\1\uffff\6\52\1\uffff"+
-        "\4\52\1\uffff\1\52\2\uffff\4\52\1\uffff\2\52\1\u00ed\1\52\1\u00ef"+
-        "\1\u00f0\1\52\1\u00f2\1\52\1\uffff\2\52\1\u00f6\3\52\1\uffff\1\52"+
-        "\1\u00fd\11\52\1\uffff\1\u0107\2\uffff\1\52\1\uffff\1\u0109\2\52"+
-        "\1\uffff\1\52\1\uffff\1\52\2\uffff\1\u010e\1\uffff\1\52\1\u0110"+
-        "\1\52\1\u0112\2\52\1\u0115\1\u0116\1\u0117\1\uffff\1\52\1\uffff"+
-        "\3\52\1\u011c\1\uffff\1\u011d\1\uffff\1\u011e\1\uffff\1\u011f\1"+
-        "\u0120\4\uffff\3\52\5\uffff\1\u0124\1\52\1\u0126\3\uffff";
+        "\2\uffff\1\55\1\uffff\2\53\1\61\1\63\1\53\1\uffff\1\66\1\uffff\1"+
+        "\53\21\52\10\uffff\2\53\1\uffff\1\53\15\uffff\10\52\1\146\25\52"+
+        "\1\u0082\3\52\4\uffff\11\52\1\uffff\6\52\1\u0095\12\52\1\u00a0\4"+
+        "\52\1\u00a5\1\uffff\3\52\1\uffff\3\52\1\u00ac\1\u00ad\4\52\1\u00b2"+
+        "\1\52\1\u00b4\4\52\1\u00ba\1\52\1\uffff\12\52\1\uffff\1\52\1\u00c8"+
+        "\1\52\1\u00ca\1\uffff\5\52\1\u00d0\2\uffff\1\52\1\u00ad\2\52\1\uffff"+
+        "\1\52\1\uffff\5\52\1\uffff\1\u00da\3\52\1\uffff\2\52\1\uffff\5\52"+
+        "\1\uffff\1\52\2\uffff\4\52\1\uffff\2\52\1\u00ed\1\52\1\u00ef\1\u00f0"+
+        "\1\u00f1\2\52\1\uffff\1\u00f4\4\52\1\uffff\2\52\1\u00fd\11\52\1"+
+        "\uffff\1\u0107\3\uffff\1\u0108\1\52\1\uffff\3\52\3\uffff\1\52\1"+
+        "\u010e\1\uffff\1\52\1\u0110\1\52\1\u0112\1\52\1\u0114\1\52\1\u0116"+
+        "\1\u0117\2\uffff\4\52\1\u011c\1\uffff\1\u011d\1\uffff\1\u011e\1"+
+        "\uffff\1\u011f\1\uffff\1\u0120\3\uffff\3\52\5\uffff\1\52\1\u0125"+
+        "\1\u0126\3\uffff";
     static final String DFA18_eofS =
         "\u0127\uffff";
     static final String DFA18_minS =
-        "\1\11\2\uffff\1\52\1\60\4\75\1\uffff\1\56\1\uffff\1\0\1\145\2\141"+
-        "\1\155\1\154\1\145\1\165\1\143\1\141\1\156\1\141\3\157\1\162\1\141"+
-        "\1\150\10\uffff\1\46\1\174\1\uffff\1\52\15\uffff\1\165\1\155\1\145"+
-        "\1\154\1\156\1\162\1\157\1\143\1\60\1\160\1\157\1\154\1\163\1\145"+
-        "\1\164\1\143\1\144\1\164\1\145\1\162\1\164\1\141\1\143\2\141\1\154"+
-        "\1\55\1\154\1\143\1\154\1\60\1\155\1\164\1\145\4\uffff\1\145\1\160"+
-        "\1\156\1\163\1\143\1\141\1\155\1\153\1\164\1\uffff\1\157\1\142\1"+
-        "\145\1\165\1\145\1\162\1\157\1\165\1\151\1\60\1\162\1\156\1\141"+
-        "\1\145\1\154\1\163\1\154\1\60\1\142\1\154\1\151\1\60\1\uffff\1\154"+
-        "\1\153\1\154\1\164\1\uffff\1\142\1\143\1\156\1\60\1\154\1\60\1\145"+
-        "\1\164\1\154\1\60\1\141\1\60\1\162\1\141\1\60\1\154\1\162\1\171"+
-        "\1\55\1\155\1\157\1\uffff\1\151\1\144\1\164\1\55\1\145\1\164\1\165"+
-        "\1\uffff\1\154\1\60\1\145\1\uffff\1\60\1\55\1\145\1\141\1\145\1"+
-        "\150\1\60\1\uffff\1\141\1\uffff\1\60\1\151\1\154\1\uffff\1\147\1"+
-        "\uffff\1\164\2\154\1\uffff\1\164\1\163\1\60\1\uffff\1\165\1\141"+
-        "\1\156\1\142\1\141\1\151\1\145\1\143\1\163\1\144\1\145\1\uffff\1"+
-        "\156\2\uffff\1\143\1\151\1\162\1\145\1\uffff\1\164\1\157\1\60\1"+
-        "\145\2\60\1\157\1\60\1\145\1\uffff\1\154\1\164\1\60\1\165\1\55\1"+
-        "\157\1\146\1\164\1\60\1\145\1\144\1\143\1\164\1\156\1\117\1\163"+
-        "\1\145\1\156\1\uffff\1\60\2\uffff\1\167\1\uffff\1\60\1\141\1\151"+
-        "\1\uffff\1\164\1\uffff\1\156\2\uffff\1\60\1\uffff\1\163\1\60\1\145"+
-        "\1\60\1\163\1\146\3\60\1\uffff\1\55\1\uffff\1\164\1\157\1\145\1"+
-        "\60\1\uffff\1\60\1\uffff\1\60\1\uffff\2\60\4\uffff\1\145\1\156\1"+
-        "\163\5\uffff\1\60\1\55\1\60\3\uffff";
+        "\1\11\1\uffff\1\52\1\uffff\1\60\4\75\1\uffff\1\56\1\uffff\1\0\1"+
+        "\145\2\141\1\155\1\154\1\145\1\165\1\143\1\141\1\156\1\141\3\157"+
+        "\1\162\1\141\1\150\10\uffff\1\46\1\174\1\uffff\1\52\15\uffff\1\145"+
+        "\1\165\1\155\1\154\1\156\1\162\1\157\1\143\1\60\1\160\1\157\1\163"+
+        "\1\154\1\145\1\144\1\143\2\164\1\145\1\164\1\162\1\141\1\143\2\141"+
+        "\2\154\1\55\1\143\1\154\1\60\1\164\1\155\1\145\4\uffff\1\156\1\145"+
+        "\1\160\1\163\1\143\1\141\1\155\1\153\1\164\1\uffff\1\157\1\142\1"+
+        "\165\2\145\1\162\1\60\1\151\1\165\1\157\1\162\1\156\1\145\1\141"+
+        "\1\154\1\163\1\154\1\60\1\142\1\154\1\151\1\154\1\60\1\uffff\1\153"+
+        "\1\154\1\164\1\uffff\1\143\1\142\1\156\2\60\1\154\1\145\1\164\1"+
+        "\154\1\60\1\141\1\60\1\162\1\141\1\154\1\162\1\60\1\171\1\uffff"+
+        "\1\157\1\155\1\55\1\151\1\144\1\55\1\164\1\145\1\164\1\165\1\uffff"+
+        "\1\154\1\60\1\145\1\60\1\uffff\1\55\1\145\1\141\1\150\1\145\1\60"+
+        "\2\uffff\1\141\1\60\1\151\1\154\1\uffff\1\147\1\uffff\1\164\1\154"+
+        "\1\164\1\163\1\154\1\uffff\1\60\1\156\1\141\1\165\1\uffff\1\142"+
+        "\1\141\1\145\1\151\1\143\1\163\1\144\1\145\1\uffff\1\156\2\uffff"+
+        "\1\143\1\151\1\145\1\162\1\uffff\1\164\1\157\1\60\1\145\3\60\1\145"+
+        "\1\157\1\uffff\1\60\1\164\1\154\1\165\1\55\1\146\1\157\1\164\1\60"+
+        "\1\145\1\144\1\143\1\164\1\156\1\163\1\117\1\145\1\156\1\uffff\1"+
+        "\60\3\uffff\1\60\1\167\1\uffff\1\151\1\141\1\164\3\uffff\1\156\1"+
+        "\60\1\uffff\1\163\1\60\1\145\1\60\1\163\1\60\1\146\2\60\2\uffff"+
+        "\1\55\1\157\1\164\1\145\1\60\1\uffff\1\60\1\uffff\1\60\1\uffff\1"+
+        "\60\1\uffff\1\60\3\uffff\1\156\1\145\1\163\5\uffff\1\55\2\60\3\uffff";
     static final String DFA18_maxS =
-        "\1\u00ff\2\uffff\1\52\1\76\4\75\1\uffff\1\71\1\uffff\1\ufffe\1\162"+
-        "\1\165\1\141\1\156\1\154\4\165\1\170\1\141\1\165\2\157\1\162\1\145"+
-        "\1\150\10\uffff\1\46\1\174\1\uffff\1\57\15\uffff\1\165\1\155\1\145"+
-        "\1\154\1\156\1\162\1\157\1\143\1\u00ff\1\160\1\157\1\154\1\166\1"+
-        "\145\2\164\1\144\1\164\1\145\1\162\1\164\1\141\1\151\1\144\1\141"+
-        "\1\154\1\164\1\154\1\143\1\156\1\u00ff\1\155\1\164\1\145\4\uffff"+
-        "\1\145\1\160\1\156\1\163\1\143\1\141\1\155\1\153\1\164\1\uffff\1"+
-        "\157\1\142\1\145\1\165\1\145\1\162\1\157\1\165\1\151\1\u00ff\1\162"+
-        "\1\156\1\141\1\145\1\154\1\163\1\154\1\u00ff\1\142\1\154\1\151\1"+
-        "\u00ff\1\uffff\1\154\1\153\1\154\1\164\1\uffff\1\142\1\143\1\156"+
-        "\1\u00ff\1\154\1\u00ff\1\145\1\164\1\154\1\u00ff\1\141\1\u00ff\1"+
-        "\162\1\141\1\u00ff\1\154\1\162\1\171\1\55\1\155\1\166\1\uffff\1"+
-        "\151\1\144\1\164\1\55\1\145\1\164\1\165\1\uffff\1\154\1\u00ff\1"+
-        "\145\1\uffff\1\u00ff\1\55\1\145\1\141\1\145\1\150\1\u00ff\1\uffff"+
-        "\1\141\1\uffff\1\u00ff\1\151\1\154\1\uffff\1\147\1\uffff\1\164\2"+
-        "\154\1\uffff\1\164\1\163\1\u00ff\1\uffff\1\165\1\141\1\156\1\142"+
-        "\1\141\1\151\1\145\1\143\1\163\1\144\1\145\1\uffff\1\156\2\uffff"+
-        "\1\143\1\151\1\162\1\145\1\uffff\1\164\1\157\1\u00ff\1\145\2\u00ff"+
-        "\1\157\1\u00ff\1\145\1\uffff\1\154\1\164\1\u00ff\1\165\1\55\1\157"+
-        "\1\170\1\164\1\u00ff\1\145\1\144\1\143\1\164\1\156\1\117\1\163\1"+
-        "\145\1\156\1\uffff\1\u00ff\2\uffff\1\167\1\uffff\1\u00ff\1\141\1"+
-        "\151\1\uffff\1\164\1\uffff\1\156\2\uffff\1\u00ff\1\uffff\1\163\1"+
-        "\u00ff\1\145\1\u00ff\1\163\1\146\3\u00ff\1\uffff\1\55\1\uffff\1"+
-        "\164\1\157\1\145\1\u00ff\1\uffff\1\u00ff\1\uffff\1\u00ff\1\uffff"+
-        "\2\u00ff\4\uffff\1\145\1\156\1\163\5\uffff\1\u00ff\1\55\1\u00ff"+
-        "\3\uffff";
+        "\1\u00ff\1\uffff\1\52\1\uffff\1\76\4\75\1\uffff\1\71\1\uffff\1\ufffe"+
+        "\1\162\1\165\1\141\1\156\1\154\4\165\1\170\1\141\1\165\2\157\1\162"+
+        "\1\145\1\150\10\uffff\1\46\1\174\1\uffff\1\57\15\uffff\1\145\1\165"+
+        "\1\155\1\154\1\156\1\162\1\157\1\143\1\u00ff\1\160\1\157\1\166\1"+
+        "\154\1\145\1\144\3\164\1\145\1\164\1\162\1\141\1\151\1\144\1\141"+
+        "\2\154\1\164\1\143\1\156\1\u00ff\1\164\1\155\1\145\4\uffff\1\156"+
+        "\1\145\1\160\1\163\1\143\1\141\1\155\1\153\1\164\1\uffff\1\157\1"+
+        "\142\1\165\2\145\1\162\1\u00ff\1\151\1\165\1\157\1\162\1\156\1\145"+
+        "\1\141\1\154\1\163\1\154\1\u00ff\1\142\1\154\1\151\1\154\1\u00ff"+
+        "\1\uffff\1\153\1\154\1\164\1\uffff\1\143\1\142\1\156\2\u00ff\1\154"+
+        "\1\145\1\164\1\154\1\u00ff\1\141\1\u00ff\1\162\1\141\1\154\1\162"+
+        "\1\u00ff\1\171\1\uffff\1\166\1\155\1\55\1\151\1\144\1\55\1\164\1"+
+        "\145\1\164\1\165\1\uffff\1\154\1\u00ff\1\145\1\u00ff\1\uffff\1\55"+
+        "\1\145\1\141\1\150\1\145\1\u00ff\2\uffff\1\141\1\u00ff\1\151\1\154"+
+        "\1\uffff\1\147\1\uffff\1\164\1\154\1\164\1\163\1\154\1\uffff\1\u00ff"+
+        "\1\156\1\141\1\165\1\uffff\1\142\1\141\1\145\1\151\1\143\1\163\1"+
+        "\144\1\145\1\uffff\1\156\2\uffff\1\143\1\151\1\145\1\162\1\uffff"+
+        "\1\164\1\157\1\u00ff\1\145\3\u00ff\1\145\1\157\1\uffff\1\u00ff\1"+
+        "\164\1\154\1\165\1\55\1\170\1\157\1\164\1\u00ff\1\145\1\144\1\143"+
+        "\1\164\1\156\1\163\1\117\1\145\1\156\1\uffff\1\u00ff\3\uffff\1\u00ff"+
+        "\1\167\1\uffff\1\151\1\141\1\164\3\uffff\1\156\1\u00ff\1\uffff\1"+
+        "\163\1\u00ff\1\145\1\u00ff\1\163\1\u00ff\1\146\2\u00ff\2\uffff\1"+
+        "\55\1\157\1\164\1\145\1\u00ff\1\uffff\1\u00ff\1\uffff\1\u00ff\1"+
+        "\uffff\1\u00ff\1\uffff\1\u00ff\3\uffff\1\156\1\145\1\163\5\uffff"+
+        "\1\55\2\u00ff\3\uffff";
     static final String DFA18_acceptS =
-        "\1\uffff\1\1\1\2\6\uffff\1\13\1\uffff\1\16\22\uffff\1\72\1\73\1"+
-        "\74\1\75\1\76\1\77\1\100\1\101\2\uffff\1\105\1\uffff\1\72\1\110"+
-        "\1\3\1\102\1\4\1\5\1\7\1\6\1\11\1\10\1\12\1\14\1\15\42\uffff\1\103"+
-        "\1\104\1\106\1\107\11\uffff\1\61\26\uffff\1\34\4\uffff\1\53\25\uffff"+
-        "\1\54\7\uffff\1\71\3\uffff\1\64\7\uffff\1\17\1\uffff\1\70\3\uffff"+
-        "\1\44\1\uffff\1\46\3\uffff\1\24\3\uffff\1\35\13\uffff\1\65\1\uffff"+
+        "\1\uffff\1\1\1\uffff\1\3\5\uffff\1\13\1\uffff\1\16\22\uffff\1\72"+
+        "\1\73\1\74\1\75\1\76\1\77\1\100\1\101\2\uffff\1\105\1\uffff\1\72"+
+        "\1\110\1\2\1\102\1\4\1\5\1\7\1\6\1\11\1\10\1\12\1\15\1\14\42\uffff"+
+        "\1\103\1\104\1\107\1\106\11\uffff\1\61\27\uffff\1\34\3\uffff\1\53"+
+        "\22\uffff\1\54\12\uffff\1\71\4\uffff\1\64\6\uffff\1\70\1\17\4\uffff"+
+        "\1\44\1\uffff\1\46\5\uffff\1\24\4\uffff\1\35\10\uffff\1\65\1\uffff"+
         "\1\62\1\43\4\uffff\1\67\11\uffff\1\25\22\uffff\1\66\1\uffff\1\21"+
-        "\1\23\1\uffff\1\51\3\uffff\1\47\1\uffff\1\37\1\uffff\1\30\1\31\1"+
-        "\uffff\1\63\11\uffff\1\20\1\uffff\1\50\4\uffff\1\40\1\uffff\1\32"+
-        "\1\uffff\1\52\2\uffff\1\60\1\26\1\22\1\41\3\uffff\1\42\1\56\1\33"+
-        "\1\55\1\57\3\uffff\1\45\1\36\1\27";
+        "\1\23\1\51\2\uffff\1\47\3\uffff\1\37\1\31\1\30\2\uffff\1\63\11\uffff"+
+        "\1\20\1\50\5\uffff\1\40\1\uffff\1\32\1\uffff\1\52\1\uffff\1\60\1"+
+        "\uffff\1\26\1\22\1\41\3\uffff\1\42\1\56\1\33\1\55\1\57\3\uffff\1"+
+        "\36\1\45\1\27";
     static final String DFA18_specialS =
         "\u0127\uffff}>";
     static final String[] DFA18_transitionS = {
             "\2\11\1\uffff\2\11\22\uffff\1\11\1\10\1\13\1\50\1\36\1\53\1"+
-            "\46\1\14\1\37\1\40\2\53\1\45\1\4\1\3\1\51\12\12\1\2\1\1\1\7"+
+            "\46\1\14\1\37\1\40\2\53\1\45\1\4\1\2\1\51\12\12\1\3\1\1\1\7"+
             "\1\5\1\6\2\53\32\52\1\41\1\53\1\42\1\53\1\36\1\uffff\1\24\1"+
             "\52\1\32\1\25\1\26\1\16\1\21\1\52\1\20\2\52\1\31\1\34\1\30\1"+
             "\33\1\17\1\23\1\22\1\27\1\15\2\52\1\35\3\52\1\43\1\47\1\44\102"+
             "\uffff\100\52",
             "",
-            "",
             "\1\54",
+            "",
             "\12\12\4\uffff\1\56",
             "\1\57",
             "\1\60",
             "\1\62",
             "\1\64",
             "",
-            "\1\66\1\uffff\12\12",
+            "\1\65\1\uffff\12\12",
             "",
             "\uffff\13",
-            "\1\70\2\uffff\1\71\11\uffff\1\67",
+            "\1\71\2\uffff\1\67\11\uffff\1\70",
             "\1\72\15\uffff\1\74\2\uffff\1\75\2\uffff\1\73",
             "\1\76",
             "\1\100\1\77",
             "\1\101",
-            "\1\103\17\uffff\1\102",
+            "\1\102\17\uffff\1\103",
             "\1\104",
-            "\1\106\3\uffff\1\111\6\uffff\1\107\5\uffff\1\110\1\105",
-            "\1\113\7\uffff\1\114\13\uffff\1\112",
+            "\1\106\3\uffff\1\111\6\uffff\1\105\5\uffff\1\110\1\107",
+            "\1\112\7\uffff\1\114\13\uffff\1\113",
             "\1\116\7\uffff\1\117\1\uffff\1\115",
             "\1\120",
-            "\1\121\5\uffff\1\122",
+            "\1\122\5\uffff\1\121",
             "\1\123",
             "\1\124",
             "\1\125",
-            "\1\127\3\uffff\1\126",
+            "\1\126\3\uffff\1\127",
             "\1\130",
             "",
             "",
@@ -3012,7 +3010,7 @@
             "\1\131",
             "\1\132",
             "",
-            "\1\134\4\uffff\1\133",
+            "\1\133\4\uffff\1\134",
             "",
             "",
             "",
@@ -3038,11 +3036,11 @@
             "\105\uffff\100\52",
             "\1\147",
             "\1\150",
-            "\1\151",
-            "\1\152\2\uffff\1\153",
+            "\1\151\2\uffff\1\152",
+            "\1\153",
             "\1\154",
             "\1\155",
-            "\1\156\20\uffff\1\157",
+            "\1\157\20\uffff\1\156",
             "\1\160",
             "\1\161",
             "\1\162",
@@ -3053,8 +3051,8 @@
             "\1\171\2\uffff\1\170",
             "\1\172",
             "\1\173",
-            "\1\175\106\uffff\1\174",
-            "\1\176",
+            "\1\174",
+            "\1\176\106\uffff\1\175",
             "\1\177",
             "\1\u0080\1\uffff\1\u0081",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
@@ -3082,11 +3080,11 @@
             "\1\u0092",
             "\1\u0093",
             "\1\u0094",
-            "\1\u0095",
-            "\1\u0096",
-            "\1\u0097",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "\1\u0096",
+            "\1\u0097",
+            "\1\u0098",
             "\1\u0099",
             "\1\u009a",
             "\1\u009b",
@@ -3099,10 +3097,10 @@
             "\1\u00a1",
             "\1\u00a2",
             "\1\u00a3",
+            "\1\u00a4",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "",
-            "\1\u00a5",
             "\1\u00a6",
             "\1\u00a7",
             "\1\u00a8",
@@ -3112,9 +3110,9 @@
             "\1\u00ab",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
-            "\1\u00ad",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "\1\u00ae",
             "\1\u00af",
             "\1\u00b0",
             "\1\u00b1",
@@ -3125,15 +3123,15 @@
             "\52",
             "\1\u00b5",
             "\1\u00b6",
-            "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\5\52\1\u00b7\24\52"+
+            "\1\u00b7",
+            "\1\u00b8",
+            "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\5\52\1\u00b9\24\52"+
             "\105\uffff\100\52",
-            "\1\u00b9",
-            "\1\u00ba",
             "\1\u00bb",
-            "\1\u00bc",
-            "\1\u00bd",
-            "\1\u00bf\6\uffff\1\u00be",
             "",
+            "\1\u00bc\6\uffff\1\u00bd",
+            "\1\u00be",
+            "\1\u00bf",
             "\1\u00c0",
             "\1\u00c1",
             "\1\u00c2",
@@ -3146,9 +3144,9 @@
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "\1\u00c9",
-            "",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "",
             "\1\u00cb",
             "\1\u00cc",
             "\1\u00cd",
@@ -3157,8 +3155,8 @@
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "",
-            "\1\u00d1",
             "",
+            "\1\u00d1",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "\1\u00d2",
@@ -3169,15 +3167,15 @@
             "\1\u00d5",
             "\1\u00d6",
             "\1\u00d7",
-            "",
             "\1\u00d8",
             "\1\u00d9",
+            "",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
-            "",
             "\1\u00db",
             "\1\u00dc",
             "\1\u00dd",
+            "",
             "\1\u00de",
             "\1\u00df",
             "\1\u00e0",
@@ -3204,19 +3202,19 @@
             "\52",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
-            "\1\u00f1",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "\1\u00f2",
             "\1\u00f3",
             "",
-            "\1\u00f4",
-            "\1\u00f5",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "\1\u00f5",
+            "\1\u00f6",
             "\1\u00f7",
             "\1\u00f8",
-            "\1\u00f9",
-            "\1\u00fa\21\uffff\1\u00fb",
+            "\1\u00fa\21\uffff\1\u00f9",
+            "\1\u00fb",
             "\1\u00fc",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
@@ -3234,18 +3232,18 @@
             "\52",
             "",
             "",
-            "\1\u0108",
             "",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "\1\u0109",
+            "",
             "\1\u010a",
             "\1\u010b",
-            "",
             "\1\u010c",
             "",
-            "\1\u010d",
             "",
             "",
+            "\1\u010d",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "",
@@ -3256,16 +3254,16 @@
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "\1\u0113",
-            "\1\u0114",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "\1\u0115",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "",
-            "\1\u0118",
             "",
+            "\1\u0118",
             "\1\u0119",
             "\1\u011a",
             "\1\u011b",
@@ -3280,12 +3278,12 @@
             "",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
+            "",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "",
             "",
             "",
-            "",
             "\1\u0121",
             "\1\u0122",
             "\1\u0123",
@@ -3294,9 +3292,9 @@
             "",
             "",
             "",
+            "\1\u0124",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
-            "\1\u0125",
             "\12\52\7\uffff\32\52\4\uffff\1\52\1\uffff\32\52\105\uffff\100"+
             "\52",
             "",

Modified: labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLParser.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLParser.java	2007-08-16 07:03:30 UTC (rev 14295)
+++ labs/jbossrules/trunk/drools-compiler/src/main/java/org/drools/lang/DRLParser.java	2007-08-16 07:20:31 UTC (rev 14296)
@@ -1,4 +1,4 @@
-// $ANTLR 3.0 /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g 2007-08-01 10:32:36
+// $ANTLR 3.0 /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g 2007-08-16 17:08:33
 
 	package org.drools.lang;
 	import java.util.List;
@@ -17,76 +17,76 @@
 import java.util.HashMap;
 public class DRLParser extends Parser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "ATTRIBUTES", "PACKAGE", "IMPORT", "FUNCTION", "ID", "DOT", "GLOBAL", "LEFT_PAREN", "COMMA", "RIGHT_PAREN", "QUERY", "END", "TEMPLATE", "RULE", "WHEN", "DATE_EFFECTIVE", "STRING", "DATE_EXPIRES", "ENABLED", "BOOL", "SALIENCE", "INT", "NO_LOOP", "AUTO_FOCUS", "ACTIVATION_GROUP", "RULEFLOW_GROUP", "AGENDA_GROUP", "DURATION", "DIALECT", "LOCK_ON_ACTIVE", "OR", "DOUBLE_PIPE", "AND", "DOUBLE_AMPER", "FROM", "EXISTS", "NOT", "EVAL", "FORALL", "ACCUMULATE", "INIT", "ACTION", "REVERSE", "RESULT", "COLLECT", "CONTAINS", "EXCLUDES", "MATCHES", "MEMBEROF", "IN", "FLOAT", "NULL", "LEFT_CURLY", "RIGHT_CURLY", "LEFT_SQUARE", "RIGHT_SQUARE", "THEN", "EOL", "WS", "EscapeSequence", "HexDigit", "UnicodeEscape", "OctalEscape", "SH_STYLE_SINGLE_LINE_COMMENT", "C_STYLE_SINGLE_LINE_COMMENT", "MULTI_LINE_COMMENT", "MISC", "';'", "':'", "'.*'", "'->'", "'=='", "'>'", "'>='", "'<'", "'<='", "'!='"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "PACKAGE", "IMPORT", "FUNCTION", "ID", "DOT", "GLOBAL", "LEFT_PAREN", "COMMA", "RIGHT_PAREN", "QUERY", "END", "TEMPLATE", "RULE", "WHEN", "ATTRIBUTES", "DATE_EFFECTIVE", "STRING", "DATE_EXPIRES", "ENABLED", "BOOL", "SALIENCE", "INT", "NO_LOOP", "AUTO_FOCUS", "ACTIVATION_GROUP", "RULEFLOW_GROUP", "AGENDA_GROUP", "DURATION", "DIALECT", "LOCK_ON_ACTIVE", "OR", "DOUBLE_PIPE", "AND", "DOUBLE_AMPER", "FROM", "EXISTS", "NOT", "EVAL", "FORALL", "ACCUMULATE", "INIT", "ACTION", "REVERSE", "RESULT", "COLLECT", "CONTAINS", "EXCLUDES", "MATCHES", "MEMBEROF", "IN", "FLOAT", "NULL", "LEFT_CURLY", "RIGHT_CURLY", "LEFT_SQUARE", "RIGHT_SQUARE", "THEN", "EOL", "WS", "EscapeSequence", "HexDigit", "UnicodeEscape", "OctalEscape", "SH_STYLE_SINGLE_LINE_COMMENT", "C_STYLE_SINGLE_LINE_COMMENT", "MULTI_LINE_COMMENT", "MISC", "';'", "'.*'", "':'", "'->'", "'=='", "'>'", "'>='", "'<'", "'<='", "'!='"
     };
-    public static final int COMMA=12;
-    public static final int EXISTS=39;
-    public static final int AUTO_FOCUS=27;
-    public static final int END=15;
-    public static final int HexDigit=64;
-    public static final int FORALL=42;
-    public static final int TEMPLATE=16;
-    public static final int MISC=70;
-    public static final int FLOAT=54;
-    public static final int QUERY=14;
-    public static final int THEN=60;
-    public static final int RULE=17;
-    public static final int INIT=44;
-    public static final int IMPORT=6;
-    public static final int DATE_EFFECTIVE=19;
-    public static final int PACKAGE=5;
-    public static final int OR=34;
-    public static final int DOT=9;
-    public static final int DOUBLE_PIPE=35;
-    public static final int AND=36;
-    public static final int FUNCTION=7;
-    public static final int GLOBAL=10;
-    public static final int EscapeSequence=63;
+    public static final int PACKAGE=4;
+    public static final int FUNCTION=6;
+    public static final int ACCUMULATE=43;
+    public static final int RIGHT_SQUARE=59;
+    public static final int ACTIVATION_GROUP=28;
+    public static final int RIGHT_CURLY=57;
+    public static final int ATTRIBUTES=18;
     public static final int DIALECT=32;
-    public static final int INT=25;
-    public static final int LOCK_ON_ACTIVE=33;
-    public static final int DATE_EXPIRES=21;
-    public static final int LEFT_SQUARE=58;
     public static final int CONTAINS=49;
+    public static final int NO_LOOP=26;
+    public static final int MEMBEROF=52;
+    public static final int LOCK_ON_ACTIVE=33;
+    public static final int AGENDA_GROUP=30;
+    public static final int FLOAT=54;
     public static final int SH_STYLE_SINGLE_LINE_COMMENT=67;
-    public static final int ATTRIBUTES=4;
-    public static final int LEFT_CURLY=56;
-    public static final int RESULT=47;
-    public static final int ID=8;
-    public static final int FROM=38;
-    public static final int LEFT_PAREN=11;
-    public static final int ACTIVATION_GROUP=28;
+    public static final int NOT=40;
+    public static final int ID=7;
+    public static final int AND=36;
+    public static final int EOF=-1;
+    public static final int HexDigit=64;
+    public static final int DATE_EFFECTIVE=19;
+    public static final int ACTION=45;
+    public static final int DOUBLE_PIPE=35;
+    public static final int RIGHT_PAREN=12;
+    public static final int IMPORT=5;
+    public static final int EOL=61;
     public static final int DOUBLE_AMPER=37;
-    public static final int RIGHT_CURLY=57;
+    public static final int THEN=60;
+    public static final int IN=53;
+    public static final int MATCHES=51;
+    public static final int COMMA=11;
+    public static final int ENABLED=22;
+    public static final int EXISTS=39;
+    public static final int DOT=8;
+    public static final int RULE=16;
     public static final int EXCLUDES=50;
+    public static final int AUTO_FOCUS=27;
+    public static final int NULL=55;
     public static final int BOOL=23;
-    public static final int MEMBEROF=52;
-    public static final int WHEN=18;
+    public static final int FORALL=42;
+    public static final int SALIENCE=24;
     public static final int RULEFLOW_GROUP=29;
-    public static final int WS=62;
-    public static final int STRING=20;
-    public static final int ACTION=45;
-    public static final int COLLECT=48;
-    public static final int IN=53;
-    public static final int REVERSE=46;
-    public static final int NO_LOOP=26;
-    public static final int ACCUMULATE=43;
-    public static final int UnicodeEscape=65;
+    public static final int RESULT=47;
+    public static final int INT=25;
+    public static final int MULTI_LINE_COMMENT=69;
     public static final int DURATION=31;
+    public static final int WS=62;
+    public static final int TEMPLATE=15;
     public static final int EVAL=41;
-    public static final int MATCHES=51;
-    public static final int EOF=-1;
-    public static final int EOL=61;
-    public static final int NULL=55;
-    public static final int AGENDA_GROUP=30;
+    public static final int WHEN=17;
+    public static final int UnicodeEscape=65;
+    public static final int LEFT_CURLY=56;
+    public static final int OR=34;
+    public static final int LEFT_PAREN=10;
+    public static final int QUERY=13;
+    public static final int MISC=70;
+    public static final int REVERSE=46;
+    public static final int END=14;
+    public static final int GLOBAL=9;
+    public static final int FROM=38;
+    public static final int COLLECT=48;
+    public static final int LEFT_SQUARE=58;
+    public static final int INIT=44;
     public static final int OctalEscape=66;
-    public static final int SALIENCE=24;
-    public static final int MULTI_LINE_COMMENT=69;
-    public static final int RIGHT_PAREN=13;
-    public static final int NOT=40;
-    public static final int ENABLED=22;
-    public static final int RIGHT_SQUARE=59;
+    public static final int EscapeSequence=63;
     public static final int C_STYLE_SINGLE_LINE_COMMENT=68;
+    public static final int STRING=20;
+    public static final int DATE_EXPIRES=21;
 
         public DRLParser(TokenStream input) {
             super(input);
@@ -95,7 +95,7 @@
         
 
     public String[] getTokenNames() { return tokenNames; }
-    public String getGrammarFileName() { return "/home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g"; }
+    public String getGrammarFileName() { return "/home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g"; }
 
 
     	private PackageDescr packageDescr;
@@ -273,13 +273,13 @@
 
 
     // $ANTLR start opt_semicolon
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:191:1: opt_semicolon : ( ';' )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:191:1: opt_semicolon : ( ';' )? ;
     public final void opt_semicolon() throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:4: ( ( ';' )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:4: ( ';' )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:2: ( ( ';' )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:4: ( ';' )?
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:4: ( ';' )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:4: ( ';' )?
             int alt1=2;
             int LA1_0 = input.LA(1);
 
@@ -288,7 +288,7 @@
             }
             switch (alt1) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:4: ';'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:192:4: ';'
                     {
                     match(input,71,FOLLOW_71_in_opt_semicolon39); if (failed) return ;
 
@@ -313,35 +313,35 @@
 
 
     // $ANTLR start compilation_unit
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:195:1: compilation_unit : prolog ( statement )+ EOF ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:195:1: compilation_unit : prolog ( statement )+ EOF ;
     public final void compilation_unit() throws RecognitionException {
 
         		// reset Location information
         		this.location = new Location( Location.LOCATION_UNKNOWN );
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:200:4: ( prolog ( statement )+ EOF )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:200:4: prolog ( statement )+ EOF
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:200:2: ( prolog ( statement )+ EOF )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:200:4: prolog ( statement )+ EOF
             {
             pushFollow(FOLLOW_prolog_in_compilation_unit57);
             prolog();
             _fsp--;
             if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:201:3: ( statement )+
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:201:3: ( statement )+
             int cnt2=0;
             loop2:
             do {
                 int alt2=2;
                 int LA2_0 = input.LA(1);
 
-                if ( ((LA2_0>=IMPORT && LA2_0<=FUNCTION)||LA2_0==GLOBAL||LA2_0==QUERY||(LA2_0>=TEMPLATE && LA2_0<=RULE)) ) {
+                if ( ((LA2_0>=IMPORT && LA2_0<=FUNCTION)||LA2_0==GLOBAL||LA2_0==QUERY||(LA2_0>=TEMPLATE && LA2_0<=RULE)||LA2_0==DATE_EFFECTIVE||(LA2_0>=DATE_EXPIRES && LA2_0<=ENABLED)||LA2_0==SALIENCE||(LA2_0>=NO_LOOP && LA2_0<=LOCK_ON_ACTIVE)) ) {
                     alt2=1;
                 }
 
 
                 switch (alt2) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:201:3: statement
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:201:3: statement
             	    {
             	    pushFollow(FOLLOW_statement_in_compilation_unit62);
             	    statement();
@@ -379,21 +379,19 @@
 
 
     // $ANTLR start prolog
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:208:1: prolog : (pkgstmt= package_statement )? ( ATTRIBUTES ':' )? (a= rule_attribute ( ( ',' )? a= rule_attribute )* )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:208:1: prolog : (pkgstmt= package_statement )? ;
     public final void prolog() throws RecognitionException {
         String pkgstmt = null;
 
-        AttributeDescr a = null;
 
 
-
         		String packageName = "";
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:4: ( (pkgstmt= package_statement )? ( ATTRIBUTES ':' )? (a= rule_attribute ( ( ',' )? a= rule_attribute )* )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:4: (pkgstmt= package_statement )? ( ATTRIBUTES ':' )? (a= rule_attribute ( ( ',' )? a= rule_attribute )* )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:2: ( (pkgstmt= package_statement )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:4: (pkgstmt= package_statement )?
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:4: (pkgstmt= package_statement )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:4: (pkgstmt= package_statement )?
             int alt3=2;
             int LA3_0 = input.LA(1);
 
@@ -402,7 +400,7 @@
             }
             switch (alt3) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:6: pkgstmt= package_statement
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:212:6: pkgstmt= package_statement
                     {
                     pushFollow(FOLLOW_package_statement_in_prolog96);
                     pkgstmt=package_statement();
@@ -422,105 +420,9 @@
               			this.packageDescr = factory.createPackage( packageName ); 
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:216:3: ( ATTRIBUTES ':' )?
-            int alt4=2;
-            int LA4_0 = input.LA(1);
 
-            if ( (LA4_0==ATTRIBUTES) ) {
-                alt4=1;
             }
-            switch (alt4) {
-                case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:216:4: ATTRIBUTES ':'
-                    {
-                    match(input,ATTRIBUTES,FOLLOW_ATTRIBUTES_in_prolog110); if (failed) return ;
-                    match(input,72,FOLLOW_72_in_prolog112); if (failed) return ;
 
-                    }
-                    break;
-
-            }
-
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:217:3: (a= rule_attribute ( ( ',' )? a= rule_attribute )* )?
-            int alt7=2;
-            int LA7_0 = input.LA(1);
-
-            if ( (LA7_0==DATE_EFFECTIVE||(LA7_0>=DATE_EXPIRES && LA7_0<=ENABLED)||LA7_0==SALIENCE||(LA7_0>=NO_LOOP && LA7_0<=LOCK_ON_ACTIVE)) ) {
-                alt7=1;
-            }
-            switch (alt7) {
-                case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:217:5: a= rule_attribute ( ( ',' )? a= rule_attribute )*
-                    {
-                    pushFollow(FOLLOW_rule_attribute_in_prolog122);
-                    a=rule_attribute();
-                    _fsp--;
-                    if (failed) return ;
-                    if ( backtracking==0 ) {
-
-                       	  	        	this.packageDescr.addAttribute( a );
-                      	                
-                    }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:221:6: ( ( ',' )? a= rule_attribute )*
-                    loop6:
-                    do {
-                        int alt6=2;
-                        int LA6_0 = input.LA(1);
-
-                        if ( (LA6_0==COMMA||LA6_0==DATE_EFFECTIVE||(LA6_0>=DATE_EXPIRES && LA6_0<=ENABLED)||LA6_0==SALIENCE||(LA6_0>=NO_LOOP && LA6_0<=LOCK_ON_ACTIVE)) ) {
-                            alt6=1;
-                        }
-
-
-                        switch (alt6) {
-                    	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:221:14: ( ',' )? a= rule_attribute
-                    	    {
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:221:14: ( ',' )?
-                    	    int alt5=2;
-                    	    int LA5_0 = input.LA(1);
-
-                    	    if ( (LA5_0==COMMA) ) {
-                    	        alt5=1;
-                    	    }
-                    	    switch (alt5) {
-                    	        case 1 :
-                    	            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:221:14: ','
-                    	            {
-                    	            match(input,COMMA,FOLLOW_COMMA_in_prolog145); if (failed) return ;
-
-                    	            }
-                    	            break;
-
-                    	    }
-
-                    	    pushFollow(FOLLOW_rule_attribute_in_prolog150);
-                    	    a=rule_attribute();
-                    	    _fsp--;
-                    	    if (failed) return ;
-                    	    if ( backtracking==0 ) {
-
-                    	       	  	        	this.packageDescr.addAttribute( a );
-                    	      	                
-                    	    }
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop6;
-                        }
-                    } while (true);
-
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
         }
         catch (RecognitionException re) {
             reportError(re);
@@ -533,53 +435,11 @@
     // $ANTLR end prolog
 
 
-    // $ANTLR start package_statement
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:228:1: package_statement returns [String packageName] : PACKAGE n= dotted_name opt_semicolon ;
-    public final String package_statement() throws RecognitionException {
-        String packageName = null;
-
-        String n = null;
-
-
-
-        		packageName = null;
-        	
-        try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:233:3: ( PACKAGE n= dotted_name opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:233:3: PACKAGE n= dotted_name opt_semicolon
-            {
-            match(input,PACKAGE,FOLLOW_PACKAGE_in_package_statement194); if (failed) return packageName;
-            pushFollow(FOLLOW_dotted_name_in_package_statement198);
-            n=dotted_name();
-            _fsp--;
-            if (failed) return packageName;
-            pushFollow(FOLLOW_opt_semicolon_in_package_statement200);
-            opt_semicolon();
-            _fsp--;
-            if (failed) return packageName;
-            if ( backtracking==0 ) {
-
-              			packageName = n;
-              		
-            }
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-        finally {
-        }
-        return packageName;
-    }
-    // $ANTLR end package_statement
-
-
     // $ANTLR start statement
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:238:1: statement : ( function_import_statement | import_statement | global | function | t= template | r= rule | q= query );
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:219:1: statement : (a= rule_attribute | function_import_statement | import_statement | global | function | t= template | r= rule | q= query );
     public final void statement() throws RecognitionException {
+        AttributeDescr a = null;
+
         FactTemplateDescr t = null;
 
         RuleDescr r = null;
@@ -588,23 +448,39 @@
 
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:239:4: ( function_import_statement | import_statement | global | function | t= template | r= rule | q= query )
-            int alt8=7;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:220:2: (a= rule_attribute | function_import_statement | import_statement | global | function | t= template | r= rule | q= query )
+            int alt4=8;
             switch ( input.LA(1) ) {
+            case DATE_EFFECTIVE:
+            case DATE_EXPIRES:
+            case ENABLED:
+            case SALIENCE:
+            case NO_LOOP:
+            case AUTO_FOCUS:
+            case ACTIVATION_GROUP:
+            case RULEFLOW_GROUP:
+            case AGENDA_GROUP:
+            case DURATION:
+            case DIALECT:
+            case LOCK_ON_ACTIVE:
+                {
+                alt4=1;
+                }
+                break;
             case IMPORT:
                 {
-                int LA8_1 = input.LA(2);
+                int LA4_2 = input.LA(2);
 
-                if ( (LA8_1==FUNCTION) ) {
-                    alt8=1;
+                if ( (LA4_2==FUNCTION) ) {
+                    alt4=2;
                 }
-                else if ( (LA8_1==ID) ) {
-                    alt8=2;
+                else if ( (LA4_2==ID) ) {
+                    alt4=3;
                 }
                 else {
                     if (backtracking>0) {failed=true; return ;}
                     NoViableAltException nvae =
-                        new NoViableAltException("238:1: statement : ( function_import_statement | import_statement | global | function | t= template | r= rule | q= query );", 8, 1, input);
+                        new NoViableAltException("219:1: statement : (a= rule_attribute | function_import_statement | import_statement | global | function | t= template | r= rule | q= query );", 4, 2, input);
 
                     throw nvae;
                 }
@@ -612,82 +488,95 @@
                 break;
             case GLOBAL:
                 {
-                alt8=3;
+                alt4=4;
                 }
                 break;
             case FUNCTION:
                 {
-                alt8=4;
+                alt4=5;
                 }
                 break;
             case TEMPLATE:
                 {
-                alt8=5;
+                alt4=6;
                 }
                 break;
             case RULE:
                 {
-                alt8=6;
+                alt4=7;
                 }
                 break;
             case QUERY:
                 {
-                alt8=7;
+                alt4=8;
                 }
                 break;
             default:
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("238:1: statement : ( function_import_statement | import_statement | global | function | t= template | r= rule | q= query );", 8, 0, input);
+                    new NoViableAltException("219:1: statement : (a= rule_attribute | function_import_statement | import_statement | global | function | t= template | r= rule | q= query );", 4, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt8) {
+            switch (alt4) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:239:4: function_import_statement
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:220:4: a= rule_attribute
                     {
-                    pushFollow(FOLLOW_function_import_statement_in_statement214);
-                    function_import_statement();
+                    pushFollow(FOLLOW_rule_attribute_in_statement121);
+                    a=rule_attribute();
                     _fsp--;
                     if (failed) return ;
+                    if ( backtracking==0 ) {
+                       this.packageDescr.addAttribute( a ); 
+                    }
 
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:240:4: import_statement
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:221:4: function_import_statement
                     {
-                    pushFollow(FOLLOW_import_statement_in_statement220);
-                    import_statement();
+                    pushFollow(FOLLOW_function_import_statement_in_statement128);
+                    function_import_statement();
                     _fsp--;
                     if (failed) return ;
 
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:241:4: global
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:222:4: import_statement
                     {
-                    pushFollow(FOLLOW_global_in_statement226);
-                    global();
+                    pushFollow(FOLLOW_import_statement_in_statement134);
+                    import_statement();
                     _fsp--;
                     if (failed) return ;
 
                     }
                     break;
                 case 4 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:242:4: function
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:223:4: global
                     {
-                    pushFollow(FOLLOW_function_in_statement232);
-                    function();
+                    pushFollow(FOLLOW_global_in_statement140);
+                    global();
                     _fsp--;
                     if (failed) return ;
 
                     }
                     break;
                 case 5 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:243:10: t= template
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:224:4: function
                     {
-                    pushFollow(FOLLOW_template_in_statement246);
+                    pushFollow(FOLLOW_function_in_statement146);
+                    function();
+                    _fsp--;
+                    if (failed) return ;
+
+                    }
+                    break;
+                case 6 :
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:225:10: t= template
+                    {
+                    pushFollow(FOLLOW_template_in_statement160);
                     t=template();
                     _fsp--;
                     if (failed) return ;
@@ -697,10 +586,10 @@
 
                     }
                     break;
-                case 6 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:244:4: r= rule
+                case 7 :
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:226:4: r= rule
                     {
-                    pushFollow(FOLLOW_rule_in_statement255);
+                    pushFollow(FOLLOW_rule_in_statement169);
                     r=rule();
                     _fsp--;
                     if (failed) return ;
@@ -710,10 +599,10 @@
 
                     }
                     break;
-                case 7 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:245:4: q= query
+                case 8 :
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:227:4: q= query
                     {
-                    pushFollow(FOLLOW_query_in_statement267);
+                    pushFollow(FOLLOW_query_in_statement181);
                     q=query();
                     _fsp--;
                     if (failed) return ;
@@ -737,8 +626,52 @@
     // $ANTLR end statement
 
 
+    // $ANTLR start package_statement
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:229:1: package_statement returns [String packageName] : PACKAGE n= dotted_name opt_semicolon ;
+    public final String package_statement() throws RecognitionException {
+        String packageName = null;
+
+        String n = null;
+
+
+
+        		packageName = null;
+        	
+        try {
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:233:2: ( PACKAGE n= dotted_name opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:234:3: PACKAGE n= dotted_name opt_semicolon
+            {
+            match(input,PACKAGE,FOLLOW_PACKAGE_in_package_statement205); if (failed) return packageName;
+            pushFollow(FOLLOW_dotted_name_in_package_statement209);
+            n=dotted_name();
+            _fsp--;
+            if (failed) return packageName;
+            pushFollow(FOLLOW_opt_semicolon_in_package_statement211);
+            opt_semicolon();
+            _fsp--;
+            if (failed) return packageName;
+            if ( backtracking==0 ) {
+
+              			packageName = n;
+              		
+            }
+
+            }
+
+        }
+        catch (RecognitionException re) {
+            reportError(re);
+            recover(input,re);
+        }
+        finally {
+        }
+        return packageName;
+    }
+    // $ANTLR end package_statement
+
+
     // $ANTLR start import_statement
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:250:1: import_statement : IMPORT import_name[importDecl] opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:242:1: import_statement : IMPORT import_name[importDecl] opt_semicolon ;
     public final void import_statement() throws RecognitionException {
         Token IMPORT1=null;
 
@@ -746,11 +679,11 @@
                 	ImportDescr importDecl = null;
                 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:254:4: ( IMPORT import_name[importDecl] opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:254:4: IMPORT import_name[importDecl] opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:246:2: ( IMPORT import_name[importDecl] opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:246:4: IMPORT import_name[importDecl] opt_semicolon
             {
             IMPORT1=(Token)input.LT(1);
-            match(input,IMPORT,FOLLOW_IMPORT_in_import_statement296); if (failed) return ;
+            match(input,IMPORT,FOLLOW_IMPORT_in_import_statement242); if (failed) return ;
             if ( backtracking==0 ) {
 
               	            importDecl = factory.createImport( );
@@ -760,11 +693,11 @@
               		    }
               	        
             }
-            pushFollow(FOLLOW_import_name_in_import_statement319);
+            pushFollow(FOLLOW_import_name_in_import_statement265);
             import_name(importDecl);
             _fsp--;
             if (failed) return ;
-            pushFollow(FOLLOW_opt_semicolon_in_import_statement322);
+            pushFollow(FOLLOW_opt_semicolon_in_import_statement268);
             opt_semicolon();
             _fsp--;
             if (failed) return ;
@@ -784,7 +717,7 @@
 
 
     // $ANTLR start function_import_statement
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:265:1: function_import_statement : IMPORT FUNCTION import_name[importDecl] opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:257:1: function_import_statement : IMPORT FUNCTION import_name[importDecl] opt_semicolon ;
     public final void function_import_statement() throws RecognitionException {
         Token IMPORT2=null;
 
@@ -792,12 +725,12 @@
                 	FunctionImportDescr importDecl = null;
                 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:269:4: ( IMPORT FUNCTION import_name[importDecl] opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:269:4: IMPORT FUNCTION import_name[importDecl] opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:261:2: ( IMPORT FUNCTION import_name[importDecl] opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:261:4: IMPORT FUNCTION import_name[importDecl] opt_semicolon
             {
             IMPORT2=(Token)input.LT(1);
-            match(input,IMPORT,FOLLOW_IMPORT_in_function_import_statement346); if (failed) return ;
-            match(input,FUNCTION,FOLLOW_FUNCTION_in_function_import_statement348); if (failed) return ;
+            match(input,IMPORT,FOLLOW_IMPORT_in_function_import_statement292); if (failed) return ;
+            match(input,FUNCTION,FOLLOW_FUNCTION_in_function_import_statement294); if (failed) return ;
             if ( backtracking==0 ) {
 
               	            importDecl = factory.createFunctionImport();
@@ -807,11 +740,11 @@
               		    }
               	        
             }
-            pushFollow(FOLLOW_import_name_in_function_import_statement371);
+            pushFollow(FOLLOW_import_name_in_function_import_statement317);
             import_name(importDecl);
             _fsp--;
             if (failed) return ;
-            pushFollow(FOLLOW_opt_semicolon_in_function_import_statement374);
+            pushFollow(FOLLOW_opt_semicolon_in_function_import_statement320);
             opt_semicolon();
             _fsp--;
             if (failed) return ;
@@ -831,7 +764,7 @@
 
 
     // $ANTLR start import_name
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:281:1: import_name[ImportDescr importDecl] returns [String name] : ID ( DOT id= identifier )* (star= '.*' )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:273:1: import_name[ImportDescr importDecl] returns [String name] : ID ( DOT id= identifier )* (star= '.*' )? ;
     public final String import_name(ImportDescr importDecl) throws RecognitionException {
         String name = null;
 
@@ -845,11 +778,11 @@
         		name = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:286:3: ( ID ( DOT id= identifier )* (star= '.*' )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:286:3: ID ( DOT id= identifier )* (star= '.*' )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:277:2: ( ID ( DOT id= identifier )* (star= '.*' )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:278:3: ID ( DOT id= identifier )* (star= '.*' )?
             {
             ID3=(Token)input.LT(1);
-            match(input,ID,FOLLOW_ID_in_import_name400); if (failed) return name;
+            match(input,ID,FOLLOW_ID_in_import_name346); if (failed) return name;
             if ( backtracking==0 ) {
                
               		    name =ID3.getText(); 
@@ -857,24 +790,24 @@
               		    importDecl.setEndCharacter( ((CommonToken)ID3).getStopIndex() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:292:3: ( DOT id= identifier )*
-            loop9:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:284:3: ( DOT id= identifier )*
+            loop5:
             do {
-                int alt9=2;
-                int LA9_0 = input.LA(1);
+                int alt5=2;
+                int LA5_0 = input.LA(1);
 
-                if ( (LA9_0==DOT) ) {
-                    alt9=1;
+                if ( (LA5_0==DOT) ) {
+                    alt5=1;
                 }
 
 
-                switch (alt9) {
+                switch (alt5) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:292:5: DOT id= identifier
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:284:5: DOT id= identifier
             	    {
             	    DOT4=(Token)input.LT(1);
-            	    match(input,DOT,FOLLOW_DOT_in_import_name412); if (failed) return name;
-            	    pushFollow(FOLLOW_identifier_in_import_name416);
+            	    match(input,DOT,FOLLOW_DOT_in_import_name358); if (failed) return name;
+            	    pushFollow(FOLLOW_identifier_in_import_name362);
             	    id=identifier();
             	    _fsp--;
             	    if (failed) return name;
@@ -890,23 +823,23 @@
             	    break;
 
             	default :
-            	    break loop9;
+            	    break loop5;
                 }
             } while (true);
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:299:3: (star= '.*' )?
-            int alt10=2;
-            int LA10_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:291:3: (star= '.*' )?
+            int alt6=2;
+            int LA6_0 = input.LA(1);
 
-            if ( (LA10_0==73) ) {
-                alt10=1;
+            if ( (LA6_0==72) ) {
+                alt6=1;
             }
-            switch (alt10) {
+            switch (alt6) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:299:5: star= '.*'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:291:5: star= '.*'
                     {
                     star=(Token)input.LT(1);
-                    match(input,73,FOLLOW_73_in_import_name440); if (failed) return name;
+                    match(input,72,FOLLOW_72_in_import_name386); if (failed) return name;
                     if ( backtracking==0 ) {
                        
                       		        name = name + star.getText(); 
@@ -936,7 +869,7 @@
 
 
     // $ANTLR start global
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:309:1: global : GLOBAL type= dotted_name id= identifier opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:301:1: global : GLOBAL type= dotted_name id= identifier opt_semicolon ;
     public final void global() throws RecognitionException {
         Token GLOBAL5=null;
         String type = null;
@@ -948,11 +881,11 @@
         	    GlobalDescr global = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:314:3: ( GLOBAL type= dotted_name id= identifier opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:314:3: GLOBAL type= dotted_name id= identifier opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:305:2: ( GLOBAL type= dotted_name id= identifier opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:306:3: GLOBAL type= dotted_name id= identifier opt_semicolon
             {
             GLOBAL5=(Token)input.LT(1);
-            match(input,GLOBAL,FOLLOW_GLOBAL_in_global474); if (failed) return ;
+            match(input,GLOBAL,FOLLOW_GLOBAL_in_global420); if (failed) return ;
             if ( backtracking==0 ) {
 
               		    global = factory.createGlobal();
@@ -960,7 +893,7 @@
               		    packageDescr.addGlobal( global );
               		
             }
-            pushFollow(FOLLOW_dotted_name_in_global485);
+            pushFollow(FOLLOW_dotted_name_in_global431);
             type=dotted_name();
             _fsp--;
             if (failed) return ;
@@ -969,11 +902,11 @@
               		    global.setType( type );
               		
             }
-            pushFollow(FOLLOW_identifier_in_global496);
+            pushFollow(FOLLOW_identifier_in_global442);
             id=identifier();
             _fsp--;
             if (failed) return ;
-            pushFollow(FOLLOW_opt_semicolon_in_global498);
+            pushFollow(FOLLOW_opt_semicolon_in_global444);
             opt_semicolon();
             _fsp--;
             if (failed) return ;
@@ -999,7 +932,7 @@
 
 
     // $ANTLR start function
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:332:1: function : FUNCTION (retType= dotted_name )? id= identifier LEFT_PAREN ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )? RIGHT_PAREN body= curly_chunk ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:324:1: function : FUNCTION (retType= dotted_name )? id= identifier LEFT_PAREN ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )? RIGHT_PAREN body= curly_chunk ;
     public final void function() throws RecognitionException {
         Token FUNCTION6=null;
         String retType = null;
@@ -1018,27 +951,27 @@
         		String type = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:338:3: ( FUNCTION (retType= dotted_name )? id= identifier LEFT_PAREN ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )? RIGHT_PAREN body= curly_chunk )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:338:3: FUNCTION (retType= dotted_name )? id= identifier LEFT_PAREN ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )? RIGHT_PAREN body= curly_chunk
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:329:2: ( FUNCTION (retType= dotted_name )? id= identifier LEFT_PAREN ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )? RIGHT_PAREN body= curly_chunk )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:330:3: FUNCTION (retType= dotted_name )? id= identifier LEFT_PAREN ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )? RIGHT_PAREN body= curly_chunk
             {
             FUNCTION6=(Token)input.LT(1);
-            match(input,FUNCTION,FOLLOW_FUNCTION_in_function523); if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:338:19: (retType= dotted_name )?
-            int alt11=2;
-            int LA11_0 = input.LA(1);
+            match(input,FUNCTION,FOLLOW_FUNCTION_in_function469); if (failed) return ;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:330:19: (retType= dotted_name )?
+            int alt7=2;
+            int LA7_0 = input.LA(1);
 
-            if ( ((LA11_0>=ATTRIBUTES && LA11_0<=ID)||LA11_0==GLOBAL||(LA11_0>=QUERY && LA11_0<=WHEN)||LA11_0==ENABLED||LA11_0==SALIENCE||(LA11_0>=DURATION && LA11_0<=DIALECT)||LA11_0==FROM||(LA11_0>=INIT && LA11_0<=RESULT)||(LA11_0>=CONTAINS && LA11_0<=IN)||LA11_0==THEN) ) {
-                int LA11_1 = input.LA(2);
+            if ( ((LA7_0>=PACKAGE && LA7_0<=ID)||LA7_0==GLOBAL||(LA7_0>=QUERY && LA7_0<=ATTRIBUTES)||LA7_0==ENABLED||LA7_0==SALIENCE||(LA7_0>=DURATION && LA7_0<=DIALECT)||LA7_0==FROM||(LA7_0>=INIT && LA7_0<=RESULT)||(LA7_0>=CONTAINS && LA7_0<=IN)||LA7_0==THEN) ) {
+                int LA7_1 = input.LA(2);
 
-                if ( ((LA11_1>=ATTRIBUTES && LA11_1<=GLOBAL)||(LA11_1>=QUERY && LA11_1<=WHEN)||LA11_1==ENABLED||LA11_1==SALIENCE||(LA11_1>=DURATION && LA11_1<=DIALECT)||LA11_1==FROM||(LA11_1>=INIT && LA11_1<=RESULT)||(LA11_1>=CONTAINS && LA11_1<=IN)||LA11_1==LEFT_SQUARE||LA11_1==THEN) ) {
-                    alt11=1;
+                if ( ((LA7_1>=PACKAGE && LA7_1<=GLOBAL)||(LA7_1>=QUERY && LA7_1<=ATTRIBUTES)||LA7_1==ENABLED||LA7_1==SALIENCE||(LA7_1>=DURATION && LA7_1<=DIALECT)||LA7_1==FROM||(LA7_1>=INIT && LA7_1<=RESULT)||(LA7_1>=CONTAINS && LA7_1<=IN)||LA7_1==LEFT_SQUARE||LA7_1==THEN) ) {
+                    alt7=1;
                 }
             }
-            switch (alt11) {
+            switch (alt7) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:338:19: retType= dotted_name
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:330:19: retType= dotted_name
                     {
-                    pushFollow(FOLLOW_dotted_name_in_function527);
+                    pushFollow(FOLLOW_dotted_name_in_function473);
                     retType=dotted_name();
                     _fsp--;
                     if (failed) return ;
@@ -1048,7 +981,7 @@
 
             }
 
-            pushFollow(FOLLOW_identifier_in_function532);
+            pushFollow(FOLLOW_identifier_in_function478);
             id=identifier();
             _fsp--;
             if (failed) return ;
@@ -1062,26 +995,26 @@
               			packageDescr.addFunction( f );
               		
             }
-            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_function541); if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:348:4: ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )?
-            int alt15=2;
-            int LA15_0 = input.LA(1);
+            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_function487); if (failed) return ;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:340:4: ( (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )* )?
+            int alt11=2;
+            int LA11_0 = input.LA(1);
 
-            if ( ((LA15_0>=ATTRIBUTES && LA15_0<=ID)||LA15_0==GLOBAL||(LA15_0>=QUERY && LA15_0<=WHEN)||LA15_0==ENABLED||LA15_0==SALIENCE||(LA15_0>=DURATION && LA15_0<=DIALECT)||LA15_0==FROM||(LA15_0>=INIT && LA15_0<=RESULT)||(LA15_0>=CONTAINS && LA15_0<=IN)||LA15_0==THEN) ) {
-                alt15=1;
+            if ( ((LA11_0>=PACKAGE && LA11_0<=ID)||LA11_0==GLOBAL||(LA11_0>=QUERY && LA11_0<=ATTRIBUTES)||LA11_0==ENABLED||LA11_0==SALIENCE||(LA11_0>=DURATION && LA11_0<=DIALECT)||LA11_0==FROM||(LA11_0>=INIT && LA11_0<=RESULT)||(LA11_0>=CONTAINS && LA11_0<=IN)||LA11_0==THEN) ) {
+                alt11=1;
             }
-            switch (alt15) {
+            switch (alt11) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:348:6: (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )*
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:340:6: (paramType= dotted_name )? paramName= argument ( COMMA (paramType= dotted_name )? paramName= argument )*
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:348:15: (paramType= dotted_name )?
-                    int alt12=2;
-                    alt12 = dfa12.predict(input);
-                    switch (alt12) {
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:340:15: (paramType= dotted_name )?
+                    int alt8=2;
+                    alt8 = dfa8.predict(input);
+                    switch (alt8) {
                         case 1 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:348:15: paramType= dotted_name
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:340:15: paramType= dotted_name
                             {
-                            pushFollow(FOLLOW_dotted_name_in_function550);
+                            pushFollow(FOLLOW_dotted_name_in_function496);
                             paramType=dotted_name();
                             _fsp--;
                             if (failed) return ;
@@ -1091,7 +1024,7 @@
 
                     }
 
-                    pushFollow(FOLLOW_argument_in_function555);
+                    pushFollow(FOLLOW_argument_in_function501);
                     paramName=argument();
                     _fsp--;
                     if (failed) return ;
@@ -1101,30 +1034,30 @@
                       					f.addParameter( type, paramName );
                       				
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:353:5: ( COMMA (paramType= dotted_name )? paramName= argument )*
-                    loop14:
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:345:5: ( COMMA (paramType= dotted_name )? paramName= argument )*
+                    loop10:
                     do {
-                        int alt14=2;
-                        int LA14_0 = input.LA(1);
+                        int alt10=2;
+                        int LA10_0 = input.LA(1);
 
-                        if ( (LA14_0==COMMA) ) {
-                            alt14=1;
+                        if ( (LA10_0==COMMA) ) {
+                            alt10=1;
                         }
 
 
-                        switch (alt14) {
+                        switch (alt10) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:353:7: COMMA (paramType= dotted_name )? paramName= argument
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:345:7: COMMA (paramType= dotted_name )? paramName= argument
                     	    {
-                    	    match(input,COMMA,FOLLOW_COMMA_in_function569); if (failed) return ;
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:353:22: (paramType= dotted_name )?
-                    	    int alt13=2;
-                    	    alt13 = dfa13.predict(input);
-                    	    switch (alt13) {
+                    	    match(input,COMMA,FOLLOW_COMMA_in_function515); if (failed) return ;
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:345:22: (paramType= dotted_name )?
+                    	    int alt9=2;
+                    	    alt9 = dfa9.predict(input);
+                    	    switch (alt9) {
                     	        case 1 :
-                    	            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:353:22: paramType= dotted_name
+                    	            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:345:22: paramType= dotted_name
                     	            {
-                    	            pushFollow(FOLLOW_dotted_name_in_function573);
+                    	            pushFollow(FOLLOW_dotted_name_in_function519);
                     	            paramType=dotted_name();
                     	            _fsp--;
                     	            if (failed) return ;
@@ -1134,7 +1067,7 @@
 
                     	    }
 
-                    	    pushFollow(FOLLOW_argument_in_function578);
+                    	    pushFollow(FOLLOW_argument_in_function524);
                     	    paramName=argument();
                     	    _fsp--;
                     	    if (failed) return ;
@@ -1149,7 +1082,7 @@
                     	    break;
 
                     	default :
-                    	    break loop14;
+                    	    break loop10;
                         }
                     } while (true);
 
@@ -1159,8 +1092,8 @@
 
             }
 
-            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_function602); if (failed) return ;
-            pushFollow(FOLLOW_curly_chunk_in_function608);
+            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_function548); if (failed) return ;
+            pushFollow(FOLLOW_curly_chunk_in_function554);
             body=curly_chunk();
             _fsp--;
             if (failed) return ;
@@ -1186,7 +1119,7 @@
 
 
     // $ANTLR start argument
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:368:1: argument returns [String name] : id= identifier ( '[' ']' )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:360:1: argument returns [String name] : id= identifier ( '[' ']' )* ;
     public final String argument() throws RecognitionException {
         String name = null;
 
@@ -1197,33 +1130,33 @@
         		name = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:372:4: (id= identifier ( '[' ']' )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:372:4: id= identifier ( '[' ']' )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:364:2: (id= identifier ( '[' ']' )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:364:4: id= identifier ( '[' ']' )*
             {
-            pushFollow(FOLLOW_identifier_in_argument635);
+            pushFollow(FOLLOW_identifier_in_argument581);
             id=identifier();
             _fsp--;
             if (failed) return name;
             if ( backtracking==0 ) {
                name =input.toString(id.start,id.stop); 
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:372:38: ( '[' ']' )*
-            loop16:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:364:38: ( '[' ']' )*
+            loop12:
             do {
-                int alt16=2;
-                int LA16_0 = input.LA(1);
+                int alt12=2;
+                int LA12_0 = input.LA(1);
 
-                if ( (LA16_0==LEFT_SQUARE) ) {
-                    alt16=1;
+                if ( (LA12_0==LEFT_SQUARE) ) {
+                    alt12=1;
                 }
 
 
-                switch (alt16) {
+                switch (alt12) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:372:40: '[' ']'
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:364:40: '[' ']'
             	    {
-            	    match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_argument641); if (failed) return name;
-            	    match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_argument643); if (failed) return name;
+            	    match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_argument587); if (failed) return name;
+            	    match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_argument589); if (failed) return name;
             	    if ( backtracking==0 ) {
             	       name += "[]";
             	    }
@@ -1232,7 +1165,7 @@
             	    break;
 
             	default :
-            	    break loop16;
+            	    break loop12;
                 }
             } while (true);
 
@@ -1252,7 +1185,7 @@
 
 
     // $ANTLR start query
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:377:1: query returns [QueryDescr query] : QUERY queryName= name ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )? normal_lhs_block[lhs] END opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:369:1: query returns [QueryDescr query] : QUERY queryName= name ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )? normal_lhs_block[lhs] END opt_semicolon ;
     public final QueryDescr query() throws RecognitionException {
         QueryDescr query = null;
 
@@ -1272,12 +1205,12 @@
          
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:386:3: ( QUERY queryName= name ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )? normal_lhs_block[lhs] END opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:386:3: QUERY queryName= name ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )? normal_lhs_block[lhs] END opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:377:2: ( QUERY queryName= name ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )? normal_lhs_block[lhs] END opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:378:3: QUERY queryName= name ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )? normal_lhs_block[lhs] END opt_semicolon
             {
             QUERY7=(Token)input.LT(1);
-            match(input,QUERY,FOLLOW_QUERY_in_query673); if (failed) return query;
-            pushFollow(FOLLOW_name_in_query677);
+            match(input,QUERY,FOLLOW_QUERY_in_query619); if (failed) return query;
+            pushFollow(FOLLOW_name_in_query623);
             queryName=name();
             _fsp--;
             if (failed) return query;
@@ -1291,47 +1224,47 @@
                                       location.setType( Location.LOCATION_RULE_HEADER );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:395:3: ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )?
-            int alt21=2;
-            alt21 = dfa21.predict(input);
-            switch (alt21) {
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:387:3: ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )?
+            int alt17=2;
+            alt17 = dfa17.predict(input);
+            switch (alt17) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:395:5: LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:387:5: LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_query687); if (failed) return query;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:396:11: ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )?
-                    int alt20=2;
-                    int LA20_0 = input.LA(1);
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_query633); if (failed) return query;
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:388:11: ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )?
+                    int alt16=2;
+                    int LA16_0 = input.LA(1);
 
-                    if ( (LA20_0==ID) ) {
-                        alt20=1;
+                    if ( (LA16_0==ID) ) {
+                        alt16=1;
                     }
-                    switch (alt20) {
+                    switch (alt16) {
                         case 1 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:396:13: ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )*
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:388:13: ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )*
                             {
                             if ( backtracking==0 ) {
                                params = new ArrayList(); types = new ArrayList();
                             }
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:398:15: ( (paramType= qualified_id )? paramName= ID )
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:398:16: (paramType= qualified_id )? paramName= ID
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:390:15: ( (paramType= qualified_id )? paramName= ID )
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:390:16: (paramType= qualified_id )? paramName= ID
                             {
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:398:25: (paramType= qualified_id )?
-                            int alt17=2;
-                            int LA17_0 = input.LA(1);
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:390:25: (paramType= qualified_id )?
+                            int alt13=2;
+                            int LA13_0 = input.LA(1);
 
-                            if ( (LA17_0==ID) ) {
-                                int LA17_1 = input.LA(2);
+                            if ( (LA13_0==ID) ) {
+                                int LA13_1 = input.LA(2);
 
-                                if ( ((LA17_1>=ID && LA17_1<=DOT)||LA17_1==LEFT_SQUARE) ) {
-                                    alt17=1;
+                                if ( ((LA13_1>=ID && LA13_1<=DOT)||LA13_1==LEFT_SQUARE) ) {
+                                    alt13=1;
                                 }
                             }
-                            switch (alt17) {
+                            switch (alt13) {
                                 case 1 :
-                                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:398:25: paramType= qualified_id
+                                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:390:25: paramType= qualified_id
                                     {
-                                    pushFollow(FOLLOW_qualified_id_in_query722);
+                                    pushFollow(FOLLOW_qualified_id_in_query668);
                                     paramType=qualified_id();
                                     _fsp--;
                                     if (failed) return query;
@@ -1342,45 +1275,45 @@
                             }
 
                             paramName=(Token)input.LT(1);
-                            match(input,ID,FOLLOW_ID_in_query727); if (failed) return query;
+                            match(input,ID,FOLLOW_ID_in_query673); if (failed) return query;
                             if ( backtracking==0 ) {
                                params.add( paramName.getText() ); String type = (paramType != null) ? paramType.text : "Object"; types.add( type ); 
                             }
 
                             }
 
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:399:15: ( COMMA (paramType= qualified_id )? paramName= ID )*
-                            loop19:
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:391:15: ( COMMA (paramType= qualified_id )? paramName= ID )*
+                            loop15:
                             do {
-                                int alt19=2;
-                                int LA19_0 = input.LA(1);
+                                int alt15=2;
+                                int LA15_0 = input.LA(1);
 
-                                if ( (LA19_0==COMMA) ) {
-                                    alt19=1;
+                                if ( (LA15_0==COMMA) ) {
+                                    alt15=1;
                                 }
 
 
-                                switch (alt19) {
+                                switch (alt15) {
                             	case 1 :
-                            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:399:16: COMMA (paramType= qualified_id )? paramName= ID
+                            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:391:16: COMMA (paramType= qualified_id )? paramName= ID
                             	    {
-                            	    match(input,COMMA,FOLLOW_COMMA_in_query748); if (failed) return query;
-                            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:399:31: (paramType= qualified_id )?
-                            	    int alt18=2;
-                            	    int LA18_0 = input.LA(1);
+                            	    match(input,COMMA,FOLLOW_COMMA_in_query694); if (failed) return query;
+                            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:391:31: (paramType= qualified_id )?
+                            	    int alt14=2;
+                            	    int LA14_0 = input.LA(1);
 
-                            	    if ( (LA18_0==ID) ) {
-                            	        int LA18_1 = input.LA(2);
+                            	    if ( (LA14_0==ID) ) {
+                            	        int LA14_1 = input.LA(2);
 
-                            	        if ( ((LA18_1>=ID && LA18_1<=DOT)||LA18_1==LEFT_SQUARE) ) {
-                            	            alt18=1;
+                            	        if ( ((LA14_1>=ID && LA14_1<=DOT)||LA14_1==LEFT_SQUARE) ) {
+                            	            alt14=1;
                             	        }
                             	    }
-                            	    switch (alt18) {
+                            	    switch (alt14) {
                             	        case 1 :
-                            	            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:399:31: paramType= qualified_id
+                            	            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:391:31: paramType= qualified_id
                             	            {
-                            	            pushFollow(FOLLOW_qualified_id_in_query752);
+                            	            pushFollow(FOLLOW_qualified_id_in_query698);
                             	            paramType=qualified_id();
                             	            _fsp--;
                             	            if (failed) return query;
@@ -1391,7 +1324,7 @@
                             	    }
 
                             	    paramName=(Token)input.LT(1);
-                            	    match(input,ID,FOLLOW_ID_in_query757); if (failed) return query;
+                            	    match(input,ID,FOLLOW_ID_in_query703); if (failed) return query;
                             	    if ( backtracking==0 ) {
                             	       params.add( paramName.getText() );  String type = (paramType != null) ? paramType.text : "Object"; types.add( type );  
                             	    }
@@ -1400,7 +1333,7 @@
                             	    break;
 
                             	default :
-                            	    break loop19;
+                            	    break loop15;
                                 }
                             } while (true);
 
@@ -1415,7 +1348,7 @@
 
                     }
 
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_query807); if (failed) return query;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_query753); if (failed) return query;
 
                     }
                     break;
@@ -1427,13 +1360,13 @@
                                       location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION );
               	        
             }
-            pushFollow(FOLLOW_normal_lhs_block_in_query836);
+            pushFollow(FOLLOW_normal_lhs_block_in_query782);
             normal_lhs_block(lhs);
             _fsp--;
             if (failed) return query;
             END8=(Token)input.LT(1);
-            match(input,END,FOLLOW_END_in_query841); if (failed) return query;
-            pushFollow(FOLLOW_opt_semicolon_in_query843);
+            match(input,END,FOLLOW_END_in_query787); if (failed) return query;
+            pushFollow(FOLLOW_opt_semicolon_in_query789);
             opt_semicolon();
             _fsp--;
             if (failed) return query;
@@ -1458,7 +1391,7 @@
 
 
     // $ANTLR start template
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:417:1: template returns [FactTemplateDescr template] : TEMPLATE templateName= name opt_semicolon (slot= template_slot )+ END opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:409:1: template returns [FactTemplateDescr template] : TEMPLATE templateName= name opt_semicolon (slot= template_slot )+ END opt_semicolon ;
     public final FactTemplateDescr template() throws RecognitionException {
         FactTemplateDescr template = null;
 
@@ -1473,16 +1406,16 @@
         		template = null;		
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:422:3: ( TEMPLATE templateName= name opt_semicolon (slot= template_slot )+ END opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:422:3: TEMPLATE templateName= name opt_semicolon (slot= template_slot )+ END opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:413:2: ( TEMPLATE templateName= name opt_semicolon (slot= template_slot )+ END opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:414:3: TEMPLATE templateName= name opt_semicolon (slot= template_slot )+ END opt_semicolon
             {
             TEMPLATE9=(Token)input.LT(1);
-            match(input,TEMPLATE,FOLLOW_TEMPLATE_in_template871); if (failed) return template;
-            pushFollow(FOLLOW_name_in_template875);
+            match(input,TEMPLATE,FOLLOW_TEMPLATE_in_template817); if (failed) return template;
+            pushFollow(FOLLOW_name_in_template821);
             templateName=name();
             _fsp--;
             if (failed) return template;
-            pushFollow(FOLLOW_opt_semicolon_in_template877);
+            pushFollow(FOLLOW_opt_semicolon_in_template823);
             opt_semicolon();
             _fsp--;
             if (failed) return template;
@@ -1493,23 +1426,23 @@
               			template.setStartCharacter( ((CommonToken)TEMPLATE9).getStartIndex() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:428:3: (slot= template_slot )+
-            int cnt22=0;
-            loop22:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:420:3: (slot= template_slot )+
+            int cnt18=0;
+            loop18:
             do {
-                int alt22=2;
-                int LA22_0 = input.LA(1);
+                int alt18=2;
+                int LA18_0 = input.LA(1);
 
-                if ( (LA22_0==ID) ) {
-                    alt22=1;
+                if ( (LA18_0==ID) ) {
+                    alt18=1;
                 }
 
 
-                switch (alt22) {
+                switch (alt18) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:429:4: slot= template_slot
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:421:4: slot= template_slot
             	    {
-            	    pushFollow(FOLLOW_template_slot_in_template892);
+            	    pushFollow(FOLLOW_template_slot_in_template838);
             	    slot=template_slot();
             	    _fsp--;
             	    if (failed) return template;
@@ -1523,18 +1456,18 @@
             	    break;
 
             	default :
-            	    if ( cnt22 >= 1 ) break loop22;
+            	    if ( cnt18 >= 1 ) break loop18;
             	    if (backtracking>0) {failed=true; return template;}
                         EarlyExitException eee =
-                            new EarlyExitException(22, input);
+                            new EarlyExitException(18, input);
                         throw eee;
                 }
-                cnt22++;
+                cnt18++;
             } while (true);
 
             END10=(Token)input.LT(1);
-            match(input,END,FOLLOW_END_in_template907); if (failed) return template;
-            pushFollow(FOLLOW_opt_semicolon_in_template909);
+            match(input,END,FOLLOW_END_in_template853); if (failed) return template;
+            pushFollow(FOLLOW_opt_semicolon_in_template855);
             opt_semicolon();
             _fsp--;
             if (failed) return template;
@@ -1559,7 +1492,7 @@
 
 
     // $ANTLR start template_slot
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:440:1: template_slot returns [FieldTemplateDescr field] : fieldType= qualified_id id= identifier opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:432:1: template_slot returns [FieldTemplateDescr field] : fieldType= qualified_id id= identifier opt_semicolon ;
     public final FieldTemplateDescr template_slot() throws RecognitionException {
         FieldTemplateDescr field = null;
 
@@ -1572,15 +1505,15 @@
         		field = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:445:11: (fieldType= qualified_id id= identifier opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:445:11: fieldType= qualified_id id= identifier opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:436:2: (fieldType= qualified_id id= identifier opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:437:11: fieldType= qualified_id id= identifier opt_semicolon
             {
             if ( backtracking==0 ) {
 
               			field = factory.createFieldTemplate();
               	         
             }
-            pushFollow(FOLLOW_qualified_id_in_template_slot955);
+            pushFollow(FOLLOW_qualified_id_in_template_slot901);
             fieldType=qualified_id();
             _fsp--;
             if (failed) return field;
@@ -1591,11 +1524,11 @@
               			field.setEndCharacter( ((CommonToken)((Token)fieldType.stop)).getStopIndex() );
               		 
             }
-            pushFollow(FOLLOW_identifier_in_template_slot971);
+            pushFollow(FOLLOW_identifier_in_template_slot917);
             id=identifier();
             _fsp--;
             if (failed) return field;
-            pushFollow(FOLLOW_opt_semicolon_in_template_slot973);
+            pushFollow(FOLLOW_opt_semicolon_in_template_slot919);
             opt_semicolon();
             _fsp--;
             if (failed) return field;
@@ -1622,7 +1555,7 @@
 
 
     // $ANTLR start rule
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:463:1: rule returns [RuleDescr rule] : RULE ruleName= name ( rule_attributes[$rule] )? ( WHEN ( ':' )? normal_lhs_block[lhs] )? rhs_chunk[$rule] ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:455:1: rule returns [RuleDescr rule] : RULE ruleName= name ( rule_attributes[$rule] )? ( WHEN ( ':' )? normal_lhs_block[lhs] )? rhs_chunk[$rule] ;
     public final RuleDescr rule() throws RecognitionException {
         RuleDescr rule = null;
 
@@ -1636,12 +1569,12 @@
         		AndDescr lhs = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:469:3: ( RULE ruleName= name ( rule_attributes[$rule] )? ( WHEN ( ':' )? normal_lhs_block[lhs] )? rhs_chunk[$rule] )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:469:3: RULE ruleName= name ( rule_attributes[$rule] )? ( WHEN ( ':' )? normal_lhs_block[lhs] )? rhs_chunk[$rule]
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:460:2: ( RULE ruleName= name ( rule_attributes[$rule] )? ( WHEN ( ':' )? normal_lhs_block[lhs] )? rhs_chunk[$rule] )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:461:3: RULE ruleName= name ( rule_attributes[$rule] )? ( WHEN ( ':' )? normal_lhs_block[lhs] )? rhs_chunk[$rule]
             {
             RULE11=(Token)input.LT(1);
-            match(input,RULE,FOLLOW_RULE_in_rule1004); if (failed) return rule;
-            pushFollow(FOLLOW_name_in_rule1008);
+            match(input,RULE,FOLLOW_RULE_in_rule950); if (failed) return rule;
+            pushFollow(FOLLOW_name_in_rule954);
             ruleName=name();
             _fsp--;
             if (failed) return rule;
@@ -1654,18 +1587,18 @@
               			rule.setStartCharacter( ((CommonToken)RULE11).getStartIndex() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:477:3: ( rule_attributes[$rule] )?
-            int alt23=2;
-            int LA23_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:469:3: ( rule_attributes[$rule] )?
+            int alt19=2;
+            int LA19_0 = input.LA(1);
 
-            if ( (LA23_0==ATTRIBUTES||LA23_0==DATE_EFFECTIVE||(LA23_0>=DATE_EXPIRES && LA23_0<=ENABLED)||LA23_0==SALIENCE||(LA23_0>=NO_LOOP && LA23_0<=LOCK_ON_ACTIVE)) ) {
-                alt23=1;
+            if ( ((LA19_0>=ATTRIBUTES && LA19_0<=DATE_EFFECTIVE)||(LA19_0>=DATE_EXPIRES && LA19_0<=ENABLED)||LA19_0==SALIENCE||(LA19_0>=NO_LOOP && LA19_0<=LOCK_ON_ACTIVE)) ) {
+                alt19=1;
             }
-            switch (alt23) {
+            switch (alt19) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:477:3: rule_attributes[$rule]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:469:3: rule_attributes[$rule]
                     {
-                    pushFollow(FOLLOW_rule_attributes_in_rule1017);
+                    pushFollow(FOLLOW_rule_attributes_in_rule963);
                     rule_attributes(rule);
                     _fsp--;
                     if (failed) return rule;
@@ -1675,31 +1608,31 @@
 
             }
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:478:3: ( WHEN ( ':' )? normal_lhs_block[lhs] )?
-            int alt25=2;
-            int LA25_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:470:3: ( WHEN ( ':' )? normal_lhs_block[lhs] )?
+            int alt21=2;
+            int LA21_0 = input.LA(1);
 
-            if ( (LA25_0==WHEN) ) {
-                alt25=1;
+            if ( (LA21_0==WHEN) ) {
+                alt21=1;
             }
-            switch (alt25) {
+            switch (alt21) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:479:4: WHEN ( ':' )? normal_lhs_block[lhs]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:471:4: WHEN ( ':' )? normal_lhs_block[lhs]
                     {
                     WHEN12=(Token)input.LT(1);
-                    match(input,WHEN,FOLLOW_WHEN_in_rule1029); if (failed) return rule;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:479:9: ( ':' )?
-                    int alt24=2;
-                    int LA24_0 = input.LA(1);
+                    match(input,WHEN,FOLLOW_WHEN_in_rule975); if (failed) return rule;
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:471:9: ( ':' )?
+                    int alt20=2;
+                    int LA20_0 = input.LA(1);
 
-                    if ( (LA24_0==72) ) {
-                        alt24=1;
+                    if ( (LA20_0==73) ) {
+                        alt20=1;
                     }
-                    switch (alt24) {
+                    switch (alt20) {
                         case 1 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:479:9: ':'
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:471:9: ':'
                             {
-                            match(input,72,FOLLOW_72_in_rule1031); if (failed) return rule;
+                            match(input,73,FOLLOW_73_in_rule977); if (failed) return rule;
 
                             }
                             break;
@@ -1714,7 +1647,7 @@
                       				lhs.setStartCharacter( ((CommonToken)WHEN12).getStartIndex() );
                       			
                     }
-                    pushFollow(FOLLOW_normal_lhs_block_in_rule1042);
+                    pushFollow(FOLLOW_normal_lhs_block_in_rule988);
                     normal_lhs_block(lhs);
                     _fsp--;
                     if (failed) return rule;
@@ -1724,7 +1657,7 @@
 
             }
 
-            pushFollow(FOLLOW_rhs_chunk_in_rule1052);
+            pushFollow(FOLLOW_rhs_chunk_in_rule998);
             rhs_chunk(rule);
             _fsp--;
             if (failed) return rule;
@@ -1744,75 +1677,75 @@
 
 
     // $ANTLR start rule_attributes
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:493:1: rule_attributes[RuleDescr rule] : ( ATTRIBUTES ':' )? attr= rule_attribute ( ( ',' )? attr= rule_attribute )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:485:1: rule_attributes[RuleDescr rule] : ( ATTRIBUTES ':' )? attr= rule_attribute ( ( ',' )? attr= rule_attribute )* ;
     public final void rule_attributes(RuleDescr rule) throws RecognitionException {
         AttributeDescr attr = null;
 
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:495:2: ( ( ATTRIBUTES ':' )? attr= rule_attribute ( ( ',' )? attr= rule_attribute )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:495:2: ( ATTRIBUTES ':' )? attr= rule_attribute ( ( ',' )? attr= rule_attribute )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:486:2: ( ( ATTRIBUTES ':' )? attr= rule_attribute ( ( ',' )? attr= rule_attribute )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:487:2: ( ATTRIBUTES ':' )? attr= rule_attribute ( ( ',' )? attr= rule_attribute )*
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:495:2: ( ATTRIBUTES ':' )?
-            int alt26=2;
-            int LA26_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:487:2: ( ATTRIBUTES ':' )?
+            int alt22=2;
+            int LA22_0 = input.LA(1);
 
-            if ( (LA26_0==ATTRIBUTES) ) {
-                alt26=1;
+            if ( (LA22_0==ATTRIBUTES) ) {
+                alt22=1;
             }
-            switch (alt26) {
+            switch (alt22) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:495:4: ATTRIBUTES ':'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:487:4: ATTRIBUTES ':'
                     {
-                    match(input,ATTRIBUTES,FOLLOW_ATTRIBUTES_in_rule_attributes1072); if (failed) return ;
-                    match(input,72,FOLLOW_72_in_rule_attributes1074); if (failed) return ;
+                    match(input,ATTRIBUTES,FOLLOW_ATTRIBUTES_in_rule_attributes1018); if (failed) return ;
+                    match(input,73,FOLLOW_73_in_rule_attributes1020); if (failed) return ;
 
                     }
                     break;
 
             }
 
-            pushFollow(FOLLOW_rule_attribute_in_rule_attributes1082);
+            pushFollow(FOLLOW_rule_attribute_in_rule_attributes1028);
             attr=rule_attribute();
             _fsp--;
             if (failed) return ;
             if ( backtracking==0 ) {
                rule.addAttribute( attr ); 
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:497:2: ( ( ',' )? attr= rule_attribute )*
-            loop28:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:489:2: ( ( ',' )? attr= rule_attribute )*
+            loop24:
             do {
-                int alt28=2;
-                int LA28_0 = input.LA(1);
+                int alt24=2;
+                int LA24_0 = input.LA(1);
 
-                if ( (LA28_0==COMMA||LA28_0==DATE_EFFECTIVE||(LA28_0>=DATE_EXPIRES && LA28_0<=ENABLED)||LA28_0==SALIENCE||(LA28_0>=NO_LOOP && LA28_0<=LOCK_ON_ACTIVE)) ) {
-                    alt28=1;
+                if ( (LA24_0==COMMA||LA24_0==DATE_EFFECTIVE||(LA24_0>=DATE_EXPIRES && LA24_0<=ENABLED)||LA24_0==SALIENCE||(LA24_0>=NO_LOOP && LA24_0<=LOCK_ON_ACTIVE)) ) {
+                    alt24=1;
                 }
 
 
-                switch (alt28) {
+                switch (alt24) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:497:4: ( ',' )? attr= rule_attribute
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:489:4: ( ',' )? attr= rule_attribute
             	    {
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:497:4: ( ',' )?
-            	    int alt27=2;
-            	    int LA27_0 = input.LA(1);
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:489:4: ( ',' )?
+            	    int alt23=2;
+            	    int LA23_0 = input.LA(1);
 
-            	    if ( (LA27_0==COMMA) ) {
-            	        alt27=1;
+            	    if ( (LA23_0==COMMA) ) {
+            	        alt23=1;
             	    }
-            	    switch (alt27) {
+            	    switch (alt23) {
             	        case 1 :
-            	            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:497:4: ','
+            	            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:489:4: ','
             	            {
-            	            match(input,COMMA,FOLLOW_COMMA_in_rule_attributes1089); if (failed) return ;
+            	            match(input,COMMA,FOLLOW_COMMA_in_rule_attributes1035); if (failed) return ;
 
             	            }
             	            break;
 
             	    }
 
-            	    pushFollow(FOLLOW_rule_attribute_in_rule_attributes1094);
+            	    pushFollow(FOLLOW_rule_attribute_in_rule_attributes1040);
             	    attr=rule_attribute();
             	    _fsp--;
             	    if (failed) return ;
@@ -1824,7 +1757,7 @@
             	    break;
 
             	default :
-            	    break loop28;
+            	    break loop24;
                 }
             } while (true);
 
@@ -1844,7 +1777,7 @@
 
 
     // $ANTLR start rule_attribute
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:502:1: rule_attribute returns [AttributeDescr attr] : (a= salience | a= no_loop | a= agenda_group | a= duration | a= activation_group | a= auto_focus | a= date_effective | a= date_expires | a= enabled | a= ruleflow_group | a= lock_on_active | a= dialect );
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:494:1: rule_attribute returns [AttributeDescr attr] : (a= salience | a= no_loop | a= agenda_group | a= duration | a= activation_group | a= auto_focus | a= date_effective | a= date_expires | a= enabled | a= ruleflow_group | a= lock_on_active | a= dialect );
     public final AttributeDescr rule_attribute() throws RecognitionException {
         AttributeDescr attr = null;
 
@@ -1855,82 +1788,82 @@
         		attr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:509:4: (a= salience | a= no_loop | a= agenda_group | a= duration | a= activation_group | a= auto_focus | a= date_effective | a= date_expires | a= enabled | a= ruleflow_group | a= lock_on_active | a= dialect )
-            int alt29=12;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:501:2: (a= salience | a= no_loop | a= agenda_group | a= duration | a= activation_group | a= auto_focus | a= date_effective | a= date_expires | a= enabled | a= ruleflow_group | a= lock_on_active | a= dialect )
+            int alt25=12;
             switch ( input.LA(1) ) {
             case SALIENCE:
                 {
-                alt29=1;
+                alt25=1;
                 }
                 break;
             case NO_LOOP:
                 {
-                alt29=2;
+                alt25=2;
                 }
                 break;
             case AGENDA_GROUP:
                 {
-                alt29=3;
+                alt25=3;
                 }
                 break;
             case DURATION:
                 {
-                alt29=4;
+                alt25=4;
                 }
                 break;
             case ACTIVATION_GROUP:
                 {
-                alt29=5;
+                alt25=5;
                 }
                 break;
             case AUTO_FOCUS:
                 {
-                alt29=6;
+                alt25=6;
                 }
                 break;
             case DATE_EFFECTIVE:
                 {
-                alt29=7;
+                alt25=7;
                 }
                 break;
             case DATE_EXPIRES:
                 {
-                alt29=8;
+                alt25=8;
                 }
                 break;
             case ENABLED:
                 {
-                alt29=9;
+                alt25=9;
                 }
                 break;
             case RULEFLOW_GROUP:
                 {
-                alt29=10;
+                alt25=10;
                 }
                 break;
             case LOCK_ON_ACTIVE:
                 {
-                alt29=11;
+                alt25=11;
                 }
                 break;
             case DIALECT:
                 {
-                alt29=12;
+                alt25=12;
                 }
                 break;
             default:
                 if (backtracking>0) {failed=true; return attr;}
                 NoViableAltException nvae =
-                    new NoViableAltException("502:1: rule_attribute returns [AttributeDescr attr] : (a= salience | a= no_loop | a= agenda_group | a= duration | a= activation_group | a= auto_focus | a= date_effective | a= date_expires | a= enabled | a= ruleflow_group | a= lock_on_active | a= dialect );", 29, 0, input);
+                    new NoViableAltException("494:1: rule_attribute returns [AttributeDescr attr] : (a= salience | a= no_loop | a= agenda_group | a= duration | a= activation_group | a= auto_focus | a= date_effective | a= date_expires | a= enabled | a= ruleflow_group | a= lock_on_active | a= dialect );", 25, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt29) {
+            switch (alt25) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:509:4: a= salience
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:501:4: a= salience
                     {
-                    pushFollow(FOLLOW_salience_in_rule_attribute1131);
+                    pushFollow(FOLLOW_salience_in_rule_attribute1077);
                     a=salience();
                     _fsp--;
                     if (failed) return attr;
@@ -1938,9 +1871,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:510:4: a= no_loop
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:502:4: a= no_loop
                     {
-                    pushFollow(FOLLOW_no_loop_in_rule_attribute1139);
+                    pushFollow(FOLLOW_no_loop_in_rule_attribute1085);
                     a=no_loop();
                     _fsp--;
                     if (failed) return attr;
@@ -1948,9 +1881,9 @@
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:511:4: a= agenda_group
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:503:4: a= agenda_group
                     {
-                    pushFollow(FOLLOW_agenda_group_in_rule_attribute1148);
+                    pushFollow(FOLLOW_agenda_group_in_rule_attribute1094);
                     a=agenda_group();
                     _fsp--;
                     if (failed) return attr;
@@ -1958,9 +1891,9 @@
                     }
                     break;
                 case 4 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:512:4: a= duration
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:504:4: a= duration
                     {
-                    pushFollow(FOLLOW_duration_in_rule_attribute1157);
+                    pushFollow(FOLLOW_duration_in_rule_attribute1103);
                     a=duration();
                     _fsp--;
                     if (failed) return attr;
@@ -1968,9 +1901,9 @@
                     }
                     break;
                 case 5 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:513:4: a= activation_group
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:505:4: a= activation_group
                     {
-                    pushFollow(FOLLOW_activation_group_in_rule_attribute1166);
+                    pushFollow(FOLLOW_activation_group_in_rule_attribute1112);
                     a=activation_group();
                     _fsp--;
                     if (failed) return attr;
@@ -1978,9 +1911,9 @@
                     }
                     break;
                 case 6 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:514:4: a= auto_focus
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:506:4: a= auto_focus
                     {
-                    pushFollow(FOLLOW_auto_focus_in_rule_attribute1174);
+                    pushFollow(FOLLOW_auto_focus_in_rule_attribute1120);
                     a=auto_focus();
                     _fsp--;
                     if (failed) return attr;
@@ -1988,9 +1921,9 @@
                     }
                     break;
                 case 7 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:515:4: a= date_effective
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:507:4: a= date_effective
                     {
-                    pushFollow(FOLLOW_date_effective_in_rule_attribute1182);
+                    pushFollow(FOLLOW_date_effective_in_rule_attribute1128);
                     a=date_effective();
                     _fsp--;
                     if (failed) return attr;
@@ -1998,9 +1931,9 @@
                     }
                     break;
                 case 8 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:516:4: a= date_expires
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:508:4: a= date_expires
                     {
-                    pushFollow(FOLLOW_date_expires_in_rule_attribute1190);
+                    pushFollow(FOLLOW_date_expires_in_rule_attribute1136);
                     a=date_expires();
                     _fsp--;
                     if (failed) return attr;
@@ -2008,9 +1941,9 @@
                     }
                     break;
                 case 9 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:517:4: a= enabled
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:509:4: a= enabled
                     {
-                    pushFollow(FOLLOW_enabled_in_rule_attribute1198);
+                    pushFollow(FOLLOW_enabled_in_rule_attribute1144);
                     a=enabled();
                     _fsp--;
                     if (failed) return attr;
@@ -2018,9 +1951,9 @@
                     }
                     break;
                 case 10 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:518:4: a= ruleflow_group
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:510:4: a= ruleflow_group
                     {
-                    pushFollow(FOLLOW_ruleflow_group_in_rule_attribute1206);
+                    pushFollow(FOLLOW_ruleflow_group_in_rule_attribute1152);
                     a=ruleflow_group();
                     _fsp--;
                     if (failed) return attr;
@@ -2028,9 +1961,9 @@
                     }
                     break;
                 case 11 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:519:4: a= lock_on_active
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:511:4: a= lock_on_active
                     {
-                    pushFollow(FOLLOW_lock_on_active_in_rule_attribute1214);
+                    pushFollow(FOLLOW_lock_on_active_in_rule_attribute1160);
                     a=lock_on_active();
                     _fsp--;
                     if (failed) return attr;
@@ -2038,9 +1971,9 @@
                     }
                     break;
                 case 12 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:520:4: a= dialect
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:512:4: a= dialect
                     {
-                    pushFollow(FOLLOW_dialect_in_rule_attribute1221);
+                    pushFollow(FOLLOW_dialect_in_rule_attribute1167);
                     a=dialect();
                     _fsp--;
                     if (failed) return attr;
@@ -2067,7 +2000,7 @@
 
 
     // $ANTLR start date_effective
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:523:1: date_effective returns [AttributeDescr descr] : DATE_EFFECTIVE STRING ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:515:1: date_effective returns [AttributeDescr descr] : DATE_EFFECTIVE STRING ;
     public final AttributeDescr date_effective() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2078,13 +2011,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:528:3: ( DATE_EFFECTIVE STRING )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:528:3: DATE_EFFECTIVE STRING
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:519:2: ( DATE_EFFECTIVE STRING )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:520:3: DATE_EFFECTIVE STRING
             {
             DATE_EFFECTIVE14=(Token)input.LT(1);
-            match(input,DATE_EFFECTIVE,FOLLOW_DATE_EFFECTIVE_in_date_effective1247); if (failed) return descr;
+            match(input,DATE_EFFECTIVE,FOLLOW_DATE_EFFECTIVE_in_date_effective1193); if (failed) return descr;
             STRING13=(Token)input.LT(1);
-            match(input,STRING,FOLLOW_STRING_in_date_effective1249); if (failed) return descr;
+            match(input,STRING,FOLLOW_STRING_in_date_effective1195); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "date-effective", getString( STRING13.getText() ) );
@@ -2109,7 +2042,7 @@
 
 
     // $ANTLR start date_expires
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:538:1: date_expires returns [AttributeDescr descr] : DATE_EXPIRES STRING ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:530:1: date_expires returns [AttributeDescr descr] : DATE_EXPIRES STRING ;
     public final AttributeDescr date_expires() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2120,13 +2053,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:542:4: ( DATE_EXPIRES STRING )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:542:4: DATE_EXPIRES STRING
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:534:2: ( DATE_EXPIRES STRING )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:534:4: DATE_EXPIRES STRING
             {
             DATE_EXPIRES16=(Token)input.LT(1);
-            match(input,DATE_EXPIRES,FOLLOW_DATE_EXPIRES_in_date_expires1278); if (failed) return descr;
+            match(input,DATE_EXPIRES,FOLLOW_DATE_EXPIRES_in_date_expires1224); if (failed) return descr;
             STRING15=(Token)input.LT(1);
-            match(input,STRING,FOLLOW_STRING_in_date_expires1280); if (failed) return descr;
+            match(input,STRING,FOLLOW_STRING_in_date_expires1226); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "date-expires", getString( STRING15.getText() ) );
@@ -2151,7 +2084,7 @@
 
 
     // $ANTLR start enabled
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:551:1: enabled returns [AttributeDescr descr] : ENABLED BOOL ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:543:1: enabled returns [AttributeDescr descr] : ENABLED BOOL ;
     public final AttributeDescr enabled() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2162,13 +2095,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:555:5: ( ENABLED BOOL )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:555:5: ENABLED BOOL
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:547:2: ( ENABLED BOOL )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:547:5: ENABLED BOOL
             {
             ENABLED18=(Token)input.LT(1);
-            match(input,ENABLED,FOLLOW_ENABLED_in_enabled1309); if (failed) return descr;
+            match(input,ENABLED,FOLLOW_ENABLED_in_enabled1255); if (failed) return descr;
             BOOL17=(Token)input.LT(1);
-            match(input,BOOL,FOLLOW_BOOL_in_enabled1311); if (failed) return descr;
+            match(input,BOOL,FOLLOW_BOOL_in_enabled1257); if (failed) return descr;
             if ( backtracking==0 ) {
 
               				descr = new AttributeDescr( "enabled", BOOL17.getText() );
@@ -2193,7 +2126,7 @@
 
 
     // $ANTLR start salience
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:564:1: salience returns [AttributeDescr descr] : SALIENCE ( INT | txt= paren_chunk ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:556:1: salience returns [AttributeDescr descr] : SALIENCE ( INT | txt= paren_chunk ) ;
     public final AttributeDescr salience() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2206,11 +2139,11 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:569:3: ( SALIENCE ( INT | txt= paren_chunk ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:569:3: SALIENCE ( INT | txt= paren_chunk )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:560:2: ( SALIENCE ( INT | txt= paren_chunk ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:561:3: SALIENCE ( INT | txt= paren_chunk )
             {
             SALIENCE19=(Token)input.LT(1);
-            match(input,SALIENCE,FOLLOW_SALIENCE_in_salience1344); if (failed) return descr;
+            match(input,SALIENCE,FOLLOW_SALIENCE_in_salience1290); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "salience" );
@@ -2218,29 +2151,29 @@
               			descr.setStartCharacter( ((CommonToken)SALIENCE19).getStartIndex() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:575:3: ( INT | txt= paren_chunk )
-            int alt30=2;
-            int LA30_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:567:3: ( INT | txt= paren_chunk )
+            int alt26=2;
+            int LA26_0 = input.LA(1);
 
-            if ( (LA30_0==INT) ) {
-                alt30=1;
+            if ( (LA26_0==INT) ) {
+                alt26=1;
             }
-            else if ( (LA30_0==LEFT_PAREN) ) {
-                alt30=2;
+            else if ( (LA26_0==LEFT_PAREN) ) {
+                alt26=2;
             }
             else {
                 if (backtracking>0) {failed=true; return descr;}
                 NoViableAltException nvae =
-                    new NoViableAltException("575:3: ( INT | txt= paren_chunk )", 30, 0, input);
+                    new NoViableAltException("567:3: ( INT | txt= paren_chunk )", 26, 0, input);
 
                 throw nvae;
             }
-            switch (alt30) {
+            switch (alt26) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:575:5: INT
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:567:5: INT
                     {
                     INT20=(Token)input.LT(1);
-                    match(input,INT,FOLLOW_INT_in_salience1355); if (failed) return descr;
+                    match(input,INT,FOLLOW_INT_in_salience1301); if (failed) return descr;
                     if ( backtracking==0 ) {
 
                       			descr.setValue( INT20.getText() );
@@ -2251,9 +2184,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:580:5: txt= paren_chunk
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:572:5: txt= paren_chunk
                     {
-                    pushFollow(FOLLOW_paren_chunk_in_salience1370);
+                    pushFollow(FOLLOW_paren_chunk_in_salience1316);
                     txt=paren_chunk();
                     _fsp--;
                     if (failed) return descr;
@@ -2285,7 +2218,7 @@
 
 
     // $ANTLR start no_loop
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:588:1: no_loop returns [AttributeDescr descr] : NO_LOOP ( BOOL )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:580:1: no_loop returns [AttributeDescr descr] : NO_LOOP ( BOOL )? ;
     public final AttributeDescr no_loop() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2296,11 +2229,11 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:592:4: ( NO_LOOP ( BOOL )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:592:4: NO_LOOP ( BOOL )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:584:2: ( NO_LOOP ( BOOL )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:584:4: NO_LOOP ( BOOL )?
             {
             NO_LOOP21=(Token)input.LT(1);
-            match(input,NO_LOOP,FOLLOW_NO_LOOP_in_no_loop1400); if (failed) return descr;
+            match(input,NO_LOOP,FOLLOW_NO_LOOP_in_no_loop1346); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "no-loop", "true" );
@@ -2309,19 +2242,19 @@
               			descr.setEndCharacter( ((CommonToken)NO_LOOP21).getStopIndex() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:599:3: ( BOOL )?
-            int alt31=2;
-            int LA31_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:591:3: ( BOOL )?
+            int alt27=2;
+            int LA27_0 = input.LA(1);
 
-            if ( (LA31_0==BOOL) ) {
-                alt31=1;
+            if ( (LA27_0==BOOL) ) {
+                alt27=1;
             }
-            switch (alt31) {
+            switch (alt27) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:599:5: BOOL
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:591:5: BOOL
                     {
                     BOOL22=(Token)input.LT(1);
-                    match(input,BOOL,FOLLOW_BOOL_in_no_loop1413); if (failed) return descr;
+                    match(input,BOOL,FOLLOW_BOOL_in_no_loop1359); if (failed) return descr;
                     if ( backtracking==0 ) {
 
                       				descr.setValue( BOOL22.getText() );
@@ -2350,7 +2283,7 @@
 
 
     // $ANTLR start auto_focus
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:607:1: auto_focus returns [AttributeDescr descr] : AUTO_FOCUS ( BOOL )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:599:1: auto_focus returns [AttributeDescr descr] : AUTO_FOCUS ( BOOL )? ;
     public final AttributeDescr auto_focus() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2361,11 +2294,11 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:611:4: ( AUTO_FOCUS ( BOOL )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:611:4: AUTO_FOCUS ( BOOL )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:603:2: ( AUTO_FOCUS ( BOOL )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:603:4: AUTO_FOCUS ( BOOL )?
             {
             AUTO_FOCUS23=(Token)input.LT(1);
-            match(input,AUTO_FOCUS,FOLLOW_AUTO_FOCUS_in_auto_focus1448); if (failed) return descr;
+            match(input,AUTO_FOCUS,FOLLOW_AUTO_FOCUS_in_auto_focus1394); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "auto-focus", "true" );
@@ -2374,19 +2307,19 @@
               			descr.setEndCharacter( ((CommonToken)AUTO_FOCUS23).getStopIndex() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:618:3: ( BOOL )?
-            int alt32=2;
-            int LA32_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:610:3: ( BOOL )?
+            int alt28=2;
+            int LA28_0 = input.LA(1);
 
-            if ( (LA32_0==BOOL) ) {
-                alt32=1;
+            if ( (LA28_0==BOOL) ) {
+                alt28=1;
             }
-            switch (alt32) {
+            switch (alt28) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:618:5: BOOL
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:610:5: BOOL
                     {
                     BOOL24=(Token)input.LT(1);
-                    match(input,BOOL,FOLLOW_BOOL_in_auto_focus1461); if (failed) return descr;
+                    match(input,BOOL,FOLLOW_BOOL_in_auto_focus1407); if (failed) return descr;
                     if ( backtracking==0 ) {
 
                       				descr.setValue( BOOL24.getText() );
@@ -2415,7 +2348,7 @@
 
 
     // $ANTLR start activation_group
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:626:1: activation_group returns [AttributeDescr descr] : ACTIVATION_GROUP STRING ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:618:1: activation_group returns [AttributeDescr descr] : ACTIVATION_GROUP STRING ;
     public final AttributeDescr activation_group() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2426,13 +2359,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:630:4: ( ACTIVATION_GROUP STRING )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:630:4: ACTIVATION_GROUP STRING
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:622:2: ( ACTIVATION_GROUP STRING )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:622:4: ACTIVATION_GROUP STRING
             {
             ACTIVATION_GROUP26=(Token)input.LT(1);
-            match(input,ACTIVATION_GROUP,FOLLOW_ACTIVATION_GROUP_in_activation_group1497); if (failed) return descr;
+            match(input,ACTIVATION_GROUP,FOLLOW_ACTIVATION_GROUP_in_activation_group1443); if (failed) return descr;
             STRING25=(Token)input.LT(1);
-            match(input,STRING,FOLLOW_STRING_in_activation_group1499); if (failed) return descr;
+            match(input,STRING,FOLLOW_STRING_in_activation_group1445); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "activation-group", getString( STRING25.getText() ) );
@@ -2457,7 +2390,7 @@
 
 
     // $ANTLR start ruleflow_group
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:639:1: ruleflow_group returns [AttributeDescr descr] : RULEFLOW_GROUP STRING ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:631:1: ruleflow_group returns [AttributeDescr descr] : RULEFLOW_GROUP STRING ;
     public final AttributeDescr ruleflow_group() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2468,13 +2401,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:643:4: ( RULEFLOW_GROUP STRING )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:643:4: RULEFLOW_GROUP STRING
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:635:2: ( RULEFLOW_GROUP STRING )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:635:4: RULEFLOW_GROUP STRING
             {
             RULEFLOW_GROUP28=(Token)input.LT(1);
-            match(input,RULEFLOW_GROUP,FOLLOW_RULEFLOW_GROUP_in_ruleflow_group1527); if (failed) return descr;
+            match(input,RULEFLOW_GROUP,FOLLOW_RULEFLOW_GROUP_in_ruleflow_group1473); if (failed) return descr;
             STRING27=(Token)input.LT(1);
-            match(input,STRING,FOLLOW_STRING_in_ruleflow_group1529); if (failed) return descr;
+            match(input,STRING,FOLLOW_STRING_in_ruleflow_group1475); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "ruleflow-group", getString( STRING27.getText() ) );
@@ -2499,7 +2432,7 @@
 
 
     // $ANTLR start agenda_group
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:652:1: agenda_group returns [AttributeDescr descr] : AGENDA_GROUP STRING ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:644:1: agenda_group returns [AttributeDescr descr] : AGENDA_GROUP STRING ;
     public final AttributeDescr agenda_group() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2510,13 +2443,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:656:4: ( AGENDA_GROUP STRING )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:656:4: AGENDA_GROUP STRING
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:648:2: ( AGENDA_GROUP STRING )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:648:4: AGENDA_GROUP STRING
             {
             AGENDA_GROUP30=(Token)input.LT(1);
-            match(input,AGENDA_GROUP,FOLLOW_AGENDA_GROUP_in_agenda_group1557); if (failed) return descr;
+            match(input,AGENDA_GROUP,FOLLOW_AGENDA_GROUP_in_agenda_group1503); if (failed) return descr;
             STRING29=(Token)input.LT(1);
-            match(input,STRING,FOLLOW_STRING_in_agenda_group1559); if (failed) return descr;
+            match(input,STRING,FOLLOW_STRING_in_agenda_group1505); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "agenda-group", getString( STRING29.getText() ) );
@@ -2541,7 +2474,7 @@
 
 
     // $ANTLR start duration
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:665:1: duration returns [AttributeDescr descr] : DURATION INT ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:657:1: duration returns [AttributeDescr descr] : DURATION INT ;
     public final AttributeDescr duration() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2552,13 +2485,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:669:4: ( DURATION INT )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:669:4: DURATION INT
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:661:2: ( DURATION INT )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:661:4: DURATION INT
             {
             DURATION32=(Token)input.LT(1);
-            match(input,DURATION,FOLLOW_DURATION_in_duration1587); if (failed) return descr;
+            match(input,DURATION,FOLLOW_DURATION_in_duration1533); if (failed) return descr;
             INT31=(Token)input.LT(1);
-            match(input,INT,FOLLOW_INT_in_duration1589); if (failed) return descr;
+            match(input,INT,FOLLOW_INT_in_duration1535); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "duration", INT31.getText() );
@@ -2583,7 +2516,7 @@
 
 
     // $ANTLR start dialect
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:678:1: dialect returns [AttributeDescr descr] : DIALECT STRING ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:670:1: dialect returns [AttributeDescr descr] : DIALECT STRING ;
     public final AttributeDescr dialect() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2594,13 +2527,13 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:682:4: ( DIALECT STRING )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:682:4: DIALECT STRING
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:674:2: ( DIALECT STRING )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:674:4: DIALECT STRING
             {
             DIALECT34=(Token)input.LT(1);
-            match(input,DIALECT,FOLLOW_DIALECT_in_dialect1617); if (failed) return descr;
+            match(input,DIALECT,FOLLOW_DIALECT_in_dialect1563); if (failed) return descr;
             STRING33=(Token)input.LT(1);
-            match(input,STRING,FOLLOW_STRING_in_dialect1619); if (failed) return descr;
+            match(input,STRING,FOLLOW_STRING_in_dialect1565); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "dialect", getString( STRING33.getText() ) );
@@ -2625,7 +2558,7 @@
 
 
     // $ANTLR start lock_on_active
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:691:1: lock_on_active returns [AttributeDescr descr] : LOCK_ON_ACTIVE ( BOOL )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:683:1: lock_on_active returns [AttributeDescr descr] : LOCK_ON_ACTIVE ( BOOL )? ;
     public final AttributeDescr lock_on_active() throws RecognitionException {
         AttributeDescr descr = null;
 
@@ -2636,11 +2569,11 @@
         		descr = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:695:4: ( LOCK_ON_ACTIVE ( BOOL )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:695:4: LOCK_ON_ACTIVE ( BOOL )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:687:2: ( LOCK_ON_ACTIVE ( BOOL )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:687:4: LOCK_ON_ACTIVE ( BOOL )?
             {
             LOCK_ON_ACTIVE35=(Token)input.LT(1);
-            match(input,LOCK_ON_ACTIVE,FOLLOW_LOCK_ON_ACTIVE_in_lock_on_active1651); if (failed) return descr;
+            match(input,LOCK_ON_ACTIVE,FOLLOW_LOCK_ON_ACTIVE_in_lock_on_active1597); if (failed) return descr;
             if ( backtracking==0 ) {
 
               			descr = new AttributeDescr( "lock-on-active", "true" );
@@ -2649,19 +2582,19 @@
               			descr.setEndCharacter( ((CommonToken)LOCK_ON_ACTIVE35).getStopIndex() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:702:3: ( BOOL )?
-            int alt33=2;
-            int LA33_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:694:3: ( BOOL )?
+            int alt29=2;
+            int LA29_0 = input.LA(1);
 
-            if ( (LA33_0==BOOL) ) {
-                alt33=1;
+            if ( (LA29_0==BOOL) ) {
+                alt29=1;
             }
-            switch (alt33) {
+            switch (alt29) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:702:5: BOOL
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:694:5: BOOL
                     {
                     BOOL36=(Token)input.LT(1);
-                    match(input,BOOL,FOLLOW_BOOL_in_lock_on_active1664); if (failed) return descr;
+                    match(input,BOOL,FOLLOW_BOOL_in_lock_on_active1610); if (failed) return descr;
                     if ( backtracking==0 ) {
 
                       				descr.setValue( BOOL36.getText() );
@@ -2690,7 +2623,7 @@
 
 
     // $ANTLR start normal_lhs_block
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:710:1: normal_lhs_block[AndDescr descr] : (d= lhs[$descr] )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:702:1: normal_lhs_block[AndDescr descr] : (d= lhs[$descr] )* ;
     public final void normal_lhs_block(AndDescr descr) throws RecognitionException {
         BaseDescr d = null;
 
@@ -2699,25 +2632,25 @@
         		location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION );
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:715:3: ( (d= lhs[$descr] )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:715:3: (d= lhs[$descr] )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:706:2: ( (d= lhs[$descr] )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:707:3: (d= lhs[$descr] )*
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:715:3: (d= lhs[$descr] )*
-            loop34:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:707:3: (d= lhs[$descr] )*
+            loop30:
             do {
-                int alt34=2;
-                int LA34_0 = input.LA(1);
+                int alt30=2;
+                int LA30_0 = input.LA(1);
 
-                if ( (LA34_0==ID||LA34_0==LEFT_PAREN||(LA34_0>=EXISTS && LA34_0<=FORALL)) ) {
-                    alt34=1;
+                if ( (LA30_0==ID||LA30_0==LEFT_PAREN||(LA30_0>=EXISTS && LA30_0<=FORALL)) ) {
+                    alt30=1;
                 }
 
 
-                switch (alt34) {
+                switch (alt30) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:715:5: d= lhs[$descr]
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:707:5: d= lhs[$descr]
             	    {
-            	    pushFollow(FOLLOW_lhs_in_normal_lhs_block1703);
+            	    pushFollow(FOLLOW_lhs_in_normal_lhs_block1649);
             	    d=lhs(descr);
             	    _fsp--;
             	    if (failed) return ;
@@ -2729,7 +2662,7 @@
             	    break;
 
             	default :
-            	    break loop34;
+            	    break loop30;
                 }
             } while (true);
 
@@ -2749,7 +2682,7 @@
 
 
     // $ANTLR start lhs
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:721:1: lhs[ConditionalElementDescr ce] returns [BaseDescr d] : l= lhs_or ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:713:1: lhs[ConditionalElementDescr ce] returns [BaseDescr d] : l= lhs_or ;
     public final BaseDescr lhs(ConditionalElementDescr ce) throws RecognitionException {
         BaseDescr d = null;
 
@@ -2760,10 +2693,10 @@
         		d =null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:725:4: (l= lhs_or )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:725:4: l= lhs_or
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:717:2: (l= lhs_or )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:717:4: l= lhs_or
             {
-            pushFollow(FOLLOW_lhs_or_in_lhs1740);
+            pushFollow(FOLLOW_lhs_or_in_lhs1686);
             l=lhs_or();
             _fsp--;
             if (failed) return d;
@@ -2786,7 +2719,7 @@
 
 
     // $ANTLR start lhs_or
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:729:1: lhs_or returns [BaseDescr d] : ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* );
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:721:1: lhs_or returns [BaseDescr d] : ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* );
     public final BaseDescr lhs_or() throws RecognitionException {
         BaseDescr d = null;
 
@@ -2802,43 +2735,43 @@
         		OrDescr or = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:734:4: ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* )
-            int alt37=2;
-            int LA37_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:726:2: ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* )
+            int alt33=2;
+            int LA33_0 = input.LA(1);
 
-            if ( (LA37_0==LEFT_PAREN) ) {
-                int LA37_1 = input.LA(2);
+            if ( (LA33_0==LEFT_PAREN) ) {
+                int LA33_1 = input.LA(2);
 
-                if ( (LA37_1==OR) ) {
-                    alt37=1;
+                if ( (LA33_1==OR) ) {
+                    alt33=1;
                 }
-                else if ( (LA37_1==ID||LA37_1==LEFT_PAREN||LA37_1==AND||(LA37_1>=EXISTS && LA37_1<=FORALL)) ) {
-                    alt37=2;
+                else if ( (LA33_1==ID||LA33_1==LEFT_PAREN||LA33_1==AND||(LA33_1>=EXISTS && LA33_1<=FORALL)) ) {
+                    alt33=2;
                 }
                 else {
                     if (backtracking>0) {failed=true; return d;}
                     NoViableAltException nvae =
-                        new NoViableAltException("729:1: lhs_or returns [BaseDescr d] : ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* );", 37, 1, input);
+                        new NoViableAltException("721:1: lhs_or returns [BaseDescr d] : ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* );", 33, 1, input);
 
                     throw nvae;
                 }
             }
-            else if ( (LA37_0==ID||(LA37_0>=EXISTS && LA37_0<=FORALL)) ) {
-                alt37=2;
+            else if ( (LA33_0==ID||(LA33_0>=EXISTS && LA33_0<=FORALL)) ) {
+                alt33=2;
             }
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("729:1: lhs_or returns [BaseDescr d] : ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* );", 37, 0, input);
+                    new NoViableAltException("721:1: lhs_or returns [BaseDescr d] : ( LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN | left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )* );", 33, 0, input);
 
                 throw nvae;
             }
-            switch (alt37) {
+            switch (alt33) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:734:4: LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:726:4: LEFT_PAREN OR (lhsand= lhs_and )+ RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_or1765); if (failed) return d;
-                    match(input,OR,FOLLOW_OR_in_lhs_or1767); if (failed) return d;
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_or1711); if (failed) return d;
+                    match(input,OR,FOLLOW_OR_in_lhs_or1713); if (failed) return d;
                     if ( backtracking==0 ) {
 
                       			or = new OrDescr();
@@ -2846,23 +2779,23 @@
                       			location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION_AND_OR );
                       		
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:740:9: (lhsand= lhs_and )+
-                    int cnt35=0;
-                    loop35:
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:732:9: (lhsand= lhs_and )+
+                    int cnt31=0;
+                    loop31:
                     do {
-                        int alt35=2;
-                        int LA35_0 = input.LA(1);
+                        int alt31=2;
+                        int LA31_0 = input.LA(1);
 
-                        if ( (LA35_0==ID||LA35_0==LEFT_PAREN||(LA35_0>=EXISTS && LA35_0<=FORALL)) ) {
-                            alt35=1;
+                        if ( (LA31_0==ID||LA31_0==LEFT_PAREN||(LA31_0>=EXISTS && LA31_0<=FORALL)) ) {
+                            alt31=1;
                         }
 
 
-                        switch (alt35) {
+                        switch (alt31) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:740:9: lhsand= lhs_and
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:732:9: lhsand= lhs_and
                     	    {
-                    	    pushFollow(FOLLOW_lhs_and_in_lhs_or1778);
+                    	    pushFollow(FOLLOW_lhs_and_in_lhs_or1724);
                     	    lhsand=lhs_and();
                     	    _fsp--;
                     	    if (failed) return d;
@@ -2871,13 +2804,13 @@
                     	    break;
 
                     	default :
-                    	    if ( cnt35 >= 1 ) break loop35;
+                    	    if ( cnt31 >= 1 ) break loop31;
                     	    if (backtracking>0) {failed=true; return d;}
                                 EarlyExitException eee =
-                                    new EarlyExitException(35, input);
+                                    new EarlyExitException(31, input);
                                 throw eee;
                         }
-                        cnt35++;
+                        cnt31++;
                     } while (true);
 
                     if ( backtracking==0 ) {
@@ -2885,34 +2818,34 @@
                       			or.addDescr( lhsand );
                       		
                     }
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_or1788); if (failed) return d;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_or1734); if (failed) return d;
 
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:746:10: left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )*
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:738:10: left= lhs_and ( ( OR | DOUBLE_PIPE ) right= lhs_and )*
                     {
-                    pushFollow(FOLLOW_lhs_and_in_lhs_or1806);
+                    pushFollow(FOLLOW_lhs_and_in_lhs_or1752);
                     left=lhs_and();
                     _fsp--;
                     if (failed) return d;
                     if ( backtracking==0 ) {
                        d = left; 
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:747:3: ( ( OR | DOUBLE_PIPE ) right= lhs_and )*
-                    loop36:
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:739:3: ( ( OR | DOUBLE_PIPE ) right= lhs_and )*
+                    loop32:
                     do {
-                        int alt36=2;
-                        int LA36_0 = input.LA(1);
+                        int alt32=2;
+                        int LA32_0 = input.LA(1);
 
-                        if ( ((LA36_0>=OR && LA36_0<=DOUBLE_PIPE)) ) {
-                            alt36=1;
+                        if ( ((LA32_0>=OR && LA32_0<=DOUBLE_PIPE)) ) {
+                            alt32=1;
                         }
 
 
-                        switch (alt36) {
+                        switch (alt32) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:747:5: ( OR | DOUBLE_PIPE ) right= lhs_and
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:739:5: ( OR | DOUBLE_PIPE ) right= lhs_and
                     	    {
                     	    if ( (input.LA(1)>=OR && input.LA(1)<=DOUBLE_PIPE) ) {
                     	        input.consume();
@@ -2922,7 +2855,7 @@
                     	        if (backtracking>0) {failed=true; return d;}
                     	        MismatchedSetException mse =
                     	            new MismatchedSetException(null,input);
-                    	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_lhs_or1814);    throw mse;
+                    	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_lhs_or1760);    throw mse;
                     	    }
 
                     	    if ( backtracking==0 ) {
@@ -2930,7 +2863,7 @@
                     	      				location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION_AND_OR );
                     	      			
                     	    }
-                    	    pushFollow(FOLLOW_lhs_and_in_lhs_or1830);
+                    	    pushFollow(FOLLOW_lhs_and_in_lhs_or1776);
                     	    right=lhs_and();
                     	    _fsp--;
                     	    if (failed) return d;
@@ -2950,7 +2883,7 @@
                     	    break;
 
                     	default :
-                    	    break loop36;
+                    	    break loop32;
                         }
                     } while (true);
 
@@ -2972,7 +2905,7 @@
 
 
     // $ANTLR start lhs_and
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:764:1: lhs_and returns [BaseDescr d] : ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* );
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:756:1: lhs_and returns [BaseDescr d] : ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* );
     public final BaseDescr lhs_and() throws RecognitionException {
         BaseDescr d = null;
 
@@ -2988,43 +2921,43 @@
         		AndDescr and = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:769:4: ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* )
-            int alt40=2;
-            int LA40_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:761:2: ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* )
+            int alt36=2;
+            int LA36_0 = input.LA(1);
 
-            if ( (LA40_0==LEFT_PAREN) ) {
-                int LA40_1 = input.LA(2);
+            if ( (LA36_0==LEFT_PAREN) ) {
+                int LA36_1 = input.LA(2);
 
-                if ( (LA40_1==AND) ) {
-                    alt40=1;
+                if ( (LA36_1==AND) ) {
+                    alt36=1;
                 }
-                else if ( (LA40_1==ID||LA40_1==LEFT_PAREN||(LA40_1>=EXISTS && LA40_1<=FORALL)) ) {
-                    alt40=2;
+                else if ( (LA36_1==ID||LA36_1==LEFT_PAREN||(LA36_1>=EXISTS && LA36_1<=FORALL)) ) {
+                    alt36=2;
                 }
                 else {
                     if (backtracking>0) {failed=true; return d;}
                     NoViableAltException nvae =
-                        new NoViableAltException("764:1: lhs_and returns [BaseDescr d] : ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* );", 40, 1, input);
+                        new NoViableAltException("756:1: lhs_and returns [BaseDescr d] : ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* );", 36, 1, input);
 
                     throw nvae;
                 }
             }
-            else if ( (LA40_0==ID||(LA40_0>=EXISTS && LA40_0<=FORALL)) ) {
-                alt40=2;
+            else if ( (LA36_0==ID||(LA36_0>=EXISTS && LA36_0<=FORALL)) ) {
+                alt36=2;
             }
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("764:1: lhs_and returns [BaseDescr d] : ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* );", 40, 0, input);
+                    new NoViableAltException("756:1: lhs_and returns [BaseDescr d] : ( LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN | left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )* );", 36, 0, input);
 
                 throw nvae;
             }
-            switch (alt40) {
+            switch (alt36) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:769:4: LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:761:4: LEFT_PAREN AND (lhsunary= lhs_unary )+ RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_and1861); if (failed) return d;
-                    match(input,AND,FOLLOW_AND_in_lhs_and1863); if (failed) return d;
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_and1807); if (failed) return d;
+                    match(input,AND,FOLLOW_AND_in_lhs_and1809); if (failed) return d;
                     if ( backtracking==0 ) {
 
                       			and = new AndDescr();
@@ -3032,23 +2965,23 @@
                       			location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION_AND_OR );
                       		
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:775:11: (lhsunary= lhs_unary )+
-                    int cnt38=0;
-                    loop38:
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:767:11: (lhsunary= lhs_unary )+
+                    int cnt34=0;
+                    loop34:
                     do {
-                        int alt38=2;
-                        int LA38_0 = input.LA(1);
+                        int alt34=2;
+                        int LA34_0 = input.LA(1);
 
-                        if ( (LA38_0==ID||LA38_0==LEFT_PAREN||(LA38_0>=EXISTS && LA38_0<=FORALL)) ) {
-                            alt38=1;
+                        if ( (LA34_0==ID||LA34_0==LEFT_PAREN||(LA34_0>=EXISTS && LA34_0<=FORALL)) ) {
+                            alt34=1;
                         }
 
 
-                        switch (alt38) {
+                        switch (alt34) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:775:11: lhsunary= lhs_unary
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:767:11: lhsunary= lhs_unary
                     	    {
-                    	    pushFollow(FOLLOW_lhs_unary_in_lhs_and1874);
+                    	    pushFollow(FOLLOW_lhs_unary_in_lhs_and1820);
                     	    lhsunary=lhs_unary();
                     	    _fsp--;
                     	    if (failed) return d;
@@ -3057,13 +2990,13 @@
                     	    break;
 
                     	default :
-                    	    if ( cnt38 >= 1 ) break loop38;
+                    	    if ( cnt34 >= 1 ) break loop34;
                     	    if (backtracking>0) {failed=true; return d;}
                                 EarlyExitException eee =
-                                    new EarlyExitException(38, input);
+                                    new EarlyExitException(34, input);
                                 throw eee;
                         }
-                        cnt38++;
+                        cnt34++;
                     } while (true);
 
                     if ( backtracking==0 ) {
@@ -3071,34 +3004,34 @@
                       			and.addDescr( lhsunary );
                       		
                     }
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_and1884); if (failed) return d;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_and1830); if (failed) return d;
 
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:781:10: left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )*
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:773:10: left= lhs_unary ( ( AND | DOUBLE_AMPER ) right= lhs_unary )*
                     {
-                    pushFollow(FOLLOW_lhs_unary_in_lhs_and1902);
+                    pushFollow(FOLLOW_lhs_unary_in_lhs_and1848);
                     left=lhs_unary();
                     _fsp--;
                     if (failed) return d;
                     if ( backtracking==0 ) {
                        d = left; 
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:782:3: ( ( AND | DOUBLE_AMPER ) right= lhs_unary )*
-                    loop39:
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:774:3: ( ( AND | DOUBLE_AMPER ) right= lhs_unary )*
+                    loop35:
                     do {
-                        int alt39=2;
-                        int LA39_0 = input.LA(1);
+                        int alt35=2;
+                        int LA35_0 = input.LA(1);
 
-                        if ( ((LA39_0>=AND && LA39_0<=DOUBLE_AMPER)) ) {
-                            alt39=1;
+                        if ( ((LA35_0>=AND && LA35_0<=DOUBLE_AMPER)) ) {
+                            alt35=1;
                         }
 
 
-                        switch (alt39) {
+                        switch (alt35) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:782:5: ( AND | DOUBLE_AMPER ) right= lhs_unary
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:774:5: ( AND | DOUBLE_AMPER ) right= lhs_unary
                     	    {
                     	    if ( (input.LA(1)>=AND && input.LA(1)<=DOUBLE_AMPER) ) {
                     	        input.consume();
@@ -3108,7 +3041,7 @@
                     	        if (backtracking>0) {failed=true; return d;}
                     	        MismatchedSetException mse =
                     	            new MismatchedSetException(null,input);
-                    	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_lhs_and1910);    throw mse;
+                    	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_lhs_and1856);    throw mse;
                     	    }
 
                     	    if ( backtracking==0 ) {
@@ -3116,7 +3049,7 @@
                     	      				location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION_AND_OR );
                     	      			
                     	    }
-                    	    pushFollow(FOLLOW_lhs_unary_in_lhs_and1926);
+                    	    pushFollow(FOLLOW_lhs_unary_in_lhs_and1872);
                     	    right=lhs_unary();
                     	    _fsp--;
                     	    if (failed) return d;
@@ -3136,7 +3069,7 @@
                     	    break;
 
                     	default :
-                    	    break loop39;
+                    	    break loop35;
                         }
                     } while (true);
 
@@ -3158,7 +3091,7 @@
 
 
     // $ANTLR start lhs_unary
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:799:1: lhs_unary returns [BaseDescr d] : ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source ) opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:791:1: lhs_unary returns [BaseDescr d] : ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source ) opt_semicolon ;
     public final BaseDescr lhs_unary() throws RecognitionException {
         BaseDescr d = null;
 
@@ -3171,43 +3104,43 @@
         		d = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:803:4: ( ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source ) opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:803:4: ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source ) opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:795:2: ( ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source ) opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:795:4: ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source ) opt_semicolon
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:803:4: ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source )
-            int alt41=6;
-            int LA41_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:795:4: ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source )
+            int alt37=6;
+            int LA37_0 = input.LA(1);
 
-            if ( (LA41_0==EXISTS) && (synpred1())) {
-                alt41=1;
+            if ( (LA37_0==EXISTS) && (synpred1())) {
+                alt37=1;
             }
-            else if ( (LA41_0==NOT) && (synpred2())) {
-                alt41=2;
+            else if ( (LA37_0==NOT) && (synpred2())) {
+                alt37=2;
             }
-            else if ( (LA41_0==EVAL) && (synpred3())) {
-                alt41=3;
+            else if ( (LA37_0==EVAL) && (synpred3())) {
+                alt37=3;
             }
-            else if ( (LA41_0==FORALL) && (synpred4())) {
-                alt41=4;
+            else if ( (LA37_0==FORALL) && (synpred4())) {
+                alt37=4;
             }
-            else if ( (LA41_0==LEFT_PAREN) && (synpred5())) {
-                alt41=5;
+            else if ( (LA37_0==LEFT_PAREN) && (synpred5())) {
+                alt37=5;
             }
-            else if ( (LA41_0==ID) ) {
-                alt41=6;
+            else if ( (LA37_0==ID) ) {
+                alt37=6;
             }
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("803:4: ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source )", 41, 0, input);
+                    new NoViableAltException("795:4: ( ( EXISTS )=>u= lhs_exist | ( NOT )=>u= lhs_not | ( EVAL )=>u= lhs_eval | ( FORALL )=>u= lhs_forall | ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN | ps= pattern_source )", 37, 0, input);
 
                 throw nvae;
             }
-            switch (alt41) {
+            switch (alt37) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:803:6: ( EXISTS )=>u= lhs_exist
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:795:6: ( EXISTS )=>u= lhs_exist
                     {
-                    pushFollow(FOLLOW_lhs_exist_in_lhs_unary1971);
+                    pushFollow(FOLLOW_lhs_exist_in_lhs_unary1917);
                     u=lhs_exist();
                     _fsp--;
                     if (failed) return d;
@@ -3218,9 +3151,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:804:5: ( NOT )=>u= lhs_not
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:796:5: ( NOT )=>u= lhs_not
                     {
-                    pushFollow(FOLLOW_lhs_not_in_lhs_unary1989);
+                    pushFollow(FOLLOW_lhs_not_in_lhs_unary1935);
                     u=lhs_not();
                     _fsp--;
                     if (failed) return d;
@@ -3231,9 +3164,9 @@
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:805:5: ( EVAL )=>u= lhs_eval
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:797:5: ( EVAL )=>u= lhs_eval
                     {
-                    pushFollow(FOLLOW_lhs_eval_in_lhs_unary2008);
+                    pushFollow(FOLLOW_lhs_eval_in_lhs_unary1954);
                     u=lhs_eval();
                     _fsp--;
                     if (failed) return d;
@@ -3244,9 +3177,9 @@
                     }
                     break;
                 case 4 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:806:5: ( FORALL )=>u= lhs_forall
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:798:5: ( FORALL )=>u= lhs_forall
                     {
-                    pushFollow(FOLLOW_lhs_forall_in_lhs_unary2027);
+                    pushFollow(FOLLOW_lhs_forall_in_lhs_unary1973);
                     u=lhs_forall();
                     _fsp--;
                     if (failed) return d;
@@ -3257,14 +3190,14 @@
                     }
                     break;
                 case 5 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:807:5: ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:799:5: ( LEFT_PAREN )=> LEFT_PAREN u= lhs_or RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_unary2044); if (failed) return d;
-                    pushFollow(FOLLOW_lhs_or_in_lhs_unary2048);
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_unary1990); if (failed) return d;
+                    pushFollow(FOLLOW_lhs_or_in_lhs_unary1994);
                     u=lhs_or();
                     _fsp--;
                     if (failed) return d;
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_unary2050); if (failed) return d;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_unary1996); if (failed) return d;
                     if ( backtracking==0 ) {
                        d = u; 
                     }
@@ -3272,9 +3205,9 @@
                     }
                     break;
                 case 6 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:808:5: ps= pattern_source
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:800:5: ps= pattern_source
                     {
-                    pushFollow(FOLLOW_pattern_source_in_lhs_unary2061);
+                    pushFollow(FOLLOW_pattern_source_in_lhs_unary2007);
                     ps=pattern_source();
                     _fsp--;
                     if (failed) return d;
@@ -3287,7 +3220,7 @@
 
             }
 
-            pushFollow(FOLLOW_opt_semicolon_in_lhs_unary2073);
+            pushFollow(FOLLOW_opt_semicolon_in_lhs_unary2019);
             opt_semicolon();
             _fsp--;
             if (failed) return d;
@@ -3307,7 +3240,7 @@
 
 
     // $ANTLR start pattern_source
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:813:1: pattern_source returns [BaseDescr d] : u= lhs_pattern ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:805:1: pattern_source returns [BaseDescr d] : u= lhs_pattern ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )? ;
     public final BaseDescr pattern_source() throws RecognitionException {
         BaseDescr d = null;
 
@@ -3324,48 +3257,47 @@
         		d = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:818:3: (u= lhs_pattern ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:818:3: u= lhs_pattern ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:809:2: (u= lhs_pattern ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:810:3: u= lhs_pattern ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )?
             {
-            pushFollow(FOLLOW_lhs_pattern_in_pattern_source2100);
+            pushFollow(FOLLOW_lhs_pattern_in_pattern_source2046);
             u=lhs_pattern();
             _fsp--;
             if (failed) return d;
             if ( backtracking==0 ) {
                d = u; 
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:819:3: ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )?
-            int alt43=2;
-            int LA43_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:811:3: ( FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) ) )?
+            int alt39=2;
+            int LA39_0 = input.LA(1);
 
-            if ( (LA43_0==FROM) ) {
-                alt43=1;
+            if ( (LA39_0==FROM) ) {
+                alt39=1;
             }
-            switch (alt43) {
+            switch (alt39) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:820:4: FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:812:4: FROM ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) )
                     {
-                    match(input,FROM,FOLLOW_FROM_in_pattern_source2112); if (failed) return d;
+                    match(input,FROM,FOLLOW_FROM_in_pattern_source2058); if (failed) return d;
                     if ( backtracking==0 ) {
 
                       				location.setType(Location.LOCATION_LHS_FROM);
                       				location.setProperty(Location.LOCATION_FROM_CONTENT, "");
                       		        
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:825:11: ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) )
-                    int alt42=3;
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:817:11: ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) )
+                    int alt38=3;
                     switch ( input.LA(1) ) {
                     case ACCUMULATE:
                         {
-                        alt42=1;
+                        alt38=1;
                         }
                         break;
                     case COLLECT:
                         {
-                        alt42=2;
+                        alt38=2;
                         }
                         break;
-                    case ATTRIBUTES:
                     case PACKAGE:
                     case IMPORT:
                     case FUNCTION:
@@ -3376,6 +3308,7 @@
                     case TEMPLATE:
                     case RULE:
                     case WHEN:
+                    case ATTRIBUTES:
                     case ENABLED:
                     case SALIENCE:
                     case DURATION:
@@ -3392,25 +3325,25 @@
                     case IN:
                     case THEN:
                         {
-                        alt42=3;
+                        alt38=3;
                         }
                         break;
                     default:
                         if (backtracking>0) {failed=true; return d;}
                         NoViableAltException nvae =
-                            new NoViableAltException("825:11: ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) )", 42, 0, input);
+                            new NoViableAltException("817:11: ( options {k=1; } : (ac= accumulate_statement ) | (cs= collect_statement ) | (fm= from_statement ) )", 38, 0, input);
 
                         throw nvae;
                     }
 
-                    switch (alt42) {
+                    switch (alt38) {
                         case 1 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:826:15: (ac= accumulate_statement )
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:818:15: (ac= accumulate_statement )
                             {
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:826:15: (ac= accumulate_statement )
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:826:17: ac= accumulate_statement
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:818:15: (ac= accumulate_statement )
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:818:17: ac= accumulate_statement
                             {
-                            pushFollow(FOLLOW_accumulate_statement_in_pattern_source2168);
+                            pushFollow(FOLLOW_accumulate_statement_in_pattern_source2114);
                             ac=accumulate_statement();
                             _fsp--;
                             if (failed) return d;
@@ -3424,12 +3357,12 @@
                             }
                             break;
                         case 2 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:827:15: (cs= collect_statement )
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:819:15: (cs= collect_statement )
                             {
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:827:15: (cs= collect_statement )
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:827:17: cs= collect_statement
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:819:15: (cs= collect_statement )
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:819:17: cs= collect_statement
                             {
-                            pushFollow(FOLLOW_collect_statement_in_pattern_source2191);
+                            pushFollow(FOLLOW_collect_statement_in_pattern_source2137);
                             cs=collect_statement();
                             _fsp--;
                             if (failed) return d;
@@ -3443,12 +3376,12 @@
                             }
                             break;
                         case 3 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:828:15: (fm= from_statement )
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:820:15: (fm= from_statement )
                             {
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:828:15: (fm= from_statement )
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:828:17: fm= from_statement
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:820:15: (fm= from_statement )
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:820:17: fm= from_statement
                             {
-                            pushFollow(FOLLOW_from_statement_in_pattern_source2215);
+                            pushFollow(FOLLOW_from_statement_in_pattern_source2161);
                             fm=from_statement();
                             _fsp--;
                             if (failed) return d;
@@ -3486,7 +3419,7 @@
 
 
     // $ANTLR start lhs_exist
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:833:1: lhs_exist returns [BaseDescr d] : EXISTS ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:825:1: lhs_exist returns [BaseDescr d] : EXISTS ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) ;
     public final BaseDescr lhs_exist() throws RecognitionException {
         BaseDescr d = null;
 
@@ -3501,11 +3434,11 @@
         		d = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:837:4: ( EXISTS ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:837:4: EXISTS ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:829:2: ( EXISTS ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:829:4: EXISTS ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
             {
             EXISTS37=(Token)input.LT(1);
-            match(input,EXISTS,FOLLOW_EXISTS_in_lhs_exist2258); if (failed) return d;
+            match(input,EXISTS,FOLLOW_EXISTS_in_lhs_exist2204); if (failed) return d;
             if ( backtracking==0 ) {
 
               			d = new ExistsDescr( ); 
@@ -3514,32 +3447,32 @@
               			location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION_EXISTS );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:844:10: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
-            int alt44=2;
-            int LA44_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:836:10: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
+            int alt40=2;
+            int LA40_0 = input.LA(1);
 
-            if ( (LA44_0==LEFT_PAREN) ) {
-                alt44=1;
+            if ( (LA40_0==LEFT_PAREN) ) {
+                alt40=1;
             }
-            else if ( (LA44_0==ID) ) {
-                alt44=2;
+            else if ( (LA40_0==ID) ) {
+                alt40=2;
             }
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("844:10: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )", 44, 0, input);
+                    new NoViableAltException("836:10: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )", 40, 0, input);
 
                 throw nvae;
             }
-            switch (alt44) {
+            switch (alt40) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:844:12: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:836:12: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:844:12: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:844:14: LEFT_PAREN or= lhs_or RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:836:12: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:836:14: LEFT_PAREN or= lhs_or RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_exist2278); if (failed) return d;
-                    pushFollow(FOLLOW_lhs_or_in_lhs_exist2282);
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_exist2224); if (failed) return d;
+                    pushFollow(FOLLOW_lhs_or_in_lhs_exist2228);
                     or=lhs_or();
                     _fsp--;
                     if (failed) return d;
@@ -3547,7 +3480,7 @@
                        if ( or != null ) ((ExistsDescr)d).addDescr( or ); 
                     }
                     RIGHT_PAREN38=(Token)input.LT(1);
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_exist2312); if (failed) return d;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_exist2258); if (failed) return d;
                     if ( backtracking==0 ) {
                        d.setEndCharacter( ((CommonToken)RIGHT_PAREN38).getStopIndex() ); 
                     }
@@ -3558,9 +3491,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:849:12: pattern= lhs_pattern
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:841:12: pattern= lhs_pattern
                     {
-                    pushFollow(FOLLOW_lhs_pattern_in_lhs_exist2362);
+                    pushFollow(FOLLOW_lhs_pattern_in_lhs_exist2308);
                     pattern=lhs_pattern();
                     _fsp--;
                     if (failed) return d;
@@ -3594,7 +3527,7 @@
 
 
     // $ANTLR start lhs_not
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:859:1: lhs_not returns [NotDescr d] : NOT ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:851:1: lhs_not returns [NotDescr d] : NOT ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) ;
     public final NotDescr lhs_not() throws RecognitionException {
         NotDescr d = null;
 
@@ -3609,11 +3542,11 @@
         		d = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:863:4: ( NOT ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:863:4: NOT ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:855:2: ( NOT ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:855:4: NOT ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
             {
             NOT39=(Token)input.LT(1);
-            match(input,NOT,FOLLOW_NOT_in_lhs_not2414); if (failed) return d;
+            match(input,NOT,FOLLOW_NOT_in_lhs_not2360); if (failed) return d;
             if ( backtracking==0 ) {
 
               			d = new NotDescr( ); 
@@ -3622,32 +3555,32 @@
               			location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION_NOT );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:870:3: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
-            int alt45=2;
-            int LA45_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:862:3: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )
+            int alt41=2;
+            int LA41_0 = input.LA(1);
 
-            if ( (LA45_0==LEFT_PAREN) ) {
-                alt45=1;
+            if ( (LA41_0==LEFT_PAREN) ) {
+                alt41=1;
             }
-            else if ( (LA45_0==ID) ) {
-                alt45=2;
+            else if ( (LA41_0==ID) ) {
+                alt41=2;
             }
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("870:3: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )", 45, 0, input);
+                    new NoViableAltException("862:3: ( ( LEFT_PAREN or= lhs_or RIGHT_PAREN ) | pattern= lhs_pattern )", 41, 0, input);
 
                 throw nvae;
             }
-            switch (alt45) {
+            switch (alt41) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:870:5: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:862:5: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:870:5: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:870:7: LEFT_PAREN or= lhs_or RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:862:5: ( LEFT_PAREN or= lhs_or RIGHT_PAREN )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:862:7: LEFT_PAREN or= lhs_or RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_not2427); if (failed) return d;
-                    pushFollow(FOLLOW_lhs_or_in_lhs_not2431);
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_not2373); if (failed) return d;
+                    pushFollow(FOLLOW_lhs_or_in_lhs_not2377);
                     or=lhs_or();
                     _fsp--;
                     if (failed) return d;
@@ -3655,7 +3588,7 @@
                        if ( or != null ) d.addDescr( or ); 
                     }
                     RIGHT_PAREN40=(Token)input.LT(1);
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_not2462); if (failed) return d;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_not2408); if (failed) return d;
                     if ( backtracking==0 ) {
                        d.setEndCharacter( ((CommonToken)RIGHT_PAREN40).getStopIndex() ); 
                     }
@@ -3666,9 +3599,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:876:3: pattern= lhs_pattern
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:868:3: pattern= lhs_pattern
                     {
-                    pushFollow(FOLLOW_lhs_pattern_in_lhs_not2499);
+                    pushFollow(FOLLOW_lhs_pattern_in_lhs_not2445);
                     pattern=lhs_pattern();
                     _fsp--;
                     if (failed) return d;
@@ -3702,7 +3635,7 @@
 
 
     // $ANTLR start lhs_eval
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:886:1: lhs_eval returns [BaseDescr d] : EVAL c= paren_chunk ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:878:1: lhs_eval returns [BaseDescr d] : EVAL c= paren_chunk ;
     public final BaseDescr lhs_eval() throws RecognitionException {
         BaseDescr d = null;
 
@@ -3714,17 +3647,17 @@
         		d = new EvalDescr( );
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:891:3: ( EVAL c= paren_chunk )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:891:3: EVAL c= paren_chunk
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:882:2: ( EVAL c= paren_chunk )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:883:3: EVAL c= paren_chunk
             {
             EVAL41=(Token)input.LT(1);
-            match(input,EVAL,FOLLOW_EVAL_in_lhs_eval2545); if (failed) return d;
+            match(input,EVAL,FOLLOW_EVAL_in_lhs_eval2491); if (failed) return d;
             if ( backtracking==0 ) {
 
               			location.setType( Location.LOCATION_LHS_INSIDE_EVAL );
               		
             }
-            pushFollow(FOLLOW_paren_chunk_in_lhs_eval2556);
+            pushFollow(FOLLOW_paren_chunk_in_lhs_eval2502);
             c=paren_chunk();
             _fsp--;
             if (failed) return d;
@@ -3759,7 +3692,7 @@
 
 
     // $ANTLR start lhs_forall
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:911:1: lhs_forall returns [ForallDescr d] : FORALL LEFT_PAREN base= lhs_pattern (pattern= lhs_pattern )* RIGHT_PAREN ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:903:1: lhs_forall returns [ForallDescr d] : FORALL LEFT_PAREN base= lhs_pattern (pattern= lhs_pattern )* RIGHT_PAREN ;
     public final ForallDescr lhs_forall() throws RecognitionException {
         ForallDescr d = null;
 
@@ -3774,13 +3707,13 @@
         		d = factory.createForall();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:915:4: ( FORALL LEFT_PAREN base= lhs_pattern (pattern= lhs_pattern )* RIGHT_PAREN )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:915:4: FORALL LEFT_PAREN base= lhs_pattern (pattern= lhs_pattern )* RIGHT_PAREN
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:907:2: ( FORALL LEFT_PAREN base= lhs_pattern (pattern= lhs_pattern )* RIGHT_PAREN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:907:4: FORALL LEFT_PAREN base= lhs_pattern (pattern= lhs_pattern )* RIGHT_PAREN
             {
             FORALL42=(Token)input.LT(1);
-            match(input,FORALL,FOLLOW_FORALL_in_lhs_forall2582); if (failed) return d;
-            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_forall2584); if (failed) return d;
-            pushFollow(FOLLOW_lhs_pattern_in_lhs_forall2588);
+            match(input,FORALL,FOLLOW_FORALL_in_lhs_forall2528); if (failed) return d;
+            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_lhs_forall2530); if (failed) return d;
+            pushFollow(FOLLOW_lhs_pattern_in_lhs_forall2534);
             base=lhs_pattern();
             _fsp--;
             if (failed) return d;
@@ -3792,22 +3725,22 @@
               			d.setLocation( offset(FORALL42.getLine()), FORALL42.getCharPositionInLine() );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:922:3: (pattern= lhs_pattern )*
-            loop46:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:914:3: (pattern= lhs_pattern )*
+            loop42:
             do {
-                int alt46=2;
-                int LA46_0 = input.LA(1);
+                int alt42=2;
+                int LA42_0 = input.LA(1);
 
-                if ( (LA46_0==ID) ) {
-                    alt46=1;
+                if ( (LA42_0==ID) ) {
+                    alt42=1;
                 }
 
 
-                switch (alt46) {
+                switch (alt42) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:922:5: pattern= lhs_pattern
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:914:5: pattern= lhs_pattern
             	    {
-            	    pushFollow(FOLLOW_lhs_pattern_in_lhs_forall2603);
+            	    pushFollow(FOLLOW_lhs_pattern_in_lhs_forall2549);
             	    pattern=lhs_pattern();
             	    _fsp--;
             	    if (failed) return d;
@@ -3822,12 +3755,12 @@
             	    break;
 
             	default :
-            	    break loop46;
+            	    break loop42;
                 }
             } while (true);
 
             RIGHT_PAREN43=(Token)input.LT(1);
-            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_forall2619); if (failed) return d;
+            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_lhs_forall2565); if (failed) return d;
             if ( backtracking==0 ) {
 
               		        d.setEndCharacter( ((CommonToken)RIGHT_PAREN43).getStopIndex() );
@@ -3849,7 +3782,7 @@
 
 
     // $ANTLR start lhs_pattern
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:934:1: lhs_pattern returns [BaseDescr d] : (f= fact_binding | f= fact[null] );
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:926:1: lhs_pattern returns [BaseDescr d] : (f= fact_binding | f= fact[null] );
     public final BaseDescr lhs_pattern() throws RecognitionException {
         BaseDescr d = null;
 
@@ -3860,23 +3793,23 @@
         		d =null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:941:4: (f= fact_binding | f= fact[null] )
-            int alt47=2;
-            int LA47_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:933:2: (f= fact_binding | f= fact[null] )
+            int alt43=2;
+            int LA43_0 = input.LA(1);
 
-            if ( (LA47_0==ID) ) {
-                int LA47_1 = input.LA(2);
+            if ( (LA43_0==ID) ) {
+                int LA43_1 = input.LA(2);
 
-                if ( (LA47_1==72) ) {
-                    alt47=1;
+                if ( (LA43_1==73) ) {
+                    alt43=1;
                 }
-                else if ( (LA47_1==DOT||LA47_1==LEFT_PAREN||LA47_1==LEFT_SQUARE) ) {
-                    alt47=2;
+                else if ( (LA43_1==DOT||LA43_1==LEFT_PAREN||LA43_1==LEFT_SQUARE) ) {
+                    alt43=2;
                 }
                 else {
                     if (backtracking>0) {failed=true; return d;}
                     NoViableAltException nvae =
-                        new NoViableAltException("934:1: lhs_pattern returns [BaseDescr d] : (f= fact_binding | f= fact[null] );", 47, 1, input);
+                        new NoViableAltException("926:1: lhs_pattern returns [BaseDescr d] : (f= fact_binding | f= fact[null] );", 43, 1, input);
 
                     throw nvae;
                 }
@@ -3884,15 +3817,15 @@
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("934:1: lhs_pattern returns [BaseDescr d] : (f= fact_binding | f= fact[null] );", 47, 0, input);
+                    new NoViableAltException("926:1: lhs_pattern returns [BaseDescr d] : (f= fact_binding | f= fact[null] );", 43, 0, input);
 
                 throw nvae;
             }
-            switch (alt47) {
+            switch (alt43) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:941:4: f= fact_binding
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:933:4: f= fact_binding
                     {
-                    pushFollow(FOLLOW_fact_binding_in_lhs_pattern2652);
+                    pushFollow(FOLLOW_fact_binding_in_lhs_pattern2598);
                     f=fact_binding();
                     _fsp--;
                     if (failed) return d;
@@ -3900,9 +3833,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:942:4: f= fact[null]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:934:4: f= fact[null]
                     {
-                    pushFollow(FOLLOW_fact_in_lhs_pattern2660);
+                    pushFollow(FOLLOW_fact_in_lhs_pattern2606);
                     f=fact(null);
                     _fsp--;
                     if (failed) return d;
@@ -3929,7 +3862,7 @@
 
 
     // $ANTLR start from_statement
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:945:1: from_statement returns [FromDescr d] : ds= from_source[$d] ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:937:1: from_statement returns [FromDescr d] : ds= from_source[$d] ;
     public final FromDescr from_statement() throws RecognitionException {
         FromDescr d = null;
 
@@ -3940,10 +3873,10 @@
         		d =factory.createFrom();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:950:2: (ds= from_source[$d] )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:950:2: ds= from_source[$d]
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:941:2: (ds= from_source[$d] )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:942:2: ds= from_source[$d]
             {
-            pushFollow(FOLLOW_from_source_in_from_statement2687);
+            pushFollow(FOLLOW_from_source_in_from_statement2633);
             ds=from_source(d);
             _fsp--;
             if (failed) return d;
@@ -3968,7 +3901,7 @@
 
 
     // $ANTLR start from_source
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:956:1: from_source[FromDescr from] returns [DeclarativeInvokerDescr ds] : ident= identifier ( options {k=1; } : args= paren_chunk )? ( expression_chain[$from, ad] )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:948:1: from_source[FromDescr from] returns [DeclarativeInvokerDescr ds] : ident= identifier ( options {k=1; } : args= paren_chunk )? ( expression_chain[$from, ad] )? ;
     public final DeclarativeInvokerDescr from_source(FromDescr from) throws RecognitionException {
         DeclarativeInvokerDescr ds = null;
 
@@ -3983,10 +3916,10 @@
         		FunctionCallDescr fc = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:962:4: (ident= identifier ( options {k=1; } : args= paren_chunk )? ( expression_chain[$from, ad] )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:962:4: ident= identifier ( options {k=1; } : args= paren_chunk )? ( expression_chain[$from, ad] )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:954:2: (ident= identifier ( options {k=1; } : args= paren_chunk )? ( expression_chain[$from, ad] )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:954:4: ident= identifier ( options {k=1; } : args= paren_chunk )? ( expression_chain[$from, ad] )?
             {
-            pushFollow(FOLLOW_identifier_in_from_source2716);
+            pushFollow(FOLLOW_identifier_in_from_source2662);
             ident=identifier();
             _fsp--;
             if (failed) return ds;
@@ -4000,18 +3933,18 @@
               			location.setProperty(Location.LOCATION_FROM_CONTENT, ident.start.getText());
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:971:3: ( options {k=1; } : args= paren_chunk )?
-            int alt48=2;
-            int LA48_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:963:3: ( options {k=1; } : args= paren_chunk )?
+            int alt44=2;
+            int LA44_0 = input.LA(1);
 
-            if ( (LA48_0==LEFT_PAREN) ) {
-                alt48=1;
+            if ( (LA44_0==LEFT_PAREN) ) {
+                alt44=1;
             }
-            switch (alt48) {
+            switch (alt44) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:978:5: args= paren_chunk
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:970:5: args= paren_chunk
                     {
-                    pushFollow(FOLLOW_paren_chunk_in_from_source2744);
+                    pushFollow(FOLLOW_paren_chunk_in_from_source2690);
                     args=paren_chunk();
                     _fsp--;
                     if (failed) return ds;
@@ -4035,18 +3968,18 @@
 
             }
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:992:3: ( expression_chain[$from, ad] )?
-            int alt49=2;
-            int LA49_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:984:3: ( expression_chain[$from, ad] )?
+            int alt45=2;
+            int LA45_0 = input.LA(1);
 
-            if ( (LA49_0==DOT) ) {
-                alt49=1;
+            if ( (LA45_0==DOT) ) {
+                alt45=1;
             }
-            switch (alt49) {
+            switch (alt45) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:992:3: expression_chain[$from, ad]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:984:3: expression_chain[$from, ad]
                     {
-                    pushFollow(FOLLOW_expression_chain_in_from_source2757);
+                    pushFollow(FOLLOW_expression_chain_in_from_source2703);
                     expression_chain(from,  ad);
                     _fsp--;
                     if (failed) return ds;
@@ -4080,7 +4013,7 @@
 
 
     // $ANTLR start accumulate_statement
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1004:1: accumulate_statement returns [AccumulateDescr d] : ACCUMULATE LEFT_PAREN pattern= pattern_source ( COMMA )? ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) ) RIGHT_PAREN ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:996:1: accumulate_statement returns [AccumulateDescr d] : ACCUMULATE LEFT_PAREN pattern= pattern_source ( COMMA )? ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) ) RIGHT_PAREN ;
     public final AccumulateDescr accumulate_statement() throws RecognitionException {
         AccumulateDescr d = null;
 
@@ -4096,11 +4029,11 @@
         		d = factory.createAccumulate();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1009:10: ( ACCUMULATE LEFT_PAREN pattern= pattern_source ( COMMA )? ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) ) RIGHT_PAREN )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1009:10: ACCUMULATE LEFT_PAREN pattern= pattern_source ( COMMA )? ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) ) RIGHT_PAREN
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1000:2: ( ACCUMULATE LEFT_PAREN pattern= pattern_source ( COMMA )? ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) ) RIGHT_PAREN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1001:10: ACCUMULATE LEFT_PAREN pattern= pattern_source ( COMMA )? ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) ) RIGHT_PAREN
             {
             ACCUMULATE44=(Token)input.LT(1);
-            match(input,ACCUMULATE,FOLLOW_ACCUMULATE_in_accumulate_statement2798); if (failed) return d;
+            match(input,ACCUMULATE,FOLLOW_ACCUMULATE_in_accumulate_statement2744); if (failed) return d;
             if ( backtracking==0 ) {
                
               			d.setLocation( offset(ACCUMULATE44.getLine()), ACCUMULATE44.getCharPositionInLine() );
@@ -4108,23 +4041,23 @@
               			location.setType( Location.LOCATION_LHS_FROM_ACCUMULATE );
               		
             }
-            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_accumulate_statement2808); if (failed) return d;
-            pushFollow(FOLLOW_pattern_source_in_accumulate_statement2812);
+            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_accumulate_statement2754); if (failed) return d;
+            pushFollow(FOLLOW_pattern_source_in_accumulate_statement2758);
             pattern=pattern_source();
             _fsp--;
             if (failed) return d;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1015:37: ( COMMA )?
-            int alt50=2;
-            int LA50_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1007:37: ( COMMA )?
+            int alt46=2;
+            int LA46_0 = input.LA(1);
 
-            if ( (LA50_0==COMMA) ) {
-                alt50=1;
+            if ( (LA46_0==COMMA) ) {
+                alt46=1;
             }
-            switch (alt50) {
+            switch (alt46) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1015:37: COMMA
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1007:37: COMMA
                     {
-                    match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2814); if (failed) return d;
+                    match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2760); if (failed) return d;
 
                     }
                     break;
@@ -4136,52 +4069,52 @@
               		        d.setInputPattern( (PatternDescr) pattern );
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1019:3: ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) )
-            int alt55=2;
-            int LA55_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1011:3: ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) )
+            int alt51=2;
+            int LA51_0 = input.LA(1);
 
-            if ( (LA55_0==INIT) ) {
-                alt55=1;
+            if ( (LA51_0==INIT) ) {
+                alt51=1;
             }
-            else if ( (LA55_0==ID) ) {
-                alt55=2;
+            else if ( (LA51_0==ID) ) {
+                alt51=2;
             }
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1019:3: ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) )", 55, 0, input);
+                    new NoViableAltException("1011:3: ( ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk ) | (id= ID text= paren_chunk ) )", 51, 0, input);
 
                 throw nvae;
             }
-            switch (alt55) {
+            switch (alt51) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1019:5: ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1011:5: ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk )
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1019:5: ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1020:4: INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1011:5: ( INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1012:4: INIT text= paren_chunk ( COMMA )? ACTION text= paren_chunk ( COMMA )? ( REVERSE text= paren_chunk ( COMMA )? )? RESULT text= paren_chunk
                     {
-                    match(input,INIT,FOLLOW_INIT_in_accumulate_statement2832); if (failed) return d;
+                    match(input,INIT,FOLLOW_INIT_in_accumulate_statement2778); if (failed) return d;
                     if ( backtracking==0 ) {
 
                       				location.setType( Location.LOCATION_LHS_FROM_ACCUMULATE_INIT );
                       			
                     }
-                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2845);
+                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2791);
                     text=paren_chunk();
                     _fsp--;
                     if (failed) return d;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1024:21: ( COMMA )?
-                    int alt51=2;
-                    int LA51_0 = input.LA(1);
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1016:21: ( COMMA )?
+                    int alt47=2;
+                    int LA47_0 = input.LA(1);
 
-                    if ( (LA51_0==COMMA) ) {
-                        alt51=1;
+                    if ( (LA47_0==COMMA) ) {
+                        alt47=1;
                     }
-                    switch (alt51) {
+                    switch (alt47) {
                         case 1 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1024:21: COMMA
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1016:21: COMMA
                             {
-                            match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2847); if (failed) return d;
+                            match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2793); if (failed) return d;
 
                             }
                             break;
@@ -4197,23 +4130,23 @@
                       				}
                       			
                     }
-                    match(input,ACTION,FOLLOW_ACTION_in_accumulate_statement2858); if (failed) return d;
-                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2862);
+                    match(input,ACTION,FOLLOW_ACTION_in_accumulate_statement2804); if (failed) return d;
+                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2808);
                     text=paren_chunk();
                     _fsp--;
                     if (failed) return d;
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1032:28: ( COMMA )?
-                    int alt52=2;
-                    int LA52_0 = input.LA(1);
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1024:28: ( COMMA )?
+                    int alt48=2;
+                    int LA48_0 = input.LA(1);
 
-                    if ( (LA52_0==COMMA) ) {
-                        alt52=1;
+                    if ( (LA48_0==COMMA) ) {
+                        alt48=1;
                     }
-                    switch (alt52) {
+                    switch (alt48) {
                         case 1 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1032:28: COMMA
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1024:28: COMMA
                             {
-                            match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2864); if (failed) return d;
+                            match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2810); if (failed) return d;
 
                             }
                             break;
@@ -4229,34 +4162,34 @@
                       				}
                       			
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1040:4: ( REVERSE text= paren_chunk ( COMMA )? )?
-                    int alt54=2;
-                    int LA54_0 = input.LA(1);
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1032:4: ( REVERSE text= paren_chunk ( COMMA )? )?
+                    int alt50=2;
+                    int LA50_0 = input.LA(1);
 
-                    if ( (LA54_0==REVERSE) ) {
-                        alt54=1;
+                    if ( (LA50_0==REVERSE) ) {
+                        alt50=1;
                     }
-                    switch (alt54) {
+                    switch (alt50) {
                         case 1 :
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1040:6: REVERSE text= paren_chunk ( COMMA )?
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1032:6: REVERSE text= paren_chunk ( COMMA )?
                             {
-                            match(input,REVERSE,FOLLOW_REVERSE_in_accumulate_statement2877); if (failed) return d;
-                            pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2881);
+                            match(input,REVERSE,FOLLOW_REVERSE_in_accumulate_statement2823); if (failed) return d;
+                            pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2827);
                             text=paren_chunk();
                             _fsp--;
                             if (failed) return d;
-                            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1040:31: ( COMMA )?
-                            int alt53=2;
-                            int LA53_0 = input.LA(1);
+                            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1032:31: ( COMMA )?
+                            int alt49=2;
+                            int LA49_0 = input.LA(1);
 
-                            if ( (LA53_0==COMMA) ) {
-                                alt53=1;
+                            if ( (LA49_0==COMMA) ) {
+                                alt49=1;
                             }
-                            switch (alt53) {
+                            switch (alt49) {
                                 case 1 :
-                                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1040:31: COMMA
+                                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1032:31: COMMA
                                     {
-                                    match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2883); if (failed) return d;
+                                    match(input,COMMA,FOLLOW_COMMA_in_accumulate_statement2829); if (failed) return d;
 
                                     }
                                     break;
@@ -4278,8 +4211,8 @@
 
                     }
 
-                    match(input,RESULT,FOLLOW_RESULT_in_accumulate_statement2900); if (failed) return d;
-                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2904);
+                    match(input,RESULT,FOLLOW_RESULT_in_accumulate_statement2846); if (failed) return d;
+                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2850);
                     text=paren_chunk();
                     _fsp--;
                     if (failed) return d;
@@ -4298,14 +4231,14 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1058:3: (id= ID text= paren_chunk )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1050:3: (id= ID text= paren_chunk )
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1058:3: (id= ID text= paren_chunk )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1059:4: id= ID text= paren_chunk
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1050:3: (id= ID text= paren_chunk )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1051:4: id= ID text= paren_chunk
                     {
                     id=(Token)input.LT(1);
-                    match(input,ID,FOLLOW_ID_in_accumulate_statement2930); if (failed) return d;
-                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2934);
+                    match(input,ID,FOLLOW_ID_in_accumulate_statement2876); if (failed) return d;
+                    pushFollow(FOLLOW_paren_chunk_in_accumulate_statement2880);
                     text=paren_chunk();
                     _fsp--;
                     if (failed) return d;
@@ -4329,7 +4262,7 @@
             }
 
             RIGHT_PAREN45=(Token)input.LT(1);
-            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_accumulate_statement2951); if (failed) return d;
+            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_accumulate_statement2897); if (failed) return d;
             if ( backtracking==0 ) {
 
               			location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION );
@@ -4352,7 +4285,7 @@
 
 
     // $ANTLR start expression_chain
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1077:1: expression_chain[FromDescr from, AccessorDescr as] : ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1069:1: expression_chain[FromDescr from, AccessorDescr as] : ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? ) ;
     public final void expression_chain(FromDescr from, AccessorDescr as) throws RecognitionException {
         identifier_return field = null;
 
@@ -4366,14 +4299,14 @@
         	    	MethodAccessDescr ma = null;	
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1083:2: ( ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1083:2: ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1074:2: ( ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1075:2: ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? )
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1083:2: ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1083:4: DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1075:2: ( DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1075:4: DOT field= identifier ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )? ( expression_chain[from, as] )?
             {
-            match(input,DOT,FOLLOW_DOT_in_expression_chain2980); if (failed) return ;
-            pushFollow(FOLLOW_identifier_in_expression_chain2984);
+            match(input,DOT,FOLLOW_DOT_in_expression_chain2926); if (failed) return ;
+            pushFollow(FOLLOW_identifier_in_expression_chain2930);
             field=identifier();
             _fsp--;
             if (failed) return ;
@@ -4385,14 +4318,14 @@
               		fa.setEndCharacter( ((CommonToken)((Token)field.start)).getStopIndex() );
               	    
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1090:4: ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )?
-            int alt56=3;
-            alt56 = dfa56.predict(input);
-            switch (alt56) {
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1082:4: ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )?
+            int alt52=3;
+            alt52 = dfa52.predict(input);
+            switch (alt52) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1091:6: ( LEFT_SQUARE )=>sqarg= square_chunk
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1083:6: ( LEFT_SQUARE )=>sqarg= square_chunk
                     {
-                    pushFollow(FOLLOW_square_chunk_in_expression_chain3015);
+                    pushFollow(FOLLOW_square_chunk_in_expression_chain2961);
                     sqarg=square_chunk();
                     _fsp--;
                     if (failed) return ;
@@ -4406,9 +4339,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1097:6: ( LEFT_PAREN )=>paarg= paren_chunk
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1089:6: ( LEFT_PAREN )=>paarg= paren_chunk
                     {
-                    pushFollow(FOLLOW_paren_chunk_in_expression_chain3048);
+                    pushFollow(FOLLOW_paren_chunk_in_expression_chain2994);
                     paarg=paren_chunk();
                     _fsp--;
                     if (failed) return ;
@@ -4426,18 +4359,18 @@
 
             }
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1105:4: ( expression_chain[from, as] )?
-            int alt57=2;
-            int LA57_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1097:4: ( expression_chain[from, as] )?
+            int alt53=2;
+            int LA53_0 = input.LA(1);
 
-            if ( (LA57_0==DOT) ) {
-                alt57=1;
+            if ( (LA53_0==DOT) ) {
+                alt53=1;
             }
-            switch (alt57) {
+            switch (alt53) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1105:4: expression_chain[from, as]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1097:4: expression_chain[from, as]
                     {
-                    pushFollow(FOLLOW_expression_chain_in_expression_chain3063);
+                    pushFollow(FOLLOW_expression_chain_in_expression_chain3009);
                     expression_chain(from,  as);
                     _fsp--;
                     if (failed) return ;
@@ -4474,7 +4407,7 @@
 
 
     // $ANTLR start collect_statement
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1119:1: collect_statement returns [CollectDescr d] : COLLECT LEFT_PAREN pattern= pattern_source RIGHT_PAREN ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1111:1: collect_statement returns [CollectDescr d] : COLLECT LEFT_PAREN pattern= pattern_source RIGHT_PAREN ;
     public final CollectDescr collect_statement() throws RecognitionException {
         CollectDescr d = null;
 
@@ -4487,11 +4420,11 @@
         		d = factory.createCollect();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1124:10: ( COLLECT LEFT_PAREN pattern= pattern_source RIGHT_PAREN )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1124:10: COLLECT LEFT_PAREN pattern= pattern_source RIGHT_PAREN
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1115:2: ( COLLECT LEFT_PAREN pattern= pattern_source RIGHT_PAREN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1116:10: COLLECT LEFT_PAREN pattern= pattern_source RIGHT_PAREN
             {
             COLLECT46=(Token)input.LT(1);
-            match(input,COLLECT,FOLLOW_COLLECT_in_collect_statement3114); if (failed) return d;
+            match(input,COLLECT,FOLLOW_COLLECT_in_collect_statement3060); if (failed) return d;
             if ( backtracking==0 ) {
                
               			d.setLocation( offset(COLLECT46.getLine()), COLLECT46.getCharPositionInLine() );
@@ -4499,13 +4432,13 @@
               			location.setType( Location.LOCATION_LHS_FROM_COLLECT );
               		
             }
-            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_collect_statement3124); if (failed) return d;
-            pushFollow(FOLLOW_pattern_source_in_collect_statement3128);
+            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_collect_statement3070); if (failed) return d;
+            pushFollow(FOLLOW_pattern_source_in_collect_statement3074);
             pattern=pattern_source();
             _fsp--;
             if (failed) return d;
             RIGHT_PAREN47=(Token)input.LT(1);
-            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_collect_statement3130); if (failed) return d;
+            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_collect_statement3076); if (failed) return d;
             if ( backtracking==0 ) {
 
               		        d.setInputPattern( (PatternDescr) pattern );
@@ -4529,7 +4462,7 @@
 
 
     // $ANTLR start fact_binding
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1138:1: fact_binding returns [BaseDescr d] : ID ':' (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1130:1: fact_binding returns [BaseDescr d] : ID ':' (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN ) ;
     public final BaseDescr fact_binding() throws RecognitionException {
         BaseDescr d = null;
 
@@ -4546,12 +4479,12 @@
         		OrDescr or = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1144:4: ( ID ':' (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1144:4: ID ':' (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1135:3: ( ID ':' (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1136:4: ID ':' (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN )
             {
             ID48=(Token)input.LT(1);
-            match(input,ID,FOLLOW_ID_in_fact_binding3162); if (failed) return d;
-            match(input,72,FOLLOW_72_in_fact_binding3164); if (failed) return d;
+            match(input,ID,FOLLOW_ID_in_fact_binding3108); if (failed) return d;
+            match(input,73,FOLLOW_73_in_fact_binding3110); if (failed) return d;
             if ( backtracking==0 ) {
 
                		        // handling incomplete parsing
@@ -4559,28 +4492,28 @@
                		        ((PatternDescr) d).setIdentifier( ID48.getText() );
                		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1150:3: (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN )
-            int alt59=2;
-            int LA59_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1142:3: (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN )
+            int alt55=2;
+            int LA55_0 = input.LA(1);
 
-            if ( (LA59_0==ID) ) {
-                alt59=1;
+            if ( (LA55_0==ID) ) {
+                alt55=1;
             }
-            else if ( (LA59_0==LEFT_PAREN) ) {
-                alt59=2;
+            else if ( (LA55_0==LEFT_PAREN) ) {
+                alt55=2;
             }
             else {
                 if (backtracking>0) {failed=true; return d;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1150:3: (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN )", 59, 0, input);
+                    new NoViableAltException("1142:3: (fe= fact[$ID.text] | LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN )", 55, 0, input);
 
                 throw nvae;
             }
-            switch (alt59) {
+            switch (alt55) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1150:5: fe= fact[$ID.text]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1142:5: fe= fact[$ID.text]
                     {
-                    pushFollow(FOLLOW_fact_in_fact_binding3178);
+                    pushFollow(FOLLOW_fact_in_fact_binding3124);
                     fe=fact(ID48.getText());
                     _fsp--;
                     if (failed) return d;
@@ -4597,10 +4530,10 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1159:4: LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1151:4: LEFT_PAREN left= fact[$ID.text] ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )* RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_fact_binding3194); if (failed) return d;
-                    pushFollow(FOLLOW_fact_in_fact_binding3198);
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_fact_binding3140); if (failed) return d;
+                    pushFollow(FOLLOW_fact_in_fact_binding3144);
                     left=fact(ID48.getText());
                     _fsp--;
                     if (failed) return d;
@@ -4613,20 +4546,20 @@
                          			}
                        		
                     }
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1167:4: ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )*
-                    loop58:
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1159:4: ( ( OR | DOUBLE_PIPE ) right= fact[$ID.text] )*
+                    loop54:
                     do {
-                        int alt58=2;
-                        int LA58_0 = input.LA(1);
+                        int alt54=2;
+                        int LA54_0 = input.LA(1);
 
-                        if ( ((LA58_0>=OR && LA58_0<=DOUBLE_PIPE)) ) {
-                            alt58=1;
+                        if ( ((LA54_0>=OR && LA54_0<=DOUBLE_PIPE)) ) {
+                            alt54=1;
                         }
 
 
-                        switch (alt58) {
+                        switch (alt54) {
                     	case 1 :
-                    	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1167:6: ( OR | DOUBLE_PIPE ) right= fact[$ID.text]
+                    	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1159:6: ( OR | DOUBLE_PIPE ) right= fact[$ID.text]
                     	    {
                     	    if ( (input.LA(1)>=OR && input.LA(1)<=DOUBLE_PIPE) ) {
                     	        input.consume();
@@ -4636,10 +4569,10 @@
                     	        if (backtracking>0) {failed=true; return d;}
                     	        MismatchedSetException mse =
                     	            new MismatchedSetException(null,input);
-                    	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_fact_binding3211);    throw mse;
+                    	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_fact_binding3157);    throw mse;
                     	    }
 
-                    	    pushFollow(FOLLOW_fact_in_fact_binding3223);
+                    	    pushFollow(FOLLOW_fact_in_fact_binding3169);
                     	    right=fact(ID48.getText());
                     	    _fsp--;
                     	    if (failed) return d;
@@ -4658,11 +4591,11 @@
                     	    break;
 
                     	default :
-                    	    break loop58;
+                    	    break loop54;
                         }
                     } while (true);
 
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_fact_binding3241); if (failed) return d;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_fact_binding3187); if (failed) return d;
 
                     }
                     break;
@@ -4685,7 +4618,7 @@
 
 
     // $ANTLR start fact
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1182:1: fact[String ident] returns [BaseDescr d] : id= qualified_id LEFT_PAREN ( constraints[pattern] )? RIGHT_PAREN ( EOF )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1174:1: fact[String ident] returns [BaseDescr d] : id= qualified_id LEFT_PAREN ( constraints[pattern] )? RIGHT_PAREN ( EOF )? ;
     public final BaseDescr fact(String ident) throws RecognitionException {
         BaseDescr d = null;
 
@@ -4699,8 +4632,8 @@
         		PatternDescr pattern = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1188:11: (id= qualified_id LEFT_PAREN ( constraints[pattern] )? RIGHT_PAREN ( EOF )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1188:11: id= qualified_id LEFT_PAREN ( constraints[pattern] )? RIGHT_PAREN ( EOF )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1179:3: (id= qualified_id LEFT_PAREN ( constraints[pattern] )? RIGHT_PAREN ( EOF )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1180:11: id= qualified_id LEFT_PAREN ( constraints[pattern] )? RIGHT_PAREN ( EOF )?
             {
             if ( backtracking==0 ) {
 
@@ -4711,7 +4644,7 @@
                			d = pattern; 
                	        
             }
-            pushFollow(FOLLOW_qualified_id_in_fact3296);
+            pushFollow(FOLLOW_qualified_id_in_fact3242);
             id=qualified_id();
             _fsp--;
             if (failed) return d;
@@ -4725,7 +4658,7 @@
                		
             }
             LEFT_PAREN49=(Token)input.LT(1);
-            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_fact3306); if (failed) return d;
+            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_fact3252); if (failed) return d;
             if ( backtracking==0 ) {
 
               		        location.setType( Location.LOCATION_LHS_INSIDE_CONDITION_START );
@@ -4735,18 +4668,18 @@
                			pattern.setLeftParentCharacter( ((CommonToken)LEFT_PAREN49).getStartIndex() );
                		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1211:4: ( constraints[pattern] )?
-            int alt60=2;
-            int LA60_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1203:4: ( constraints[pattern] )?
+            int alt56=2;
+            int LA56_0 = input.LA(1);
 
-            if ( ((LA60_0>=ATTRIBUTES && LA60_0<=ID)||(LA60_0>=GLOBAL && LA60_0<=LEFT_PAREN)||(LA60_0>=QUERY && LA60_0<=WHEN)||LA60_0==ENABLED||LA60_0==SALIENCE||(LA60_0>=DURATION && LA60_0<=DIALECT)||LA60_0==FROM||LA60_0==EVAL||(LA60_0>=INIT && LA60_0<=RESULT)||(LA60_0>=CONTAINS && LA60_0<=IN)||LA60_0==THEN) ) {
-                alt60=1;
+            if ( ((LA56_0>=PACKAGE && LA56_0<=ID)||(LA56_0>=GLOBAL && LA56_0<=LEFT_PAREN)||(LA56_0>=QUERY && LA56_0<=ATTRIBUTES)||LA56_0==ENABLED||LA56_0==SALIENCE||(LA56_0>=DURATION && LA56_0<=DIALECT)||LA56_0==FROM||LA56_0==EVAL||(LA56_0>=INIT && LA56_0<=RESULT)||(LA56_0>=CONTAINS && LA56_0<=IN)||LA56_0==THEN) ) {
+                alt56=1;
             }
-            switch (alt60) {
+            switch (alt56) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1211:4: constraints[pattern]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1203:4: constraints[pattern]
                     {
-                    pushFollow(FOLLOW_constraints_in_fact3318);
+                    pushFollow(FOLLOW_constraints_in_fact3264);
                     constraints(pattern);
                     _fsp--;
                     if (failed) return d;
@@ -4757,7 +4690,7 @@
             }
 
             RIGHT_PAREN50=(Token)input.LT(1);
-            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_fact3325); if (failed) return d;
+            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_fact3271); if (failed) return d;
             if ( backtracking==0 ) {
 
               			this.location.setType( Location.LOCATION_LHS_BEGIN_OF_CONDITION );
@@ -4766,18 +4699,18 @@
               		        pattern.setRightParentCharacter( ((CommonToken)RIGHT_PAREN50).getStartIndex() );
                		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1219:4: ( EOF )?
-            int alt61=2;
-            int LA61_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1211:4: ( EOF )?
+            int alt57=2;
+            int LA57_0 = input.LA(1);
 
-            if ( (LA61_0==EOF) ) {
-                alt61=1;
+            if ( (LA57_0==EOF) ) {
+                alt57=1;
             }
-            switch (alt61) {
+            switch (alt57) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1219:4: EOF
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1211:4: EOF
                     {
-                    match(input,EOF,FOLLOW_EOF_in_fact3334); if (failed) return d;
+                    match(input,EOF,FOLLOW_EOF_in_fact3280); if (failed) return d;
 
                     }
                     break;
@@ -4800,36 +4733,36 @@
 
 
     // $ANTLR start constraints
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1223:1: constraints[PatternDescr pattern] : constraint[$pattern] ( COMMA constraint[$pattern] )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1215:1: constraints[PatternDescr pattern] : constraint[$pattern] ( COMMA constraint[$pattern] )* ;
     public final void constraints(PatternDescr pattern) throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1224:4: ( constraint[$pattern] ( COMMA constraint[$pattern] )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1224:4: constraint[$pattern] ( COMMA constraint[$pattern] )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1216:2: ( constraint[$pattern] ( COMMA constraint[$pattern] )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1216:4: constraint[$pattern] ( COMMA constraint[$pattern] )*
             {
-            pushFollow(FOLLOW_constraint_in_constraints3352);
+            pushFollow(FOLLOW_constraint_in_constraints3298);
             constraint(pattern);
             _fsp--;
             if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1225:3: ( COMMA constraint[$pattern] )*
-            loop62:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1217:3: ( COMMA constraint[$pattern] )*
+            loop58:
             do {
-                int alt62=2;
-                int LA62_0 = input.LA(1);
+                int alt58=2;
+                int LA58_0 = input.LA(1);
 
-                if ( (LA62_0==COMMA) ) {
-                    alt62=1;
+                if ( (LA58_0==COMMA) ) {
+                    alt58=1;
                 }
 
 
-                switch (alt62) {
+                switch (alt58) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1225:5: COMMA constraint[$pattern]
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1217:5: COMMA constraint[$pattern]
             	    {
-            	    match(input,COMMA,FOLLOW_COMMA_in_constraints3359); if (failed) return ;
+            	    match(input,COMMA,FOLLOW_COMMA_in_constraints3305); if (failed) return ;
             	    if ( backtracking==0 ) {
             	       location.setType( Location.LOCATION_LHS_INSIDE_CONDITION_START ); 
             	    }
-            	    pushFollow(FOLLOW_constraint_in_constraints3368);
+            	    pushFollow(FOLLOW_constraint_in_constraints3314);
             	    constraint(pattern);
             	    _fsp--;
             	    if (failed) return ;
@@ -4838,7 +4771,7 @@
             	    break;
 
             	default :
-            	    break loop62;
+            	    break loop58;
                 }
             } while (true);
 
@@ -4858,21 +4791,21 @@
 
 
     // $ANTLR start constraint
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1230:1: constraint[PatternDescr pattern] : or_constr[top] ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1222:1: constraint[PatternDescr pattern] : or_constr[top] ;
     public final void constraint(PatternDescr pattern) throws RecognitionException {
 
         		ConditionalElementDescr top = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1235:3: ( or_constr[top] )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1235:3: or_constr[top]
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1226:2: ( or_constr[top] )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1227:3: or_constr[top]
             {
             if ( backtracking==0 ) {
 
               			top = pattern.getConstraint();
               		
             }
-            pushFollow(FOLLOW_or_constr_in_constraint3401);
+            pushFollow(FOLLOW_or_constr_in_constraint3347);
             or_constr(top);
             _fsp--;
             if (failed) return ;
@@ -4892,41 +4825,41 @@
 
 
     // $ANTLR start or_constr
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1241:1: or_constr[ConditionalElementDescr base] : and_constr[or] ( DOUBLE_PIPE and_constr[or] )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1233:1: or_constr[ConditionalElementDescr base] : and_constr[or] ( DOUBLE_PIPE and_constr[or] )* ;
     public final void or_constr(ConditionalElementDescr base) throws RecognitionException {
 
         		OrDescr or = new OrDescr();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1246:3: ( and_constr[or] ( DOUBLE_PIPE and_constr[or] )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1246:3: and_constr[or] ( DOUBLE_PIPE and_constr[or] )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1237:2: ( and_constr[or] ( DOUBLE_PIPE and_constr[or] )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1238:3: and_constr[or] ( DOUBLE_PIPE and_constr[or] )*
             {
-            pushFollow(FOLLOW_and_constr_in_or_constr3424);
+            pushFollow(FOLLOW_and_constr_in_or_constr3370);
             and_constr(or);
             _fsp--;
             if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1247:3: ( DOUBLE_PIPE and_constr[or] )*
-            loop63:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1239:3: ( DOUBLE_PIPE and_constr[or] )*
+            loop59:
             do {
-                int alt63=2;
-                int LA63_0 = input.LA(1);
+                int alt59=2;
+                int LA59_0 = input.LA(1);
 
-                if ( (LA63_0==DOUBLE_PIPE) ) {
-                    alt63=1;
+                if ( (LA59_0==DOUBLE_PIPE) ) {
+                    alt59=1;
                 }
 
 
-                switch (alt63) {
+                switch (alt59) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1247:5: DOUBLE_PIPE and_constr[or]
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1239:5: DOUBLE_PIPE and_constr[or]
             	    {
-            	    match(input,DOUBLE_PIPE,FOLLOW_DOUBLE_PIPE_in_or_constr3432); if (failed) return ;
+            	    match(input,DOUBLE_PIPE,FOLLOW_DOUBLE_PIPE_in_or_constr3378); if (failed) return ;
             	    if ( backtracking==0 ) {
 
             	      			location.setType(Location.LOCATION_LHS_INSIDE_CONDITION_START);
             	      		
             	    }
-            	    pushFollow(FOLLOW_and_constr_in_or_constr3441);
+            	    pushFollow(FOLLOW_and_constr_in_or_constr3387);
             	    and_constr(or);
             	    _fsp--;
             	    if (failed) return ;
@@ -4935,7 +4868,7 @@
             	    break;
 
             	default :
-            	    break loop63;
+            	    break loop59;
                 }
             } while (true);
 
@@ -4964,41 +4897,41 @@
 
 
     // $ANTLR start and_constr
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1262:1: and_constr[ConditionalElementDescr base] : unary_constr[and] ( DOUBLE_AMPER unary_constr[and] )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1254:1: and_constr[ConditionalElementDescr base] : unary_constr[and] ( DOUBLE_AMPER unary_constr[and] )* ;
     public final void and_constr(ConditionalElementDescr base) throws RecognitionException {
 
         		AndDescr and = new AndDescr();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1267:3: ( unary_constr[and] ( DOUBLE_AMPER unary_constr[and] )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1267:3: unary_constr[and] ( DOUBLE_AMPER unary_constr[and] )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1258:2: ( unary_constr[and] ( DOUBLE_AMPER unary_constr[and] )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1259:3: unary_constr[and] ( DOUBLE_AMPER unary_constr[and] )*
             {
-            pushFollow(FOLLOW_unary_constr_in_and_constr3473);
+            pushFollow(FOLLOW_unary_constr_in_and_constr3419);
             unary_constr(and);
             _fsp--;
             if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1268:3: ( DOUBLE_AMPER unary_constr[and] )*
-            loop64:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1260:3: ( DOUBLE_AMPER unary_constr[and] )*
+            loop60:
             do {
-                int alt64=2;
-                int LA64_0 = input.LA(1);
+                int alt60=2;
+                int LA60_0 = input.LA(1);
 
-                if ( (LA64_0==DOUBLE_AMPER) ) {
-                    alt64=1;
+                if ( (LA60_0==DOUBLE_AMPER) ) {
+                    alt60=1;
                 }
 
 
-                switch (alt64) {
+                switch (alt60) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1268:5: DOUBLE_AMPER unary_constr[and]
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1260:5: DOUBLE_AMPER unary_constr[and]
             	    {
-            	    match(input,DOUBLE_AMPER,FOLLOW_DOUBLE_AMPER_in_and_constr3481); if (failed) return ;
+            	    match(input,DOUBLE_AMPER,FOLLOW_DOUBLE_AMPER_in_and_constr3427); if (failed) return ;
             	    if ( backtracking==0 ) {
 
             	      			location.setType(Location.LOCATION_LHS_INSIDE_CONDITION_START);
             	      		
             	    }
-            	    pushFollow(FOLLOW_unary_constr_in_and_constr3490);
+            	    pushFollow(FOLLOW_unary_constr_in_and_constr3436);
             	    unary_constr(and);
             	    _fsp--;
             	    if (failed) return ;
@@ -5007,7 +4940,7 @@
             	    break;
 
             	default :
-            	    break loop64;
+            	    break loop60;
                 }
             } while (true);
 
@@ -5036,16 +4969,15 @@
 
 
     // $ANTLR start unary_constr
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1283:1: unary_constr[ConditionalElementDescr base] : ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1275:1: unary_constr[ConditionalElementDescr base] : ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] ) ;
     public final void unary_constr(ConditionalElementDescr base) throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1285:3: ( ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1285:3: ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1276:2: ( ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1277:3: ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] )
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1285:3: ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] )
-            int alt65=3;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1277:3: ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] )
+            int alt61=3;
             switch ( input.LA(1) ) {
-            case ATTRIBUTES:
             case PACKAGE:
             case IMPORT:
             case FUNCTION:
@@ -5056,6 +4988,7 @@
             case TEMPLATE:
             case RULE:
             case WHEN:
+            case ATTRIBUTES:
             case ENABLED:
             case SALIENCE:
             case DURATION:
@@ -5072,32 +5005,32 @@
             case IN:
             case THEN:
                 {
-                alt65=1;
+                alt61=1;
                 }
                 break;
             case LEFT_PAREN:
                 {
-                alt65=2;
+                alt61=2;
                 }
                 break;
             case EVAL:
                 {
-                alt65=3;
+                alt61=3;
                 }
                 break;
             default:
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1285:3: ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] )", 65, 0, input);
+                    new NoViableAltException("1277:3: ( field_constraint[$base] | LEFT_PAREN or_constr[$base] RIGHT_PAREN | EVAL predicate[$base] )", 61, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt65) {
+            switch (alt61) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1285:5: field_constraint[$base]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1277:5: field_constraint[$base]
                     {
-                    pushFollow(FOLLOW_field_constraint_in_unary_constr3518);
+                    pushFollow(FOLLOW_field_constraint_in_unary_constr3464);
                     field_constraint(base);
                     _fsp--;
                     if (failed) return ;
@@ -5105,22 +5038,22 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1286:5: LEFT_PAREN or_constr[$base] RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1278:5: LEFT_PAREN or_constr[$base] RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_unary_constr3526); if (failed) return ;
-                    pushFollow(FOLLOW_or_constr_in_unary_constr3528);
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_unary_constr3472); if (failed) return ;
+                    pushFollow(FOLLOW_or_constr_in_unary_constr3474);
                     or_constr(base);
                     _fsp--;
                     if (failed) return ;
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_unary_constr3531); if (failed) return ;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_unary_constr3477); if (failed) return ;
 
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1287:5: EVAL predicate[$base]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1279:5: EVAL predicate[$base]
                     {
-                    match(input,EVAL,FOLLOW_EVAL_in_unary_constr3537); if (failed) return ;
-                    pushFollow(FOLLOW_predicate_in_unary_constr3539);
+                    match(input,EVAL,FOLLOW_EVAL_in_unary_constr3483); if (failed) return ;
+                    pushFollow(FOLLOW_predicate_in_unary_constr3485);
                     predicate(base);
                     _fsp--;
                     if (failed) return ;
@@ -5146,7 +5079,7 @@
 
 
     // $ANTLR start field_constraint
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1291:1: field_constraint[ConditionalElementDescr base] : ( ID ':' )? f= accessor_path ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )? ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1283:1: field_constraint[ConditionalElementDescr base] : ( ID ':' )? f= accessor_path ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )? ;
     public final void field_constraint(ConditionalElementDescr base) throws RecognitionException {
         Token ID51=null;
         accessor_path_return f = null;
@@ -5158,27 +5091,27 @@
         		RestrictionConnectiveDescr top = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1298:3: ( ( ID ':' )? f= accessor_path ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )? )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1298:3: ( ID ':' )? f= accessor_path ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )?
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1289:2: ( ( ID ':' )? f= accessor_path ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )? )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1290:3: ( ID ':' )? f= accessor_path ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )?
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1298:3: ( ID ':' )?
-            int alt66=2;
-            int LA66_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1290:3: ( ID ':' )?
+            int alt62=2;
+            int LA62_0 = input.LA(1);
 
-            if ( (LA66_0==ID) ) {
-                int LA66_1 = input.LA(2);
+            if ( (LA62_0==ID) ) {
+                int LA62_1 = input.LA(2);
 
-                if ( (LA66_1==72) ) {
-                    alt66=1;
+                if ( (LA62_1==73) ) {
+                    alt62=1;
                 }
             }
-            switch (alt66) {
+            switch (alt62) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1298:5: ID ':'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1290:5: ID ':'
                     {
                     ID51=(Token)input.LT(1);
-                    match(input,ID,FOLLOW_ID_in_field_constraint3569); if (failed) return ;
-                    match(input,72,FOLLOW_72_in_field_constraint3571); if (failed) return ;
+                    match(input,ID,FOLLOW_ID_in_field_constraint3515); if (failed) return ;
+                    match(input,73,FOLLOW_73_in_field_constraint3517); if (failed) return ;
                     if ( backtracking==0 ) {
                        
                       			fbd = new FieldBindingDescr();
@@ -5195,7 +5128,7 @@
 
             }
 
-            pushFollow(FOLLOW_accessor_path_in_field_constraint3592);
+            pushFollow(FOLLOW_accessor_path_in_field_constraint3538);
             f=accessor_path();
             _fsp--;
             if (failed) return ;
@@ -5224,24 +5157,24 @@
               		    }
               		
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1332:3: ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )?
-            int alt67=3;
-            int LA67_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1324:3: ( ( options {backtrack=true; } : or_restr_connective[top] ) | '->' predicate[$base] )?
+            int alt63=3;
+            int LA63_0 = input.LA(1);
 
-            if ( (LA67_0==LEFT_PAREN||LA67_0==NOT||(LA67_0>=CONTAINS && LA67_0<=IN)||(LA67_0>=75 && LA67_0<=80)) ) {
-                alt67=1;
+            if ( (LA63_0==LEFT_PAREN||LA63_0==NOT||(LA63_0>=CONTAINS && LA63_0<=IN)||(LA63_0>=75 && LA63_0<=80)) ) {
+                alt63=1;
             }
-            else if ( (LA67_0==74) ) {
-                alt67=2;
+            else if ( (LA63_0==74) ) {
+                alt63=2;
             }
-            switch (alt67) {
+            switch (alt63) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1333:4: ( options {backtrack=true; } : or_restr_connective[top] )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1325:4: ( options {backtrack=true; } : or_restr_connective[top] )
                     {
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1333:4: ( options {backtrack=true; } : or_restr_connective[top] )
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1334:6: or_restr_connective[top]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1325:4: ( options {backtrack=true; } : or_restr_connective[top] )
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1326:6: or_restr_connective[top]
                     {
-                    pushFollow(FOLLOW_or_restr_connective_in_field_constraint3620);
+                    pushFollow(FOLLOW_or_restr_connective_in_field_constraint3566);
                     or_restr_connective(top);
                     _fsp--;
                     if (failed) return ;
@@ -5260,10 +5193,10 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1343:4: '->' predicate[$base]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1335:4: '->' predicate[$base]
                     {
-                    match(input,74,FOLLOW_74_in_field_constraint3640); if (failed) return ;
-                    pushFollow(FOLLOW_predicate_in_field_constraint3642);
+                    match(input,74,FOLLOW_74_in_field_constraint3586); if (failed) return ;
+                    pushFollow(FOLLOW_predicate_in_field_constraint3588);
                     predicate(base);
                     _fsp--;
                     if (failed) return ;
@@ -5289,35 +5222,35 @@
 
 
     // $ANTLR start or_restr_connective
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1348:1: or_restr_connective[ RestrictionConnectiveDescr base ] options {backtrack=true; } : and_restr_connective[or] ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1340:1: or_restr_connective[ RestrictionConnectiveDescr base ] options {backtrack=true; } : and_restr_connective[or] ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )* ;
     public final void or_restr_connective(RestrictionConnectiveDescr base) throws RecognitionException {
 
         		RestrictionConnectiveDescr or = new RestrictionConnectiveDescr(RestrictionConnectiveDescr.OR);
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1356:3: ( and_restr_connective[or] ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1356:3: and_restr_connective[or] ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1347:2: ( and_restr_connective[or] ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1348:3: and_restr_connective[or] ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )*
             {
-            pushFollow(FOLLOW_and_restr_connective_in_or_restr_connective3685);
+            pushFollow(FOLLOW_and_restr_connective_in_or_restr_connective3631);
             and_restr_connective(or);
             _fsp--;
             if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1357:3: ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )*
-            loop68:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1349:3: ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )*
+            loop64:
             do {
-                int alt68=2;
-                alt68 = dfa68.predict(input);
-                switch (alt68) {
+                int alt64=2;
+                alt64 = dfa64.predict(input);
+                switch (alt64) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1359:6: DOUBLE_PIPE and_restr_connective[or]
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1351:6: DOUBLE_PIPE and_restr_connective[or]
             	    {
-            	    match(input,DOUBLE_PIPE,FOLLOW_DOUBLE_PIPE_in_or_restr_connective3709); if (failed) return ;
+            	    match(input,DOUBLE_PIPE,FOLLOW_DOUBLE_PIPE_in_or_restr_connective3655); if (failed) return ;
             	    if ( backtracking==0 ) {
 
             	      				location.setType(Location.LOCATION_LHS_INSIDE_CONDITION_OPERATOR);
             	      			
             	    }
-            	    pushFollow(FOLLOW_and_restr_connective_in_or_restr_connective3720);
+            	    pushFollow(FOLLOW_and_restr_connective_in_or_restr_connective3666);
             	    and_restr_connective(or);
             	    _fsp--;
             	    if (failed) return ;
@@ -5326,7 +5259,7 @@
             	    break;
 
             	default :
-            	    break loop68;
+            	    break loop64;
                 }
             } while (true);
 
@@ -5353,7 +5286,7 @@
 
 
     // $ANTLR start and_restr_connective
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1374:1: and_restr_connective[ RestrictionConnectiveDescr base ] : constraint_expression[and] ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1366:1: and_restr_connective[ RestrictionConnectiveDescr base ] : constraint_expression[and] ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )* ;
     public final void and_restr_connective(RestrictionConnectiveDescr base) throws RecognitionException {
         Token t=null;
 
@@ -5361,30 +5294,30 @@
         		RestrictionConnectiveDescr and = new RestrictionConnectiveDescr(RestrictionConnectiveDescr.AND);
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1379:3: ( constraint_expression[and] ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1379:3: constraint_expression[and] ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1370:2: ( constraint_expression[and] ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1371:3: constraint_expression[and] ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )*
             {
-            pushFollow(FOLLOW_constraint_expression_in_and_restr_connective3752);
+            pushFollow(FOLLOW_constraint_expression_in_and_restr_connective3698);
             constraint_expression(and);
             _fsp--;
             if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1380:3: ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )*
-            loop69:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1372:3: ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )*
+            loop65:
             do {
-                int alt69=2;
-                alt69 = dfa69.predict(input);
-                switch (alt69) {
+                int alt65=2;
+                alt65 = dfa65.predict(input);
+                switch (alt65) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1381:5: t= DOUBLE_AMPER constraint_expression[and]
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1373:5: t= DOUBLE_AMPER constraint_expression[and]
             	    {
             	    t=(Token)input.LT(1);
-            	    match(input,DOUBLE_AMPER,FOLLOW_DOUBLE_AMPER_in_and_restr_connective3773); if (failed) return ;
+            	    match(input,DOUBLE_AMPER,FOLLOW_DOUBLE_AMPER_in_and_restr_connective3719); if (failed) return ;
             	    if ( backtracking==0 ) {
 
             	      				location.setType(Location.LOCATION_LHS_INSIDE_CONDITION_OPERATOR);
             	      			
             	    }
-            	    pushFollow(FOLLOW_constraint_expression_in_and_restr_connective3784);
+            	    pushFollow(FOLLOW_constraint_expression_in_and_restr_connective3730);
             	    constraint_expression(and);
             	    _fsp--;
             	    if (failed) return ;
@@ -5393,7 +5326,7 @@
             	    break;
 
             	default :
-            	    break loop69;
+            	    break loop65;
                 }
             } while (true);
 
@@ -5420,34 +5353,34 @@
 
 
     // $ANTLR start constraint_expression
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1396:1: constraint_expression[RestrictionConnectiveDescr base] : ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1388:1: constraint_expression[RestrictionConnectiveDescr base] : ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN ) ;
     public final void constraint_expression(RestrictionConnectiveDescr base) throws RecognitionException {
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1398:3: ( ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1398:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1389:9: ( ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1390:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1398:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )
-            int alt70=3;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1390:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )
+            int alt66=3;
             switch ( input.LA(1) ) {
             case IN:
                 {
-                alt70=1;
+                alt66=1;
                 }
                 break;
             case NOT:
                 {
-                int LA70_2 = input.LA(2);
+                int LA66_2 = input.LA(2);
 
-                if ( (LA70_2==CONTAINS||(LA70_2>=MATCHES && LA70_2<=MEMBEROF)) ) {
-                    alt70=2;
+                if ( (LA66_2==CONTAINS||(LA66_2>=MATCHES && LA66_2<=MEMBEROF)) ) {
+                    alt66=2;
                 }
-                else if ( (LA70_2==IN) ) {
-                    alt70=1;
+                else if ( (LA66_2==IN) ) {
+                    alt66=1;
                 }
                 else {
                     if (backtracking>0) {failed=true; return ;}
                     NoViableAltException nvae =
-                        new NoViableAltException("1398:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )", 70, 2, input);
+                        new NoViableAltException("1390:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )", 66, 2, input);
 
                     throw nvae;
                 }
@@ -5464,27 +5397,27 @@
             case 79:
             case 80:
                 {
-                alt70=2;
+                alt66=2;
                 }
                 break;
             case LEFT_PAREN:
                 {
-                alt70=3;
+                alt66=3;
                 }
                 break;
             default:
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1398:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )", 70, 0, input);
+                    new NoViableAltException("1390:3: ( compound_operator[$base] | simple_operator[$base] | LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN )", 66, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt70) {
+            switch (alt66) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1398:5: compound_operator[$base]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1390:5: compound_operator[$base]
                     {
-                    pushFollow(FOLLOW_compound_operator_in_constraint_expression3821);
+                    pushFollow(FOLLOW_compound_operator_in_constraint_expression3767);
                     compound_operator(base);
                     _fsp--;
                     if (failed) return ;
@@ -5492,9 +5425,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1399:5: simple_operator[$base]
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1391:5: simple_operator[$base]
                     {
-                    pushFollow(FOLLOW_simple_operator_in_constraint_expression3828);
+                    pushFollow(FOLLOW_simple_operator_in_constraint_expression3774);
                     simple_operator(base);
                     _fsp--;
                     if (failed) return ;
@@ -5502,19 +5435,19 @@
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1400:5: LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1392:5: LEFT_PAREN or_restr_connective[$base] RIGHT_PAREN
                     {
-                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_constraint_expression3835); if (failed) return ;
+                    match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_constraint_expression3781); if (failed) return ;
                     if ( backtracking==0 ) {
 
                       			location.setType(Location.LOCATION_LHS_INSIDE_CONDITION_OPERATOR);
                       		
                     }
-                    pushFollow(FOLLOW_or_restr_connective_in_constraint_expression3844);
+                    pushFollow(FOLLOW_or_restr_connective_in_constraint_expression3790);
                     or_restr_connective(base);
                     _fsp--;
                     if (failed) return ;
-                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_constraint_expression3850); if (failed) return ;
+                    match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_constraint_expression3796); if (failed) return ;
 
                     }
                     break;
@@ -5537,7 +5470,7 @@
 
 
     // $ANTLR start simple_operator
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1409:1: simple_operator[RestrictionConnectiveDescr base] : (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF ) rd= expression_value[$base, op] ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1401:1: simple_operator[RestrictionConnectiveDescr base] : (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF ) rd= expression_value[$base, op] ;
     public final void simple_operator(RestrictionConnectiveDescr base) throws RecognitionException {
         Token t=null;
         Token n=null;
@@ -5548,45 +5481,45 @@
         		String op = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1414:3: ( (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF ) rd= expression_value[$base, op] )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1414:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF ) rd= expression_value[$base, op]
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1405:2: ( (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF ) rd= expression_value[$base, op] )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1406:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF ) rd= expression_value[$base, op]
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1414:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF )
-            int alt71=13;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1406:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF )
+            int alt67=13;
             switch ( input.LA(1) ) {
             case 75:
                 {
-                alt71=1;
+                alt67=1;
                 }
                 break;
             case 76:
                 {
-                alt71=2;
+                alt67=2;
                 }
                 break;
             case 77:
                 {
-                alt71=3;
+                alt67=3;
                 }
                 break;
             case 78:
                 {
-                alt71=4;
+                alt67=4;
                 }
                 break;
             case 79:
                 {
-                alt71=5;
+                alt67=5;
                 }
                 break;
             case 80:
                 {
-                alt71=6;
+                alt67=6;
                 }
                 break;
             case CONTAINS:
                 {
-                alt71=7;
+                alt67=7;
                 }
                 break;
             case NOT:
@@ -5594,23 +5527,23 @@
                 switch ( input.LA(2) ) {
                 case MEMBEROF:
                     {
-                    alt71=13;
+                    alt67=13;
                     }
                     break;
                 case MATCHES:
                     {
-                    alt71=11;
+                    alt67=11;
                     }
                     break;
                 case CONTAINS:
                     {
-                    alt71=8;
+                    alt67=8;
                     }
                     break;
                 default:
                     if (backtracking>0) {failed=true; return ;}
                     NoViableAltException nvae =
-                        new NoViableAltException("1414:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF )", 71, 8, input);
+                        new NoViableAltException("1406:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF )", 67, 8, input);
 
                     throw nvae;
                 }
@@ -5619,135 +5552,135 @@
                 break;
             case EXCLUDES:
                 {
-                alt71=9;
+                alt67=9;
                 }
                 break;
             case MATCHES:
                 {
-                alt71=10;
+                alt67=10;
                 }
                 break;
             case MEMBEROF:
                 {
-                alt71=12;
+                alt67=12;
                 }
                 break;
             default:
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1414:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF )", 71, 0, input);
+                    new NoViableAltException("1406:3: (t= '==' | t= '>' | t= '>=' | t= '<' | t= '<=' | t= '!=' | t= CONTAINS | n= NOT t= CONTAINS | t= EXCLUDES | t= MATCHES | n= NOT t= MATCHES | t= MEMBEROF | n= NOT t= MEMBEROF )", 67, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt71) {
+            switch (alt67) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1414:5: t= '=='
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1406:5: t= '=='
                     {
                     t=(Token)input.LT(1);
-                    match(input,75,FOLLOW_75_in_simple_operator3881); if (failed) return ;
+                    match(input,75,FOLLOW_75_in_simple_operator3827); if (failed) return ;
 
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1415:5: t= '>'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1407:5: t= '>'
                     {
                     t=(Token)input.LT(1);
-                    match(input,76,FOLLOW_76_in_simple_operator3889); if (failed) return ;
+                    match(input,76,FOLLOW_76_in_simple_operator3835); if (failed) return ;
 
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1416:5: t= '>='
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1408:5: t= '>='
                     {
                     t=(Token)input.LT(1);
-                    match(input,77,FOLLOW_77_in_simple_operator3897); if (failed) return ;
+                    match(input,77,FOLLOW_77_in_simple_operator3843); if (failed) return ;
 
                     }
                     break;
                 case 4 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1417:5: t= '<'
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1409:5: t= '<'
                     {
                     t=(Token)input.LT(1);
-                    match(input,78,FOLLOW_78_in_simple_operator3905); if (failed) return ;
+                    match(input,78,FOLLOW_78_in_simple_operator3851); if (failed) return ;
 
                     }
                     break;
                 case 5 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1418:5: t= '<='
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1410:5: t= '<='
                     {
                     t=(Token)input.LT(1);
-                    match(input,79,FOLLOW_79_in_simple_operator3913); if (failed) return ;
+                    match(input,79,FOLLOW_79_in_simple_operator3859); if (failed) return ;
 
                     }
                     break;
                 case 6 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1419:5: t= '!='
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1411:5: t= '!='
                     {
                     t=(Token)input.LT(1);
-                    match(input,80,FOLLOW_80_in_simple_operator3921); if (failed) return ;
+                    match(input,80,FOLLOW_80_in_simple_operator3867); if (failed) return ;
 
                     }
                     break;
                 case 7 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1420:5: t= CONTAINS
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1412:5: t= CONTAINS
                     {
                     t=(Token)input.LT(1);
-                    match(input,CONTAINS,FOLLOW_CONTAINS_in_simple_operator3929); if (failed) return ;
+                    match(input,CONTAINS,FOLLOW_CONTAINS_in_simple_operator3875); if (failed) return ;
 
                     }
                     break;
                 case 8 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1421:5: n= NOT t= CONTAINS
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1413:5: n= NOT t= CONTAINS
                     {
                     n=(Token)input.LT(1);
-                    match(input,NOT,FOLLOW_NOT_in_simple_operator3937); if (failed) return ;
+                    match(input,NOT,FOLLOW_NOT_in_simple_operator3883); if (failed) return ;
                     t=(Token)input.LT(1);
-                    match(input,CONTAINS,FOLLOW_CONTAINS_in_simple_operator3941); if (failed) return ;
+                    match(input,CONTAINS,FOLLOW_CONTAINS_in_simple_operator3887); if (failed) return ;
 
                     }
                     break;
                 case 9 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1422:5: t= EXCLUDES
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1414:5: t= EXCLUDES
                     {
                     t=(Token)input.LT(1);
-                    match(input,EXCLUDES,FOLLOW_EXCLUDES_in_simple_operator3949); if (failed) return ;
+                    match(input,EXCLUDES,FOLLOW_EXCLUDES_in_simple_operator3895); if (failed) return ;
 
                     }
                     break;
                 case 10 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1423:5: t= MATCHES
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1415:5: t= MATCHES
                     {
                     t=(Token)input.LT(1);
-                    match(input,MATCHES,FOLLOW_MATCHES_in_simple_operator3957); if (failed) return ;
+                    match(input,MATCHES,FOLLOW_MATCHES_in_simple_operator3903); if (failed) return ;
 
                     }
                     break;
                 case 11 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1424:5: n= NOT t= MATCHES
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1416:5: n= NOT t= MATCHES
                     {
                     n=(Token)input.LT(1);
-                    match(input,NOT,FOLLOW_NOT_in_simple_operator3965); if (failed) return ;
+                    match(input,NOT,FOLLOW_NOT_in_simple_operator3911); if (failed) return ;
                     t=(Token)input.LT(1);
-                    match(input,MATCHES,FOLLOW_MATCHES_in_simple_operator3969); if (failed) return ;
+                    match(input,MATCHES,FOLLOW_MATCHES_in_simple_operator3915); if (failed) return ;
 
                     }
                     break;
                 case 12 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1425:5: t= MEMBEROF
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1417:5: t= MEMBEROF
                     {
                     t=(Token)input.LT(1);
-                    match(input,MEMBEROF,FOLLOW_MEMBEROF_in_simple_operator3977); if (failed) return ;
+                    match(input,MEMBEROF,FOLLOW_MEMBEROF_in_simple_operator3923); if (failed) return ;
 
                     }
                     break;
                 case 13 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1426:5: n= NOT t= MEMBEROF
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1418:5: n= NOT t= MEMBEROF
                     {
                     n=(Token)input.LT(1);
-                    match(input,NOT,FOLLOW_NOT_in_simple_operator3985); if (failed) return ;
+                    match(input,NOT,FOLLOW_NOT_in_simple_operator3931); if (failed) return ;
                     t=(Token)input.LT(1);
-                    match(input,MEMBEROF,FOLLOW_MEMBEROF_in_simple_operator3989); if (failed) return ;
+                    match(input,MEMBEROF,FOLLOW_MEMBEROF_in_simple_operator3935); if (failed) return ;
 
                     }
                     break;
@@ -5765,7 +5698,7 @@
               		    }
               		
             }
-            pushFollow(FOLLOW_expression_value_in_simple_operator4003);
+            pushFollow(FOLLOW_expression_value_in_simple_operator3949);
             rd=expression_value(base,  op);
             _fsp--;
             if (failed) return ;
@@ -5790,7 +5723,7 @@
 
 
     // $ANTLR start compound_operator
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1445:1: compound_operator[RestrictionConnectiveDescr base] : ( IN | NOT IN ) LEFT_PAREN rd= expression_value[group, op] ( COMMA rd= expression_value[group, op] )* RIGHT_PAREN ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1437:1: compound_operator[RestrictionConnectiveDescr base] : ( IN | NOT IN ) LEFT_PAREN rd= expression_value[group, op] ( COMMA rd= expression_value[group, op] )* RIGHT_PAREN ;
     public final void compound_operator(RestrictionConnectiveDescr base) throws RecognitionException {
         RestrictionDescr rd = null;
 
@@ -5800,31 +5733,31 @@
         		RestrictionConnectiveDescr group = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1451:3: ( ( IN | NOT IN ) LEFT_PAREN rd= expression_value[group, op] ( COMMA rd= expression_value[group, op] )* RIGHT_PAREN )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1451:3: ( IN | NOT IN ) LEFT_PAREN rd= expression_value[group, op] ( COMMA rd= expression_value[group, op] )* RIGHT_PAREN
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1442:2: ( ( IN | NOT IN ) LEFT_PAREN rd= expression_value[group, op] ( COMMA rd= expression_value[group, op] )* RIGHT_PAREN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1443:3: ( IN | NOT IN ) LEFT_PAREN rd= expression_value[group, op] ( COMMA rd= expression_value[group, op] )* RIGHT_PAREN
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1451:3: ( IN | NOT IN )
-            int alt72=2;
-            int LA72_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1443:3: ( IN | NOT IN )
+            int alt68=2;
+            int LA68_0 = input.LA(1);
 
-            if ( (LA72_0==IN) ) {
-                alt72=1;
+            if ( (LA68_0==IN) ) {
+                alt68=1;
             }
-            else if ( (LA72_0==NOT) ) {
-                alt72=2;
+            else if ( (LA68_0==NOT) ) {
+                alt68=2;
             }
             else {
                 if (backtracking>0) {failed=true; return ;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1451:3: ( IN | NOT IN )", 72, 0, input);
+                    new NoViableAltException("1443:3: ( IN | NOT IN )", 68, 0, input);
 
                 throw nvae;
             }
-            switch (alt72) {
+            switch (alt68) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1451:5: IN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1443:5: IN
                     {
-                    match(input,IN,FOLLOW_IN_in_compound_operator4033); if (failed) return ;
+                    match(input,IN,FOLLOW_IN_in_compound_operator3979); if (failed) return ;
                     if ( backtracking==0 ) {
 
                       			  op = "==";
@@ -5838,10 +5771,10 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1459:5: NOT IN
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1451:5: NOT IN
                     {
-                    match(input,NOT,FOLLOW_NOT_in_compound_operator4045); if (failed) return ;
-                    match(input,IN,FOLLOW_IN_in_compound_operator4047); if (failed) return ;
+                    match(input,NOT,FOLLOW_NOT_in_compound_operator3991); if (failed) return ;
+                    match(input,IN,FOLLOW_IN_in_compound_operator3993); if (failed) return ;
                     if ( backtracking==0 ) {
 
                       			  op = "!=";
@@ -5857,28 +5790,28 @@
 
             }
 
-            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_compound_operator4062); if (failed) return ;
-            pushFollow(FOLLOW_expression_value_in_compound_operator4066);
+            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_compound_operator4008); if (failed) return ;
+            pushFollow(FOLLOW_expression_value_in_compound_operator4012);
             rd=expression_value(group,  op);
             _fsp--;
             if (failed) return ;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1469:3: ( COMMA rd= expression_value[group, op] )*
-            loop73:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1461:3: ( COMMA rd= expression_value[group, op] )*
+            loop69:
             do {
-                int alt73=2;
-                int LA73_0 = input.LA(1);
+                int alt69=2;
+                int LA69_0 = input.LA(1);
 
-                if ( (LA73_0==COMMA) ) {
-                    alt73=1;
+                if ( (LA69_0==COMMA) ) {
+                    alt69=1;
                 }
 
 
-                switch (alt73) {
+                switch (alt69) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1469:5: COMMA rd= expression_value[group, op]
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1461:5: COMMA rd= expression_value[group, op]
             	    {
-            	    match(input,COMMA,FOLLOW_COMMA_in_compound_operator4073); if (failed) return ;
-            	    pushFollow(FOLLOW_expression_value_in_compound_operator4077);
+            	    match(input,COMMA,FOLLOW_COMMA_in_compound_operator4019); if (failed) return ;
+            	    pushFollow(FOLLOW_expression_value_in_compound_operator4023);
             	    rd=expression_value(group,  op);
             	    _fsp--;
             	    if (failed) return ;
@@ -5887,11 +5820,11 @@
             	    break;
 
             	default :
-            	    break loop73;
+            	    break loop69;
                 }
             } while (true);
 
-            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_compound_operator4086); if (failed) return ;
+            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_compound_operator4032); if (failed) return ;
             if ( backtracking==0 ) {
 
               			location.setType(Location.LOCATION_LHS_INSIDE_CONDITION_END);
@@ -5913,7 +5846,7 @@
 
 
     // $ANTLR start expression_value
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1476:1: expression_value[RestrictionConnectiveDescr base, String op] returns [RestrictionDescr rd] : (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1468:1: expression_value[RestrictionConnectiveDescr base, String op] returns [RestrictionDescr rd] : (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk ) ;
     public final RestrictionDescr expression_value(RestrictionConnectiveDescr base, String op) throws RecognitionException {
         RestrictionDescr rd = null;
 
@@ -5928,13 +5861,12 @@
         		rd = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1481:3: ( (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1481:3: (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1472:2: ( (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1473:3: (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk )
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1481:3: (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk )
-            int alt74=3;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1473:3: (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk )
+            int alt70=3;
             switch ( input.LA(1) ) {
-            case ATTRIBUTES:
             case PACKAGE:
             case IMPORT:
             case FUNCTION:
@@ -5945,6 +5877,7 @@
             case TEMPLATE:
             case RULE:
             case WHEN:
+            case ATTRIBUTES:
             case ENABLED:
             case SALIENCE:
             case DURATION:
@@ -5961,7 +5894,7 @@
             case IN:
             case THEN:
                 {
-                alt74=1;
+                alt70=1;
                 }
                 break;
             case STRING:
@@ -5970,27 +5903,27 @@
             case FLOAT:
             case NULL:
                 {
-                alt74=2;
+                alt70=2;
                 }
                 break;
             case LEFT_PAREN:
                 {
-                alt74=3;
+                alt70=3;
                 }
                 break;
             default:
                 if (backtracking>0) {failed=true; return rd;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1481:3: (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk )", 74, 0, input);
+                    new NoViableAltException("1473:3: (ap= accessor_path | lc= literal_constraint | rvc= paren_chunk )", 70, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt74) {
+            switch (alt70) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1481:5: ap= accessor_path
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1473:5: ap= accessor_path
                     {
-                    pushFollow(FOLLOW_accessor_path_in_expression_value4120);
+                    pushFollow(FOLLOW_accessor_path_in_expression_value4066);
                     ap=accessor_path();
                     _fsp--;
                     if (failed) return rd;
@@ -6007,9 +5940,9 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1489:5: lc= literal_constraint
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1481:5: lc= literal_constraint
                     {
-                    pushFollow(FOLLOW_literal_constraint_in_expression_value4140);
+                    pushFollow(FOLLOW_literal_constraint_in_expression_value4086);
                     lc=literal_constraint();
                     _fsp--;
                     if (failed) return rd;
@@ -6022,9 +5955,9 @@
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1493:5: rvc= paren_chunk
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1485:5: rvc= paren_chunk
                     {
-                    pushFollow(FOLLOW_paren_chunk_in_expression_value4154);
+                    pushFollow(FOLLOW_paren_chunk_in_expression_value4100);
                     rvc=paren_chunk();
                     _fsp--;
                     if (failed) return rd;
@@ -6063,7 +5996,7 @@
 
 
     // $ANTLR start literal_constraint
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1506:1: literal_constraint returns [String text] : (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL ) ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1498:1: literal_constraint returns [String text] : (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL ) ;
     public final String literal_constraint() throws RecognitionException {
         String text = null;
 
@@ -6073,51 +6006,51 @@
         		text = null;
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1510:4: ( (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL ) )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1510:4: (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1502:2: ( (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL ) )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1502:4: (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL )
             {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1510:4: (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL )
-            int alt75=5;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1502:4: (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL )
+            int alt71=5;
             switch ( input.LA(1) ) {
             case STRING:
                 {
-                alt75=1;
+                alt71=1;
                 }
                 break;
             case INT:
                 {
-                alt75=2;
+                alt71=2;
                 }
                 break;
             case FLOAT:
                 {
-                alt75=3;
+                alt71=3;
                 }
                 break;
             case BOOL:
                 {
-                alt75=4;
+                alt71=4;
                 }
                 break;
             case NULL:
                 {
-                alt75=5;
+                alt71=5;
                 }
                 break;
             default:
                 if (backtracking>0) {failed=true; return text;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1510:4: (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL )", 75, 0, input);
+                    new NoViableAltException("1502:4: (t= STRING | t= INT | t= FLOAT | t= BOOL | t= NULL )", 71, 0, input);
 
                 throw nvae;
             }
 
-            switch (alt75) {
+            switch (alt71) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1510:6: t= STRING
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1502:6: t= STRING
                     {
                     t=(Token)input.LT(1);
-                    match(input,STRING,FOLLOW_STRING_in_literal_constraint4197); if (failed) return text;
+                    match(input,STRING,FOLLOW_STRING_in_literal_constraint4143); if (failed) return text;
                     if ( backtracking==0 ) {
                        text = getString( t.getText() ); 
                     }
@@ -6125,10 +6058,10 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1511:5: t= INT
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1503:5: t= INT
                     {
                     t=(Token)input.LT(1);
-                    match(input,INT,FOLLOW_INT_in_literal_constraint4208); if (failed) return text;
+                    match(input,INT,FOLLOW_INT_in_literal_constraint4154); if (failed) return text;
                     if ( backtracking==0 ) {
                        text = t.getText(); 
                     }
@@ -6136,10 +6069,10 @@
                     }
                     break;
                 case 3 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1512:5: t= FLOAT
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1504:5: t= FLOAT
                     {
                     t=(Token)input.LT(1);
-                    match(input,FLOAT,FOLLOW_FLOAT_in_literal_constraint4221); if (failed) return text;
+                    match(input,FLOAT,FOLLOW_FLOAT_in_literal_constraint4167); if (failed) return text;
                     if ( backtracking==0 ) {
                        text = t.getText(); 
                     }
@@ -6147,10 +6080,10 @@
                     }
                     break;
                 case 4 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1513:5: t= BOOL
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1505:5: t= BOOL
                     {
                     t=(Token)input.LT(1);
-                    match(input,BOOL,FOLLOW_BOOL_in_literal_constraint4232); if (failed) return text;
+                    match(input,BOOL,FOLLOW_BOOL_in_literal_constraint4178); if (failed) return text;
                     if ( backtracking==0 ) {
                        text = t.getText(); 
                     }
@@ -6158,10 +6091,10 @@
                     }
                     break;
                 case 5 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1514:5: t= NULL
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1506:5: t= NULL
                     {
                     t=(Token)input.LT(1);
-                    match(input,NULL,FOLLOW_NULL_in_literal_constraint4244); if (failed) return text;
+                    match(input,NULL,FOLLOW_NULL_in_literal_constraint4190); if (failed) return text;
                     if ( backtracking==0 ) {
                        text = null; 
                     }
@@ -6187,7 +6120,7 @@
 
 
     // $ANTLR start predicate
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1518:1: predicate[ConditionalElementDescr base] : text= paren_chunk ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1510:1: predicate[ConditionalElementDescr base] : text= paren_chunk ;
     public final void predicate(ConditionalElementDescr base) throws RecognitionException {
         paren_chunk_return text = null;
 
@@ -6196,10 +6129,10 @@
         		PredicateDescr d = null;
                 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1523:3: (text= paren_chunk )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1523:3: text= paren_chunk
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1514:2: (text= paren_chunk )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1515:3: text= paren_chunk
             {
-            pushFollow(FOLLOW_paren_chunk_in_predicate4282);
+            pushFollow(FOLLOW_paren_chunk_in_predicate4228);
             text=paren_chunk();
             _fsp--;
             if (failed) return ;
@@ -6231,35 +6164,35 @@
     };
 
     // $ANTLR start curly_chunk
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1535:1: curly_chunk : LEFT_CURLY (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )* RIGHT_CURLY ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1527:1: curly_chunk : LEFT_CURLY (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )* RIGHT_CURLY ;
     public final curly_chunk_return curly_chunk() throws RecognitionException {
         curly_chunk_return retval = new curly_chunk_return();
         retval.start = input.LT(1);
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1537:3: ( LEFT_CURLY (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )* RIGHT_CURLY )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1537:3: LEFT_CURLY (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )* RIGHT_CURLY
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1528:2: ( LEFT_CURLY (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )* RIGHT_CURLY )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1529:3: LEFT_CURLY (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )* RIGHT_CURLY
             {
-            match(input,LEFT_CURLY,FOLLOW_LEFT_CURLY_in_curly_chunk4300); if (failed) return retval;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1537:14: (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )*
-            loop76:
+            match(input,LEFT_CURLY,FOLLOW_LEFT_CURLY_in_curly_chunk4246); if (failed) return retval;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1529:14: (~ ( LEFT_CURLY | RIGHT_CURLY ) | curly_chunk )*
+            loop72:
             do {
-                int alt76=3;
-                int LA76_0 = input.LA(1);
+                int alt72=3;
+                int LA72_0 = input.LA(1);
 
-                if ( ((LA76_0>=ATTRIBUTES && LA76_0<=NULL)||(LA76_0>=LEFT_SQUARE && LA76_0<=80)) ) {
-                    alt76=1;
+                if ( ((LA72_0>=PACKAGE && LA72_0<=NULL)||(LA72_0>=LEFT_SQUARE && LA72_0<=80)) ) {
+                    alt72=1;
                 }
-                else if ( (LA76_0==LEFT_CURLY) ) {
-                    alt76=2;
+                else if ( (LA72_0==LEFT_CURLY) ) {
+                    alt72=2;
                 }
 
 
-                switch (alt76) {
+                switch (alt72) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1537:16: ~ ( LEFT_CURLY | RIGHT_CURLY )
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1529:16: ~ ( LEFT_CURLY | RIGHT_CURLY )
             	    {
-            	    if ( (input.LA(1)>=ATTRIBUTES && input.LA(1)<=NULL)||(input.LA(1)>=LEFT_SQUARE && input.LA(1)<=80) ) {
+            	    if ( (input.LA(1)>=PACKAGE && input.LA(1)<=NULL)||(input.LA(1)>=LEFT_SQUARE && input.LA(1)<=80) ) {
             	        input.consume();
             	        errorRecovery=false;failed=false;
             	    }
@@ -6267,16 +6200,16 @@
             	        if (backtracking>0) {failed=true; return retval;}
             	        MismatchedSetException mse =
             	            new MismatchedSetException(null,input);
-            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_curly_chunk4304);    throw mse;
+            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_curly_chunk4250);    throw mse;
             	    }
 
 
             	    }
             	    break;
             	case 2 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1537:44: curly_chunk
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1529:44: curly_chunk
             	    {
-            	    pushFollow(FOLLOW_curly_chunk_in_curly_chunk4313);
+            	    pushFollow(FOLLOW_curly_chunk_in_curly_chunk4259);
             	    curly_chunk();
             	    _fsp--;
             	    if (failed) return retval;
@@ -6285,11 +6218,11 @@
             	    break;
 
             	default :
-            	    break loop76;
+            	    break loop72;
                 }
             } while (true);
 
-            match(input,RIGHT_CURLY,FOLLOW_RIGHT_CURLY_in_curly_chunk4318); if (failed) return retval;
+            match(input,RIGHT_CURLY,FOLLOW_RIGHT_CURLY_in_curly_chunk4264); if (failed) return retval;
 
             }
 
@@ -6310,35 +6243,35 @@
     };
 
     // $ANTLR start paren_chunk
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1540:1: paren_chunk : LEFT_PAREN (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )* RIGHT_PAREN ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1532:1: paren_chunk : LEFT_PAREN (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )* RIGHT_PAREN ;
     public final paren_chunk_return paren_chunk() throws RecognitionException {
         paren_chunk_return retval = new paren_chunk_return();
         retval.start = input.LT(1);
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1542:3: ( LEFT_PAREN (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )* RIGHT_PAREN )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1542:3: LEFT_PAREN (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )* RIGHT_PAREN
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1533:2: ( LEFT_PAREN (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )* RIGHT_PAREN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1534:3: LEFT_PAREN (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )* RIGHT_PAREN
             {
-            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_paren_chunk4332); if (failed) return retval;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1542:14: (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )*
-            loop77:
+            match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_paren_chunk4278); if (failed) return retval;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1534:14: (~ ( LEFT_PAREN | RIGHT_PAREN ) | paren_chunk )*
+            loop73:
             do {
-                int alt77=3;
-                int LA77_0 = input.LA(1);
+                int alt73=3;
+                int LA73_0 = input.LA(1);
 
-                if ( ((LA77_0>=ATTRIBUTES && LA77_0<=GLOBAL)||LA77_0==COMMA||(LA77_0>=QUERY && LA77_0<=80)) ) {
-                    alt77=1;
+                if ( ((LA73_0>=PACKAGE && LA73_0<=GLOBAL)||LA73_0==COMMA||(LA73_0>=QUERY && LA73_0<=80)) ) {
+                    alt73=1;
                 }
-                else if ( (LA77_0==LEFT_PAREN) ) {
-                    alt77=2;
+                else if ( (LA73_0==LEFT_PAREN) ) {
+                    alt73=2;
                 }
 
 
-                switch (alt77) {
+                switch (alt73) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1542:16: ~ ( LEFT_PAREN | RIGHT_PAREN )
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1534:16: ~ ( LEFT_PAREN | RIGHT_PAREN )
             	    {
-            	    if ( (input.LA(1)>=ATTRIBUTES && input.LA(1)<=GLOBAL)||input.LA(1)==COMMA||(input.LA(1)>=QUERY && input.LA(1)<=80) ) {
+            	    if ( (input.LA(1)>=PACKAGE && input.LA(1)<=GLOBAL)||input.LA(1)==COMMA||(input.LA(1)>=QUERY && input.LA(1)<=80) ) {
             	        input.consume();
             	        errorRecovery=false;failed=false;
             	    }
@@ -6346,16 +6279,16 @@
             	        if (backtracking>0) {failed=true; return retval;}
             	        MismatchedSetException mse =
             	            new MismatchedSetException(null,input);
-            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_paren_chunk4336);    throw mse;
+            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_paren_chunk4282);    throw mse;
             	    }
 
 
             	    }
             	    break;
             	case 2 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1542:44: paren_chunk
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1534:44: paren_chunk
             	    {
-            	    pushFollow(FOLLOW_paren_chunk_in_paren_chunk4345);
+            	    pushFollow(FOLLOW_paren_chunk_in_paren_chunk4291);
             	    paren_chunk();
             	    _fsp--;
             	    if (failed) return retval;
@@ -6364,11 +6297,11 @@
             	    break;
 
             	default :
-            	    break loop77;
+            	    break loop73;
                 }
             } while (true);
 
-            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_paren_chunk4350); if (failed) return retval;
+            match(input,RIGHT_PAREN,FOLLOW_RIGHT_PAREN_in_paren_chunk4296); if (failed) return retval;
 
             }
 
@@ -6389,35 +6322,35 @@
     };
 
     // $ANTLR start square_chunk
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1545:1: square_chunk : LEFT_SQUARE (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )* RIGHT_SQUARE ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1537:1: square_chunk : LEFT_SQUARE (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )* RIGHT_SQUARE ;
     public final square_chunk_return square_chunk() throws RecognitionException {
         square_chunk_return retval = new square_chunk_return();
         retval.start = input.LT(1);
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1547:3: ( LEFT_SQUARE (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )* RIGHT_SQUARE )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1547:3: LEFT_SQUARE (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )* RIGHT_SQUARE
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1538:2: ( LEFT_SQUARE (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )* RIGHT_SQUARE )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1539:3: LEFT_SQUARE (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )* RIGHT_SQUARE
             {
-            match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_square_chunk4363); if (failed) return retval;
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1547:15: (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )*
-            loop78:
+            match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_square_chunk4309); if (failed) return retval;
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1539:15: (~ ( LEFT_SQUARE | RIGHT_SQUARE ) | square_chunk )*
+            loop74:
             do {
-                int alt78=3;
-                int LA78_0 = input.LA(1);
+                int alt74=3;
+                int LA74_0 = input.LA(1);
 
-                if ( ((LA78_0>=ATTRIBUTES && LA78_0<=RIGHT_CURLY)||(LA78_0>=THEN && LA78_0<=80)) ) {
-                    alt78=1;
+                if ( ((LA74_0>=PACKAGE && LA74_0<=RIGHT_CURLY)||(LA74_0>=THEN && LA74_0<=80)) ) {
+                    alt74=1;
                 }
-                else if ( (LA78_0==LEFT_SQUARE) ) {
-                    alt78=2;
+                else if ( (LA74_0==LEFT_SQUARE) ) {
+                    alt74=2;
                 }
 
 
-                switch (alt78) {
+                switch (alt74) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1547:17: ~ ( LEFT_SQUARE | RIGHT_SQUARE )
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1539:17: ~ ( LEFT_SQUARE | RIGHT_SQUARE )
             	    {
-            	    if ( (input.LA(1)>=ATTRIBUTES && input.LA(1)<=RIGHT_CURLY)||(input.LA(1)>=THEN && input.LA(1)<=80) ) {
+            	    if ( (input.LA(1)>=PACKAGE && input.LA(1)<=RIGHT_CURLY)||(input.LA(1)>=THEN && input.LA(1)<=80) ) {
             	        input.consume();
             	        errorRecovery=false;failed=false;
             	    }
@@ -6425,16 +6358,16 @@
             	        if (backtracking>0) {failed=true; return retval;}
             	        MismatchedSetException mse =
             	            new MismatchedSetException(null,input);
-            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_square_chunk4367);    throw mse;
+            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_square_chunk4313);    throw mse;
             	    }
 
 
             	    }
             	    break;
             	case 2 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1547:47: square_chunk
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1539:47: square_chunk
             	    {
-            	    pushFollow(FOLLOW_square_chunk_in_square_chunk4376);
+            	    pushFollow(FOLLOW_square_chunk_in_square_chunk4322);
             	    square_chunk();
             	    _fsp--;
             	    if (failed) return retval;
@@ -6443,11 +6376,11 @@
             	    break;
 
             	default :
-            	    break loop78;
+            	    break loop74;
                 }
             } while (true);
 
-            match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_square_chunk4381); if (failed) return retval;
+            match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_square_chunk4327); if (failed) return retval;
 
             }
 
@@ -6469,7 +6402,7 @@
     };
 
     // $ANTLR start qualified_id
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1550:1: qualified_id returns [ String text ] : ID ( DOT identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1542:1: qualified_id returns [ String text ] : ID ( DOT identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* ;
     public final qualified_id_return qualified_id() throws RecognitionException {
         qualified_id_return retval = new qualified_id_return();
         retval.start = input.LT(1);
@@ -6482,31 +6415,31 @@
         	        StringBuffer buf = new StringBuffer();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1557:5: ( ID ( DOT identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1557:5: ID ( DOT identifier )* ( LEFT_SQUARE RIGHT_SQUARE )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1549:2: ( ID ( DOT identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1549:5: ID ( DOT identifier )* ( LEFT_SQUARE RIGHT_SQUARE )*
             {
             ID52=(Token)input.LT(1);
-            match(input,ID,FOLLOW_ID_in_qualified_id4410); if (failed) return retval;
+            match(input,ID,FOLLOW_ID_in_qualified_id4356); if (failed) return retval;
             if ( backtracking==0 ) {
               buf.append(ID52.getText());
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1557:32: ( DOT identifier )*
-            loop79:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1549:32: ( DOT identifier )*
+            loop75:
             do {
-                int alt79=2;
-                int LA79_0 = input.LA(1);
+                int alt75=2;
+                int LA75_0 = input.LA(1);
 
-                if ( (LA79_0==DOT) ) {
-                    alt79=1;
+                if ( (LA75_0==DOT) ) {
+                    alt75=1;
                 }
 
 
-                switch (alt79) {
+                switch (alt75) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1557:34: DOT identifier
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1549:34: DOT identifier
             	    {
-            	    match(input,DOT,FOLLOW_DOT_in_qualified_id4416); if (failed) return retval;
-            	    pushFollow(FOLLOW_identifier_in_qualified_id4418);
+            	    match(input,DOT,FOLLOW_DOT_in_qualified_id4362); if (failed) return retval;
+            	    pushFollow(FOLLOW_identifier_in_qualified_id4364);
             	    identifier53=identifier();
             	    _fsp--;
             	    if (failed) return retval;
@@ -6518,27 +6451,27 @@
             	    break;
 
             	default :
-            	    break loop79;
+            	    break loop75;
                 }
             } while (true);
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1557:88: ( LEFT_SQUARE RIGHT_SQUARE )*
-            loop80:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1549:88: ( LEFT_SQUARE RIGHT_SQUARE )*
+            loop76:
             do {
-                int alt80=2;
-                int LA80_0 = input.LA(1);
+                int alt76=2;
+                int LA76_0 = input.LA(1);
 
-                if ( (LA80_0==LEFT_SQUARE) ) {
-                    alt80=1;
+                if ( (LA76_0==LEFT_SQUARE) ) {
+                    alt76=1;
                 }
 
 
-                switch (alt80) {
+                switch (alt76) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1557:90: LEFT_SQUARE RIGHT_SQUARE
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1549:90: LEFT_SQUARE RIGHT_SQUARE
             	    {
-            	    match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_qualified_id4427); if (failed) return retval;
-            	    match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_qualified_id4429); if (failed) return retval;
+            	    match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_qualified_id4373); if (failed) return retval;
+            	    match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_qualified_id4375); if (failed) return retval;
             	    if ( backtracking==0 ) {
             	      buf.append("[]");
             	    }
@@ -6547,7 +6480,7 @@
             	    break;
 
             	default :
-            	    break loop80;
+            	    break loop76;
                 }
             } while (true);
 
@@ -6574,7 +6507,7 @@
 
 
     // $ANTLR start dotted_name
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1560:1: dotted_name returns [ String text ] : i= identifier ( DOT i= identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1552:1: dotted_name returns [ String text ] : i= identifier ( DOT i= identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* ;
     public final String dotted_name() throws RecognitionException {
         String text = null;
 
@@ -6585,33 +6518,33 @@
         	        StringBuffer buf = new StringBuffer();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1567:4: (i= identifier ( DOT i= identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1567:4: i= identifier ( DOT i= identifier )* ( LEFT_SQUARE RIGHT_SQUARE )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1559:2: (i= identifier ( DOT i= identifier )* ( LEFT_SQUARE RIGHT_SQUARE )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1559:4: i= identifier ( DOT i= identifier )* ( LEFT_SQUARE RIGHT_SQUARE )*
             {
-            pushFollow(FOLLOW_identifier_in_dotted_name4463);
+            pushFollow(FOLLOW_identifier_in_dotted_name4409);
             i=identifier();
             _fsp--;
             if (failed) return text;
             if ( backtracking==0 ) {
               buf.append(input.toString(i.start,i.stop));
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1567:40: ( DOT i= identifier )*
-            loop81:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1559:40: ( DOT i= identifier )*
+            loop77:
             do {
-                int alt81=2;
-                int LA81_0 = input.LA(1);
+                int alt77=2;
+                int LA77_0 = input.LA(1);
 
-                if ( (LA81_0==DOT) ) {
-                    alt81=1;
+                if ( (LA77_0==DOT) ) {
+                    alt77=1;
                 }
 
 
-                switch (alt81) {
+                switch (alt77) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1567:42: DOT i= identifier
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1559:42: DOT i= identifier
             	    {
-            	    match(input,DOT,FOLLOW_DOT_in_dotted_name4469); if (failed) return text;
-            	    pushFollow(FOLLOW_identifier_in_dotted_name4473);
+            	    match(input,DOT,FOLLOW_DOT_in_dotted_name4415); if (failed) return text;
+            	    pushFollow(FOLLOW_identifier_in_dotted_name4419);
             	    i=identifier();
             	    _fsp--;
             	    if (failed) return text;
@@ -6623,27 +6556,27 @@
             	    break;
 
             	default :
-            	    break loop81;
+            	    break loop77;
                 }
             } while (true);
 
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1567:89: ( LEFT_SQUARE RIGHT_SQUARE )*
-            loop82:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1559:89: ( LEFT_SQUARE RIGHT_SQUARE )*
+            loop78:
             do {
-                int alt82=2;
-                int LA82_0 = input.LA(1);
+                int alt78=2;
+                int LA78_0 = input.LA(1);
 
-                if ( (LA82_0==LEFT_SQUARE) ) {
-                    alt82=1;
+                if ( (LA78_0==LEFT_SQUARE) ) {
+                    alt78=1;
                 }
 
 
-                switch (alt82) {
+                switch (alt78) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1567:91: LEFT_SQUARE RIGHT_SQUARE
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1559:91: LEFT_SQUARE RIGHT_SQUARE
             	    {
-            	    match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_dotted_name4482); if (failed) return text;
-            	    match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_dotted_name4484); if (failed) return text;
+            	    match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_dotted_name4428); if (failed) return text;
+            	    match(input,RIGHT_SQUARE,FOLLOW_RIGHT_SQUARE_in_dotted_name4430); if (failed) return text;
             	    if ( backtracking==0 ) {
             	      buf.append("[]");
             	    }
@@ -6652,7 +6585,7 @@
             	    break;
 
             	default :
-            	    break loop82;
+            	    break loop78;
                 }
             } while (true);
 
@@ -6680,7 +6613,7 @@
     };
 
     // $ANTLR start accessor_path
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1570:1: accessor_path returns [ String text ] : a= accessor_element ( DOT a= accessor_element )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1562:1: accessor_path returns [ String text ] : a= accessor_element ( DOT a= accessor_element )* ;
     public final accessor_path_return accessor_path() throws RecognitionException {
         accessor_path_return retval = new accessor_path_return();
         retval.start = input.LT(1);
@@ -6692,33 +6625,33 @@
         	        StringBuffer buf = new StringBuffer();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1577:4: (a= accessor_element ( DOT a= accessor_element )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1577:4: a= accessor_element ( DOT a= accessor_element )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1569:2: (a= accessor_element ( DOT a= accessor_element )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1569:4: a= accessor_element ( DOT a= accessor_element )*
             {
-            pushFollow(FOLLOW_accessor_element_in_accessor_path4518);
+            pushFollow(FOLLOW_accessor_element_in_accessor_path4464);
             a=accessor_element();
             _fsp--;
             if (failed) return retval;
             if ( backtracking==0 ) {
               buf.append(a);
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1577:46: ( DOT a= accessor_element )*
-            loop83:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1569:46: ( DOT a= accessor_element )*
+            loop79:
             do {
-                int alt83=2;
-                int LA83_0 = input.LA(1);
+                int alt79=2;
+                int LA79_0 = input.LA(1);
 
-                if ( (LA83_0==DOT) ) {
-                    alt83=1;
+                if ( (LA79_0==DOT) ) {
+                    alt79=1;
                 }
 
 
-                switch (alt83) {
+                switch (alt79) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1577:48: DOT a= accessor_element
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1569:48: DOT a= accessor_element
             	    {
-            	    match(input,DOT,FOLLOW_DOT_in_accessor_path4524); if (failed) return retval;
-            	    pushFollow(FOLLOW_accessor_element_in_accessor_path4528);
+            	    match(input,DOT,FOLLOW_DOT_in_accessor_path4470); if (failed) return retval;
+            	    pushFollow(FOLLOW_accessor_element_in_accessor_path4474);
             	    a=accessor_element();
             	    _fsp--;
             	    if (failed) return retval;
@@ -6730,7 +6663,7 @@
             	    break;
 
             	default :
-            	    break loop83;
+            	    break loop79;
                 }
             } while (true);
 
@@ -6757,7 +6690,7 @@
 
 
     // $ANTLR start accessor_element
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1580:1: accessor_element returns [ String text ] : i= identifier (s= square_chunk )* ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1572:1: accessor_element returns [ String text ] : i= identifier (s= square_chunk )* ;
     public final String accessor_element() throws RecognitionException {
         String text = null;
 
@@ -6770,32 +6703,32 @@
         	        StringBuffer buf = new StringBuffer();
         	
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1588:3: (i= identifier (s= square_chunk )* )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1588:3: i= identifier (s= square_chunk )*
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1579:2: (i= identifier (s= square_chunk )* )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1580:3: i= identifier (s= square_chunk )*
             {
-            pushFollow(FOLLOW_identifier_in_accessor_element4566);
+            pushFollow(FOLLOW_identifier_in_accessor_element4512);
             i=identifier();
             _fsp--;
             if (failed) return text;
             if ( backtracking==0 ) {
               buf.append(input.toString(i.start,i.stop));
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1588:39: (s= square_chunk )*
-            loop84:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1580:39: (s= square_chunk )*
+            loop80:
             do {
-                int alt84=2;
-                int LA84_0 = input.LA(1);
+                int alt80=2;
+                int LA80_0 = input.LA(1);
 
-                if ( (LA84_0==LEFT_SQUARE) ) {
-                    alt84=1;
+                if ( (LA80_0==LEFT_SQUARE) ) {
+                    alt80=1;
                 }
 
 
-                switch (alt84) {
+                switch (alt80) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1588:40: s= square_chunk
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1580:40: s= square_chunk
             	    {
-            	    pushFollow(FOLLOW_square_chunk_in_accessor_element4573);
+            	    pushFollow(FOLLOW_square_chunk_in_accessor_element4519);
             	    s=square_chunk();
             	    _fsp--;
             	    if (failed) return text;
@@ -6807,7 +6740,7 @@
             	    break;
 
             	default :
-            	    break loop84;
+            	    break loop80;
                 }
             } while (true);
 
@@ -6832,36 +6765,36 @@
 
 
     // $ANTLR start rhs_chunk
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1591:1: rhs_chunk[RuleDescr rule] : THEN (~ END )* loc= END opt_semicolon ;
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1583:1: rhs_chunk[RuleDescr rule] : THEN (~ END )* loc= END opt_semicolon ;
     public final void rhs_chunk(RuleDescr rule) throws RecognitionException {
         Token loc=null;
         Token THEN54=null;
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1593:3: ( THEN (~ END )* loc= END opt_semicolon )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1593:3: THEN (~ END )* loc= END opt_semicolon
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1584:2: ( THEN (~ END )* loc= END opt_semicolon )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1585:3: THEN (~ END )* loc= END opt_semicolon
             {
             THEN54=(Token)input.LT(1);
-            match(input,THEN,FOLLOW_THEN_in_rhs_chunk4594); if (failed) return ;
+            match(input,THEN,FOLLOW_THEN_in_rhs_chunk4540); if (failed) return ;
             if ( backtracking==0 ) {
                location.setType( Location.LOCATION_RHS ); 
             }
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1594:3: (~ END )*
-            loop85:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1586:3: (~ END )*
+            loop81:
             do {
-                int alt85=2;
-                int LA85_0 = input.LA(1);
+                int alt81=2;
+                int LA81_0 = input.LA(1);
 
-                if ( ((LA85_0>=ATTRIBUTES && LA85_0<=QUERY)||(LA85_0>=TEMPLATE && LA85_0<=80)) ) {
-                    alt85=1;
+                if ( ((LA81_0>=PACKAGE && LA81_0<=QUERY)||(LA81_0>=TEMPLATE && LA81_0<=80)) ) {
+                    alt81=1;
                 }
 
 
-                switch (alt85) {
+                switch (alt81) {
             	case 1 :
-            	    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1594:5: ~ END
+            	    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1586:5: ~ END
             	    {
-            	    if ( (input.LA(1)>=ATTRIBUTES && input.LA(1)<=QUERY)||(input.LA(1)>=TEMPLATE && input.LA(1)<=80) ) {
+            	    if ( (input.LA(1)>=PACKAGE && input.LA(1)<=QUERY)||(input.LA(1)>=TEMPLATE && input.LA(1)<=80) ) {
             	        input.consume();
             	        errorRecovery=false;failed=false;
             	    }
@@ -6869,7 +6802,7 @@
             	        if (backtracking>0) {failed=true; return ;}
             	        MismatchedSetException mse =
             	            new MismatchedSetException(null,input);
-            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_rhs_chunk4602);    throw mse;
+            	        recoverFromMismatchedSet(input,mse,FOLLOW_set_in_rhs_chunk4548);    throw mse;
             	    }
 
 
@@ -6877,13 +6810,13 @@
             	    break;
 
             	default :
-            	    break loop85;
+            	    break loop81;
                 }
             } while (true);
 
             loc=(Token)input.LT(1);
-            match(input,END,FOLLOW_END_in_rhs_chunk4626); if (failed) return ;
-            pushFollow(FOLLOW_opt_semicolon_in_rhs_chunk4628);
+            match(input,END,FOLLOW_END_in_rhs_chunk4572); if (failed) return ;
+            pushFollow(FOLLOW_opt_semicolon_in_rhs_chunk4574);
             opt_semicolon();
             _fsp--;
             if (failed) return ;
@@ -6920,7 +6853,7 @@
 
 
     // $ANTLR start name
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1613:1: name returns [String name] : ( ID | STRING );
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1605:1: name returns [String name] : ( ID | STRING );
     public final String name() throws RecognitionException {
         String name = null;
 
@@ -6928,29 +6861,29 @@
         Token STRING56=null;
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1614:5: ( ID | STRING )
-            int alt86=2;
-            int LA86_0 = input.LA(1);
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1606:2: ( ID | STRING )
+            int alt82=2;
+            int LA82_0 = input.LA(1);
 
-            if ( (LA86_0==ID) ) {
-                alt86=1;
+            if ( (LA82_0==ID) ) {
+                alt82=1;
             }
-            else if ( (LA86_0==STRING) ) {
-                alt86=2;
+            else if ( (LA82_0==STRING) ) {
+                alt82=2;
             }
             else {
                 if (backtracking>0) {failed=true; return name;}
                 NoViableAltException nvae =
-                    new NoViableAltException("1613:1: name returns [String name] : ( ID | STRING );", 86, 0, input);
+                    new NoViableAltException("1605:1: name returns [String name] : ( ID | STRING );", 82, 0, input);
 
                 throw nvae;
             }
-            switch (alt86) {
+            switch (alt82) {
                 case 1 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1614:5: ID
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1606:5: ID
                     {
                     ID55=(Token)input.LT(1);
-                    match(input,ID,FOLLOW_ID_in_name4662); if (failed) return name;
+                    match(input,ID,FOLLOW_ID_in_name4608); if (failed) return name;
                     if ( backtracking==0 ) {
                        name = ID55.getText(); 
                     }
@@ -6958,10 +6891,10 @@
                     }
                     break;
                 case 2 :
-                    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1615:5: STRING
+                    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1607:5: STRING
                     {
                     STRING56=(Token)input.LT(1);
-                    match(input,STRING,FOLLOW_STRING_in_name4670); if (failed) return name;
+                    match(input,STRING,FOLLOW_STRING_in_name4616); if (failed) return name;
                     if ( backtracking==0 ) {
                        name = getString( STRING56.getText() ); 
                     }
@@ -6985,16 +6918,16 @@
     };
 
     // $ANTLR start identifier
-    // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1618:1: identifier : ( ID | PACKAGE | FUNCTION | GLOBAL | IMPORT | RULE | QUERY | TEMPLATE | ATTRIBUTES | ENABLED | SALIENCE | DURATION | DIALECT | FROM | INIT | ACTION | REVERSE | RESULT | CONTAINS | EXCLUDES | MEMBEROF | MATCHES | WHEN | THEN | END | IN );
+    // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1610:1: identifier : ( ID | PACKAGE | FUNCTION | GLOBAL | IMPORT | RULE | QUERY | TEMPLATE | ATTRIBUTES | ENABLED | SALIENCE | DURATION | DIALECT | FROM | INIT | ACTION | REVERSE | RESULT | CONTAINS | EXCLUDES | MEMBEROF | MATCHES | WHEN | THEN | END | IN );
     public final identifier_return identifier() throws RecognitionException {
         identifier_return retval = new identifier_return();
         retval.start = input.LT(1);
 
         try {
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1619:10: ( ID | PACKAGE | FUNCTION | GLOBAL | IMPORT | RULE | QUERY | TEMPLATE | ATTRIBUTES | ENABLED | SALIENCE | DURATION | DIALECT | FROM | INIT | ACTION | REVERSE | RESULT | CONTAINS | EXCLUDES | MEMBEROF | MATCHES | WHEN | THEN | END | IN )
-            // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1611:2: ( ID | PACKAGE | FUNCTION | GLOBAL | IMPORT | RULE | QUERY | TEMPLATE | ATTRIBUTES | ENABLED | SALIENCE | DURATION | DIALECT | FROM | INIT | ACTION | REVERSE | RESULT | CONTAINS | EXCLUDES | MEMBEROF | MATCHES | WHEN | THEN | END | IN )
+            // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:
             {
-            if ( (input.LA(1)>=ATTRIBUTES && input.LA(1)<=ID)||input.LA(1)==GLOBAL||(input.LA(1)>=QUERY && input.LA(1)<=WHEN)||input.LA(1)==ENABLED||input.LA(1)==SALIENCE||(input.LA(1)>=DURATION && input.LA(1)<=DIALECT)||input.LA(1)==FROM||(input.LA(1)>=INIT && input.LA(1)<=RESULT)||(input.LA(1)>=CONTAINS && input.LA(1)<=IN)||input.LA(1)==THEN ) {
+            if ( (input.LA(1)>=PACKAGE && input.LA(1)<=ID)||input.LA(1)==GLOBAL||(input.LA(1)>=QUERY && input.LA(1)<=ATTRIBUTES)||input.LA(1)==ENABLED||input.LA(1)==SALIENCE||(input.LA(1)>=DURATION && input.LA(1)<=DIALECT)||input.LA(1)==FROM||(input.LA(1)>=INIT && input.LA(1)<=RESULT)||(input.LA(1)>=CONTAINS && input.LA(1)<=IN)||input.LA(1)==THEN ) {
                 input.consume();
                 errorRecovery=false;failed=false;
             }
@@ -7023,10 +6956,10 @@
 
     // $ANTLR start synpred1
     public final void synpred1_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:803:6: ( EXISTS )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:803:8: EXISTS
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:795:6: ( EXISTS )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:795:8: EXISTS
         {
-        match(input,EXISTS,FOLLOW_EXISTS_in_synpred11963); if (failed) return ;
+        match(input,EXISTS,FOLLOW_EXISTS_in_synpred11909); if (failed) return ;
 
         }
     }
@@ -7034,10 +6967,10 @@
 
     // $ANTLR start synpred2
     public final void synpred2_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:804:5: ( NOT )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:804:7: NOT
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:796:5: ( NOT )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:796:7: NOT
         {
-        match(input,NOT,FOLLOW_NOT_in_synpred21981); if (failed) return ;
+        match(input,NOT,FOLLOW_NOT_in_synpred21927); if (failed) return ;
 
         }
     }
@@ -7045,10 +6978,10 @@
 
     // $ANTLR start synpred3
     public final void synpred3_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:805:5: ( EVAL )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:805:7: EVAL
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:797:5: ( EVAL )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:797:7: EVAL
         {
-        match(input,EVAL,FOLLOW_EVAL_in_synpred32000); if (failed) return ;
+        match(input,EVAL,FOLLOW_EVAL_in_synpred31946); if (failed) return ;
 
         }
     }
@@ -7056,10 +6989,10 @@
 
     // $ANTLR start synpred4
     public final void synpred4_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:806:5: ( FORALL )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:806:7: FORALL
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:798:5: ( FORALL )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:798:7: FORALL
         {
-        match(input,FORALL,FOLLOW_FORALL_in_synpred42019); if (failed) return ;
+        match(input,FORALL,FOLLOW_FORALL_in_synpred41965); if (failed) return ;
 
         }
     }
@@ -7067,10 +7000,10 @@
 
     // $ANTLR start synpred5
     public final void synpred5_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:807:5: ( LEFT_PAREN )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:807:7: LEFT_PAREN
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:799:5: ( LEFT_PAREN )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:799:7: LEFT_PAREN
         {
-        match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_synpred52038); if (failed) return ;
+        match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_synpred51984); if (failed) return ;
 
         }
     }
@@ -7078,10 +7011,10 @@
 
     // $ANTLR start synpred6
     public final void synpred6_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1091:6: ( LEFT_SQUARE )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1091:8: LEFT_SQUARE
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1083:6: ( LEFT_SQUARE )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1083:8: LEFT_SQUARE
         {
-        match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_synpred63007); if (failed) return ;
+        match(input,LEFT_SQUARE,FOLLOW_LEFT_SQUARE_in_synpred62953); if (failed) return ;
 
         }
     }
@@ -7089,10 +7022,10 @@
 
     // $ANTLR start synpred7
     public final void synpred7_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1097:6: ( LEFT_PAREN )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1097:8: LEFT_PAREN
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1089:6: ( LEFT_PAREN )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1089:8: LEFT_PAREN
         {
-        match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_synpred73040); if (failed) return ;
+        match(input,LEFT_PAREN,FOLLOW_LEFT_PAREN_in_synpred72986); if (failed) return ;
 
         }
     }
@@ -7100,11 +7033,11 @@
 
     // $ANTLR start synpred8
     public final void synpred8_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1359:6: ( DOUBLE_PIPE and_restr_connective[or] )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1359:6: DOUBLE_PIPE and_restr_connective[or]
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1351:6: ( DOUBLE_PIPE and_restr_connective[or] )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1351:6: DOUBLE_PIPE and_restr_connective[or]
         {
-        match(input,DOUBLE_PIPE,FOLLOW_DOUBLE_PIPE_in_synpred83709); if (failed) return ;
-        pushFollow(FOLLOW_and_restr_connective_in_synpred83720);
+        match(input,DOUBLE_PIPE,FOLLOW_DOUBLE_PIPE_in_synpred83655); if (failed) return ;
+        pushFollow(FOLLOW_and_restr_connective_in_synpred83666);
         and_restr_connective(or);
         _fsp--;
         if (failed) return ;
@@ -7115,11 +7048,11 @@
 
     // $ANTLR start synpred9
     public final void synpred9_fragment() throws RecognitionException {   
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1381:5: ( DOUBLE_AMPER constraint_expression[and] )
-        // /home/etirelli/workspace/jboss/jbossrules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1381:5: DOUBLE_AMPER constraint_expression[and]
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1373:5: ( DOUBLE_AMPER constraint_expression[and] )
+        // /home/michael/projects/jboss-rules/drools-compiler/src/main/resources/org/drools/lang/DRL.g:1373:5: DOUBLE_AMPER constraint_expression[and]
         {
-        match(input,DOUBLE_AMPER,FOLLOW_DOUBLE_AMPER_in_synpred93773); if (failed) return ;
-        pushFollow(FOLLOW_constraint_expression_in_synpred93784);
+        match(input,DOUBLE_AMPER,FOLLOW_DOUBLE_AMPER_in_synpred93719); if (failed) return ;
+        pushFollow(FOLLOW_constraint_expression_in_synpred93730);
         constraint_expression(and);
         _fsp--;
         if (failed) return ;
@@ -7128,11 +7061,11 @@
     }
     // $ANTLR end synpred9
 
-    public final boolean synpred4() {
+    public final boolean synpred9() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred4_fragment(); // can never throw exception
+            synpred9_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7142,11 +7075,11 @@
         failed=false;
         return success;
     }
-    public final boolean synpred9() {
+    public final boolean synpred5() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred9_fragment(); // can never throw exception
+            synpred5_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7156,11 +7089,11 @@
         failed=false;
         return success;
     }
-    public final boolean synpred7() {
+    public final boolean synpred6() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred7_fragment(); // can never throw exception
+            synpred6_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7170,11 +7103,11 @@
         failed=false;
         return success;
     }
-    public final boolean synpred2() {
+    public final boolean synpred7() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred2_fragment(); // can never throw exception
+            synpred7_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7184,11 +7117,11 @@
         failed=false;
         return success;
     }
-    public final boolean synpred3() {
+    public final boolean synpred8() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred3_fragment(); // can never throw exception
+            synpred8_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7212,11 +7145,11 @@
         failed=false;
         return success;
     }
-    public final boolean synpred5() {
+    public final boolean synpred2() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred5_fragment(); // can never throw exception
+            synpred2_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7226,11 +7159,11 @@
         failed=false;
         return success;
     }
-    public final boolean synpred6() {
+    public final boolean synpred3() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred6_fragment(); // can never throw exception
+            synpred3_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7240,11 +7173,11 @@
         failed=false;
         return success;
     }
-    public final boolean synpred8() {
+    public final boolean synpred4() {
         backtracking++;
         int start = input.mark();
         try {
-            synpred8_fragment(); // can never throw exception
+            synpred4_fragment(); // can never throw exception
         } catch (RecognitionException re) {
             System.err.println("impossible: "+re);
         }
@@ -7256,291 +7189,287 @@
     }
 
 
-    protected DFA12 dfa12 = new DFA12(this);
-    protected DFA13 dfa13 = new DFA13(this);
-    protected DFA21 dfa21 = new DFA21(this);
-    protected DFA56 dfa56 = new DFA56(this);
-    protected DFA68 dfa68 = new DFA68(this);
-    protected DFA69 dfa69 = new DFA69(this);
-    static final String DFA12_eotS =
+    protected DFA8 dfa8 = new DFA8(this);
+    protected DFA9 dfa9 = new DFA9(this);
+    protected DFA17 dfa17 = new DFA17(this);
+    protected DFA52 dfa52 = new DFA52(this);
+    protected DFA64 dfa64 = new DFA64(this);
+    protected DFA65 dfa65 = new DFA65(this);
+    static final String DFA8_eotS =
         "\6\uffff";
-    static final String DFA12_eofS =
+    static final String DFA8_eofS =
         "\6\uffff";
-    static final String DFA12_minS =
-        "\2\4\1\uffff\1\73\1\uffff\1\4";
-    static final String DFA12_maxS =
-        "\2\74\1\uffff\1\73\1\uffff\1\74";
-    static final String DFA12_acceptS =
-        "\2\uffff\1\1\1\uffff\1\2\1\uffff";
-    static final String DFA12_specialS =
+    static final String DFA8_minS =
+        "\2\4\1\73\2\uffff\1\4";
+    static final String DFA8_maxS =
+        "\2\74\1\73\2\uffff\1\74";
+    static final String DFA8_acceptS =
+        "\3\uffff\1\2\1\1\1\uffff";
+    static final String DFA8_specialS =
         "\6\uffff}>";
-    static final String[] DFA12_transitionS = {
-            "\5\1\1\uffff\1\1\3\uffff\5\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
+    static final String[] DFA8_transitionS = {
+            "\4\1\1\uffff\1\1\3\uffff\6\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
             "\2\1\5\uffff\1\1\5\uffff\4\1\1\uffff\5\1\6\uffff\1\1",
-            "\7\2\1\uffff\2\4\5\2\3\uffff\1\2\1\uffff\1\2\6\uffff\2\2\5\uffff"+
-            "\1\2\5\uffff\4\2\1\uffff\5\2\4\uffff\1\3\1\uffff\1\2",
-            "",
+            "\6\4\1\uffff\2\3\6\4\3\uffff\1\4\1\uffff\1\4\6\uffff\2\4\5\uffff"+
+            "\1\4\5\uffff\4\4\1\uffff\5\4\4\uffff\1\2\1\uffff\1\4",
             "\1\5",
             "",
-            "\5\2\1\uffff\1\2\1\uffff\2\4\5\2\3\uffff\1\2\1\uffff\1\2\6\uffff"+
-            "\2\2\5\uffff\1\2\5\uffff\4\2\1\uffff\5\2\4\uffff\1\3\1\uffff"+
-            "\1\2"
+            "",
+            "\4\4\1\uffff\1\4\1\uffff\2\3\6\4\3\uffff\1\4\1\uffff\1\4\6\uffff"+
+            "\2\4\5\uffff\1\4\5\uffff\4\4\1\uffff\5\4\4\uffff\1\2\1\uffff"+
+            "\1\4"
     };
 
-    static final short[] DFA12_eot = DFA.unpackEncodedString(DFA12_eotS);
-    static final short[] DFA12_eof = DFA.unpackEncodedString(DFA12_eofS);
-    static final char[] DFA12_min = DFA.unpackEncodedStringToUnsignedChars(DFA12_minS);
-    static final char[] DFA12_max = DFA.unpackEncodedStringToUnsignedChars(DFA12_maxS);
-    static final short[] DFA12_accept = DFA.unpackEncodedString(DFA12_acceptS);
-    static final short[] DFA12_special = DFA.unpackEncodedString(DFA12_specialS);
-    static final short[][] DFA12_transition;
+    static final short[] DFA8_eot = DFA.unpackEncodedString(DFA8_eotS);
+    static final short[] DFA8_eof = DFA.unpackEncodedString(DFA8_eofS);
+    static final char[] DFA8_min = DFA.unpackEncodedStringToUnsignedChars(DFA8_minS);
+    static final char[] DFA8_max = DFA.unpackEncodedStringToUnsignedChars(DFA8_maxS);
+    static final short[] DFA8_accept = DFA.unpackEncodedString(DFA8_acceptS);
+    static final short[] DFA8_special = DFA.unpackEncodedString(DFA8_specialS);
+    static final short[][] DFA8_transition;
 
     static {
-        int numStates = DFA12_transitionS.length;
-        DFA12_transition = new short[numStates][];
+        int numStates = DFA8_transitionS.length;
+        DFA8_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA12_transition[i] = DFA.unpackEncodedString(DFA12_transitionS[i]);
+            DFA8_transition[i] = DFA.unpackEncodedString(DFA8_transitionS[i]);
         }
     }
 
-    class DFA12 extends DFA {
+    class DFA8 extends DFA {
 
-        public DFA12(BaseRecognizer recognizer) {
+        public DFA8(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 12;
-            this.eot = DFA12_eot;
-            this.eof = DFA12_eof;
-            this.min = DFA12_min;
-            this.max = DFA12_max;
-            this.accept = DFA12_accept;
-            this.special = DFA12_special;
-            this.transition = DFA12_transition;
+            this.decisionNumber = 8;
+            this.eot = DFA8_eot;
+            this.eof = DFA8_eof;
+            this.min = DFA8_min;
+            this.max = DFA8_max;
+            this.accept = DFA8_accept;
+            this.special = DFA8_special;
+            this.transition = DFA8_transition;
         }
         public String getDescription() {
-            return "348:15: (paramType= dotted_name )?";
+            return "340:15: (paramType= dotted_name )?";
         }
     }
-    static final String DFA13_eotS =
+    static final String DFA9_eotS =
         "\6\uffff";
-    static final String DFA13_eofS =
+    static final String DFA9_eofS =
         "\6\uffff";
-    static final String DFA13_minS =
-        "\2\4\1\uffff\1\73\1\uffff\1\4";
-    static final String DFA13_maxS =
-        "\2\74\1\uffff\1\73\1\uffff\1\74";
-    static final String DFA13_acceptS =
-        "\2\uffff\1\1\1\uffff\1\2\1\uffff";
-    static final String DFA13_specialS =
+    static final String DFA9_minS =
+        "\2\4\1\73\2\uffff\1\4";
+    static final String DFA9_maxS =
+        "\2\74\1\73\2\uffff\1\74";
+    static final String DFA9_acceptS =
+        "\3\uffff\1\2\1\1\1\uffff";
+    static final String DFA9_specialS =
         "\6\uffff}>";
-    static final String[] DFA13_transitionS = {
-            "\5\1\1\uffff\1\1\3\uffff\5\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
+    static final String[] DFA9_transitionS = {
+            "\4\1\1\uffff\1\1\3\uffff\6\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
             "\2\1\5\uffff\1\1\5\uffff\4\1\1\uffff\5\1\6\uffff\1\1",
-            "\7\2\1\uffff\2\4\5\2\3\uffff\1\2\1\uffff\1\2\6\uffff\2\2\5\uffff"+
-            "\1\2\5\uffff\4\2\1\uffff\5\2\4\uffff\1\3\1\uffff\1\2",
-            "",
+            "\6\4\1\uffff\2\3\6\4\3\uffff\1\4\1\uffff\1\4\6\uffff\2\4\5\uffff"+
+            "\1\4\5\uffff\4\4\1\uffff\5\4\4\uffff\1\2\1\uffff\1\4",
             "\1\5",
             "",
-            "\5\2\1\uffff\1\2\1\uffff\2\4\5\2\3\uffff\1\2\1\uffff\1\2\6\uffff"+
-            "\2\2\5\uffff\1\2\5\uffff\4\2\1\uffff\5\2\4\uffff\1\3\1\uffff"+
-            "\1\2"
+            "",
+            "\4\4\1\uffff\1\4\1\uffff\2\3\6\4\3\uffff\1\4\1\uffff\1\4\6\uffff"+
+            "\2\4\5\uffff\1\4\5\uffff\4\4\1\uffff\5\4\4\uffff\1\2\1\uffff"+
+            "\1\4"
     };
 
-    static final short[] DFA13_eot = DFA.unpackEncodedString(DFA13_eotS);
-    static final short[] DFA13_eof = DFA.unpackEncodedString(DFA13_eofS);
-    static final char[] DFA13_min = DFA.unpackEncodedStringToUnsignedChars(DFA13_minS);
-    static final char[] DFA13_max = DFA.unpackEncodedStringToUnsignedChars(DFA13_maxS);
-    static final short[] DFA13_accept = DFA.unpackEncodedString(DFA13_acceptS);
-    static final short[] DFA13_special = DFA.unpackEncodedString(DFA13_specialS);
-    static final short[][] DFA13_transition;
+    static final short[] DFA9_eot = DFA.unpackEncodedString(DFA9_eotS);
+    static final short[] DFA9_eof = DFA.unpackEncodedString(DFA9_eofS);
+    static final char[] DFA9_min = DFA.unpackEncodedStringToUnsignedChars(DFA9_minS);
+    static final char[] DFA9_max = DFA.unpackEncodedStringToUnsignedChars(DFA9_maxS);
+    static final short[] DFA9_accept = DFA.unpackEncodedString(DFA9_acceptS);
+    static final short[] DFA9_special = DFA.unpackEncodedString(DFA9_specialS);
+    static final short[][] DFA9_transition;
 
     static {
-        int numStates = DFA13_transitionS.length;
-        DFA13_transition = new short[numStates][];
+        int numStates = DFA9_transitionS.length;
+        DFA9_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA13_transition[i] = DFA.unpackEncodedString(DFA13_transitionS[i]);
+            DFA9_transition[i] = DFA.unpackEncodedString(DFA9_transitionS[i]);
         }
     }
 
-    class DFA13 extends DFA {
+    class DFA9 extends DFA {
 
-        public DFA13(BaseRecognizer recognizer) {
+        public DFA9(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 13;
-            this.eot = DFA13_eot;
-            this.eof = DFA13_eof;
-            this.min = DFA13_min;
-            this.max = DFA13_max;
-            this.accept = DFA13_accept;
-            this.special = DFA13_special;
-            this.transition = DFA13_transition;
+            this.decisionNumber = 9;
+            this.eot = DFA9_eot;
+            this.eof = DFA9_eof;
+            this.min = DFA9_min;
+            this.max = DFA9_max;
+            this.accept = DFA9_accept;
+            this.special = DFA9_special;
+            this.transition = DFA9_transition;
         }
         public String getDescription() {
-            return "353:22: (paramType= dotted_name )?";
+            return "345:22: (paramType= dotted_name )?";
         }
     }
-    static final String DFA21_eotS =
+    static final String DFA17_eotS =
         "\11\uffff";
-    static final String DFA21_eofS =
+    static final String DFA17_eofS =
         "\11\uffff";
-    static final String DFA21_minS =
-        "\2\10\1\uffff\1\10\1\uffff\1\4\1\73\2\10";
-    static final String DFA21_maxS =
-        "\2\52\1\uffff\1\110\1\uffff\1\74\1\73\2\72";
-    static final String DFA21_acceptS =
+    static final String DFA17_minS =
+        "\2\7\1\uffff\1\7\1\uffff\1\4\1\73\2\7";
+    static final String DFA17_maxS =
+        "\2\52\1\uffff\1\111\1\uffff\1\74\1\73\2\72";
+    static final String DFA17_acceptS =
         "\2\uffff\1\2\1\uffff\1\1\4\uffff";
-    static final String DFA21_specialS =
+    static final String DFA17_specialS =
         "\11\uffff}>";
-    static final String[] DFA21_transitionS = {
-            "\1\2\2\uffff\1\1\3\uffff\1\2\27\uffff\4\2",
-            "\1\3\2\uffff\1\2\1\uffff\1\4\24\uffff\1\2\1\uffff\1\2\2\uffff"+
+    static final String[] DFA17_transitionS = {
+            "\1\2\2\uffff\1\1\3\uffff\1\2\30\uffff\4\2",
+            "\1\3\2\uffff\1\2\1\uffff\1\4\25\uffff\1\2\1\uffff\1\2\2\uffff"+
             "\4\2",
             "",
-            "\1\4\1\5\1\uffff\1\2\2\4\54\uffff\1\6\15\uffff\1\2",
+            "\1\4\1\5\1\uffff\1\2\2\4\55\uffff\1\6\16\uffff\1\2",
             "",
-            "\5\7\1\uffff\1\7\3\uffff\5\7\3\uffff\1\7\1\uffff\1\7\6\uffff"+
+            "\4\7\1\uffff\1\7\3\uffff\6\7\3\uffff\1\7\1\uffff\1\7\6\uffff"+
             "\2\7\5\uffff\1\7\5\uffff\4\7\1\uffff\5\7\6\uffff\1\7",
             "\1\10",
-            "\1\4\1\5\1\uffff\1\2\56\uffff\1\6",
-            "\1\4\2\uffff\1\2\56\uffff\1\6"
+            "\1\4\1\5\1\uffff\1\2\57\uffff\1\6",
+            "\1\4\2\uffff\1\2\57\uffff\1\6"
     };
 
-    static final short[] DFA21_eot = DFA.unpackEncodedString(DFA21_eotS);
-    static final short[] DFA21_eof = DFA.unpackEncodedString(DFA21_eofS);
-    static final char[] DFA21_min = DFA.unpackEncodedStringToUnsignedChars(DFA21_minS);
-    static final char[] DFA21_max = DFA.unpackEncodedStringToUnsignedChars(DFA21_maxS);
-    static final short[] DFA21_accept = DFA.unpackEncodedString(DFA21_acceptS);
-    static final short[] DFA21_special = DFA.unpackEncodedString(DFA21_specialS);
-    static final short[][] DFA21_transition;
+    static final short[] DFA17_eot = DFA.unpackEncodedString(DFA17_eotS);
+    static final short[] DFA17_eof = DFA.unpackEncodedString(DFA17_eofS);
+    static final char[] DFA17_min = DFA.unpackEncodedStringToUnsignedChars(DFA17_minS);
+    static final char[] DFA17_max = DFA.unpackEncodedStringToUnsignedChars(DFA17_maxS);
+    static final short[] DFA17_accept = DFA.unpackEncodedString(DFA17_acceptS);
+    static final short[] DFA17_special = DFA.unpackEncodedString(DFA17_specialS);
+    static final short[][] DFA17_transition;
 
     static {
-        int numStates = DFA21_transitionS.length;
-        DFA21_transition = new short[numStates][];
+        int numStates = DFA17_transitionS.length;
+        DFA17_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA21_transition[i] = DFA.unpackEncodedString(DFA21_transitionS[i]);
+            DFA17_transition[i] = DFA.unpackEncodedString(DFA17_transitionS[i]);
         }
     }
 
-    class DFA21 extends DFA {
+    class DFA17 extends DFA {
 
-        public DFA21(BaseRecognizer recognizer) {
+        public DFA17(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 21;
-            this.eot = DFA21_eot;
-            this.eof = DFA21_eof;
-            this.min = DFA21_min;
-            this.max = DFA21_max;
-            this.accept = DFA21_accept;
-            this.special = DFA21_special;
-            this.transition = DFA21_transition;
+            this.decisionNumber = 17;
+            this.eot = DFA17_eot;
+            this.eof = DFA17_eof;
+            this.min = DFA17_min;
+            this.max = DFA17_max;
+            this.accept = DFA17_accept;
+            this.special = DFA17_special;
+            this.transition = DFA17_transition;
         }
         public String getDescription() {
-            return "395:3: ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )?";
+            return "387:3: ( LEFT_PAREN ( ( (paramType= qualified_id )? paramName= ID ) ( COMMA (paramType= qualified_id )? paramName= ID )* )? RIGHT_PAREN )?";
         }
     }
-    static final String DFA56_eotS =
+    static final String DFA52_eotS =
         "\150\uffff";
-    static final String DFA56_eofS =
+    static final String DFA52_eofS =
         "\150\uffff";
-    static final String DFA56_minS =
-        "\1\10\1\uffff\1\4\1\uffff\3\4\1\0\1\uffff\4\4\1\uffff\1\0\11\4\1"+
-        "\0\1\4\1\0\1\4\1\0\1\4\2\0\3\4\2\0\1\4\1\0\1\4\2\0\3\4\2\0\1\4\1"+
-        "\0\1\4\2\0\3\4\1\0\3\4\1\0\3\4\1\0\1\4\1\0\1\4\1\uffff\44\0";
-    static final String DFA56_maxS =
-        "\1\107\1\uffff\1\120\1\uffff\3\120\1\0\1\uffff\4\120\1\uffff\1\0"+
-        "\11\120\1\0\1\120\1\0\1\120\1\0\1\120\2\0\3\120\2\0\1\120\1\0\1"+
-        "\120\2\0\3\120\2\0\1\120\1\0\1\120\2\0\3\120\1\0\3\120\1\0\3\120"+
+    static final String DFA52_minS =
+        "\1\7\1\uffff\1\4\1\uffff\3\4\1\0\1\uffff\4\4\1\uffff\4\4\1\0\2\4"+
+        "\1\0\4\4\1\0\1\4\1\0\1\4\2\0\2\4\1\0\1\4\1\0\1\4\1\0\1\4\2\0\3\4"+
+        "\2\0\2\4\3\0\3\4\1\0\3\4\1\0\3\4\1\0\1\4\1\0\1\4\1\uffff\44\0";
+    static final String DFA52_maxS =
+        "\1\107\1\uffff\1\120\1\uffff\3\120\1\0\1\uffff\4\120\1\uffff\4\120"+
+        "\1\0\2\120\1\0\4\120\1\0\1\120\1\0\1\120\2\0\2\120\1\0\1\120\1\0"+
+        "\1\120\1\0\1\120\2\0\3\120\2\0\2\120\3\0\3\120\1\0\3\120\1\0\3\120"+
         "\1\0\1\120\1\0\1\120\1\uffff\44\0";
-    static final String DFA56_acceptS =
+    static final String DFA52_acceptS =
         "\1\uffff\1\1\1\uffff\1\3\4\uffff\1\2\4\uffff\1\2\65\uffff\1\2\44"+
         "\uffff";
-    static final String DFA56_specialS =
-        "\1\13\1\uffff\1\34\1\uffff\1\25\1\6\1\40\1\63\1\uffff\1\66\1\53"+
-        "\1\35\1\5\1\uffff\1\52\1\55\1\74\1\36\1\56\1\32\1\1\1\43\1\21\1"+
-        "\16\1\37\1\23\1\27\1\4\1\26\1\3\1\64\1\2\1\57\1\10\1\46\1\17\1\14"+
-        "\1\31\1\33\1\30\1\41\1\62\1\70\1\7\1\51\1\73\1\71\1\22\1\44\1\24"+
-        "\1\0\1\42\1\72\1\75\1\67\1\45\1\60\1\11\1\47\1\20\1\61\1\12\1\50"+
-        "\1\54\1\15\1\76\1\65\45\uffff}>";
-    static final String[] DFA56_transitionS = {
-            "\2\3\1\uffff\1\2\2\3\1\uffff\1\3\22\uffff\4\3\1\uffff\4\3\1"+
+    static final String DFA52_specialS =
+        "\1\22\1\uffff\1\20\1\uffff\1\23\1\13\1\24\1\54\1\uffff\1\1\1\36"+
+        "\1\73\1\61\1\uffff\1\70\1\4\1\33\1\55\1\34\1\27\1\65\1\11\1\72\1"+
+        "\64\1\2\1\7\1\56\1\60\1\32\1\57\1\35\1\71\1\46\1\40\1\74\1\12\1"+
+        "\10\1\26\1\67\1\25\1\3\1\76\1\52\1\62\1\66\1\45\1\43\1\6\1\5\1\21"+
+        "\1\44\1\0\1\53\1\63\1\37\1\30\1\47\1\41\1\14\1\75\1\50\1\42\1\15"+
+        "\1\51\1\16\1\17\1\31\45\uffff}>";
+    static final String[] DFA52_transitionS = {
+            "\2\3\1\uffff\1\2\2\3\1\uffff\1\3\23\uffff\4\3\1\uffff\4\3\1"+
             "\uffff\1\3\15\uffff\1\1\1\uffff\1\3\12\uffff\1\3",
             "",
-            "\4\15\1\14\2\15\1\7\1\15\1\10\24\15\1\4\1\15\1\5\2\15\1\6\1"+
+            "\3\15\1\14\2\15\1\7\1\15\1\10\25\15\1\5\1\15\1\4\2\15\1\6\1"+
             "\11\1\12\1\13\46\15",
             "",
-            "\4\15\1\23\2\15\1\16\1\15\1\10\31\15\1\17\1\20\1\21\1\22\46"+
+            "\3\15\1\23\2\15\1\22\1\15\1\10\32\15\1\16\1\17\1\20\1\21\46"+
             "\15",
-            "\4\15\1\31\2\15\1\30\1\15\1\10\31\15\1\24\1\25\1\26\1\27\46"+
+            "\3\15\1\31\2\15\1\25\1\15\1\10\32\15\1\24\1\26\1\27\1\30\46"+
             "\15",
-            "\4\15\1\33\2\15\1\32\1\15\1\10\103\15",
+            "\3\15\1\33\2\15\1\32\1\15\1\10\104\15",
             "\1\uffff",
             "",
-            "\4\15\1\35\2\15\1\34\1\15\1\10\103\15",
-            "\7\15\1\36\1\15\1\10\103\15",
-            "\7\15\1\37\1\15\1\10\103\15",
-            "\5\15\1\41\1\15\1\43\1\15\1\10\54\15\1\42\15\15\1\40\10\15",
+            "\3\15\1\35\2\15\1\34\1\15\1\10\104\15",
+            "\6\15\1\36\1\15\1\10\104\15",
+            "\6\15\1\37\1\15\1\10\104\15",
+            "\4\15\1\41\1\15\1\42\1\15\1\10\55\15\1\43\16\15\1\40\7\15",
             "",
+            "\3\15\1\45\2\15\1\44\1\15\1\10\104\15",
+            "\3\15\1\47\2\15\1\46\1\15\1\10\104\15",
+            "\6\15\1\50\1\15\1\10\104\15",
+            "\6\15\1\51\1\15\1\10\104\15",
             "\1\uffff",
-            "\4\15\1\45\2\15\1\44\1\15\1\10\103\15",
-            "\4\15\1\47\2\15\1\46\1\15\1\10\103\15",
-            "\7\15\1\50\1\15\1\10\103\15",
-            "\7\15\1\51\1\15\1\10\103\15",
-            "\5\15\1\53\1\15\1\55\1\15\1\10\54\15\1\54\15\15\1\52\10\15",
-            "\4\15\1\57\2\15\1\56\1\15\1\10\103\15",
-            "\4\15\1\61\2\15\1\60\1\15\1\10\103\15",
-            "\7\15\1\62\1\15\1\10\103\15",
-            "\7\15\1\63\1\15\1\10\103\15",
+            "\4\15\1\53\1\15\1\55\1\15\1\10\55\15\1\54\16\15\1\52\7\15",
+            "\3\15\1\57\2\15\1\56\1\15\1\10\104\15",
             "\1\uffff",
-            "\5\15\1\65\1\15\1\67\1\15\1\10\54\15\1\66\15\15\1\64\10\15",
+            "\3\15\1\60\2\15\1\61\1\15\1\10\104\15",
+            "\6\15\1\62\1\15\1\10\104\15",
+            "\6\15\1\63\1\15\1\10\104\15",
+            "\4\15\1\65\1\15\1\67\1\15\1\10\55\15\1\66\16\15\1\64\7\15",
             "\1\uffff",
-            "\5\15\1\71\1\15\1\73\1\15\1\10\54\15\1\72\15\15\1\70\10\15",
+            "\4\15\1\71\1\15\1\73\1\15\1\10\55\15\1\72\16\15\1\70\7\15",
             "\1\uffff",
-            "\5\15\1\75\1\15\1\77\1\15\1\10\54\15\1\76\15\15\1\74\10\15",
+            "\4\15\1\75\1\15\1\77\1\15\1\10\55\15\1\76\16\15\1\74\7\15",
             "\1\uffff",
             "\1\uffff",
-            "\4\15\1\100\2\15\1\101\1\15\1\10\103\15",
-            "\5\102\1\15\1\102\1\103\1\15\1\10\5\102\3\15\1\102\1\15\1\102"+
+            "\3\15\1\100\2\15\1\101\1\15\1\10\104\15",
+            "\4\102\1\15\1\102\1\103\1\15\1\10\6\102\3\15\1\102\1\15\1\102"+
             "\6\15\2\102\5\15\1\102\5\15\4\102\1\15\5\102\6\15\1\102\24\15",
-            "\7\15\1\103\1\15\1\10\55\15\1\104\25\15",
             "\1\uffff",
+            "\6\15\1\103\1\15\1\10\56\15\1\104\25\15",
             "\1\uffff",
-            "\5\15\1\106\1\15\1\110\1\15\1\10\54\15\1\107\15\15\1\105\10"+
-            "\15",
+            "\4\15\1\106\1\15\1\110\1\15\1\10\55\15\1\107\16\15\1\105\7\15",
             "\1\uffff",
-            "\5\15\1\112\1\15\1\113\1\15\1\10\54\15\1\114\15\15\1\111\10"+
-            "\15",
+            "\4\15\1\112\1\15\1\114\1\15\1\10\55\15\1\113\16\15\1\111\7\15",
             "\1\uffff",
             "\1\uffff",
-            "\4\15\1\115\2\15\1\116\1\15\1\10\103\15",
-            "\5\117\1\15\1\117\1\103\1\15\1\10\5\117\3\15\1\117\1\15\1\117"+
+            "\3\15\1\115\2\15\1\116\1\15\1\10\104\15",
+            "\4\117\1\15\1\117\1\103\1\15\1\10\6\117\3\15\1\117\1\15\1\117"+
             "\6\15\2\117\5\15\1\117\5\15\4\117\1\15\5\117\6\15\1\117\24\15",
-            "\7\15\1\103\1\15\1\10\55\15\1\120\25\15",
+            "\6\15\1\103\1\15\1\10\56\15\1\120\25\15",
             "\1\uffff",
             "\1\uffff",
-            "\5\15\1\122\1\15\1\124\1\15\1\10\54\15\1\123\15\15\1\121\10"+
-            "\15",
+            "\4\15\1\122\1\15\1\123\1\15\1\10\55\15\1\124\16\15\1\121\7\15",
+            "\4\15\1\126\1\15\1\130\1\15\1\10\55\15\1\127\16\15\1\125\7\15",
             "\1\uffff",
-            "\5\15\1\126\1\15\1\127\1\15\1\10\54\15\1\130\15\15\1\125\10"+
-            "\15",
             "\1\uffff",
             "\1\uffff",
-            "\4\15\1\131\2\15\1\132\1\15\1\10\103\15",
-            "\5\133\1\15\1\133\1\103\1\15\1\10\5\133\3\15\1\133\1\15\1\133"+
+            "\3\15\1\131\2\15\1\132\1\15\1\10\104\15",
+            "\4\133\1\15\1\133\1\103\1\15\1\10\6\133\3\15\1\133\1\15\1\133"+
             "\6\15\2\133\5\15\1\133\5\15\4\133\1\15\5\133\6\15\1\133\24\15",
-            "\7\15\1\103\1\15\1\10\55\15\1\134\25\15",
+            "\6\15\1\103\1\15\1\10\56\15\1\134\25\15",
             "\1\uffff",
-            "\4\15\1\135\2\15\1\136\1\15\1\10\103\15",
-            "\5\137\1\15\1\137\1\103\1\15\1\10\5\137\3\15\1\137\1\15\1\137"+
+            "\3\15\1\135\2\15\1\136\1\15\1\10\104\15",
+            "\4\137\1\15\1\137\1\103\1\15\1\10\6\137\3\15\1\137\1\15\1\137"+
             "\6\15\2\137\5\15\1\137\5\15\4\137\1\15\5\137\6\15\1\137\24\15",
-            "\7\15\1\103\1\15\1\10\55\15\1\140\25\15",
+            "\6\15\1\103\1\15\1\10\56\15\1\140\25\15",
             "\1\uffff",
-            "\4\15\1\141\2\15\1\142\1\15\1\10\103\15",
-            "\5\143\1\15\1\143\1\103\1\15\1\10\5\143\3\15\1\143\1\15\1\143"+
+            "\3\15\1\141\2\15\1\142\1\15\1\10\104\15",
+            "\4\143\1\15\1\143\1\103\1\15\1\10\6\143\3\15\1\143\1\15\1\143"+
             "\6\15\2\143\5\15\1\143\5\15\4\143\1\15\5\143\6\15\1\143\24\15",
-            "\7\15\1\103\1\15\1\10\55\15\1\144\25\15",
+            "\6\15\1\103\1\15\1\10\56\15\1\144\25\15",
             "\1\uffff",
-            "\5\15\1\145\1\15\1\147\1\15\1\10\54\15\1\146\26\15",
+            "\4\15\1\145\1\15\1\147\1\15\1\10\55\15\1\146\26\15",
             "\1\uffff",
-            "\5\15\1\41\1\15\1\43\1\15\1\10\54\15\1\42\26\15",
+            "\4\15\1\41\1\15\1\42\1\15\1\10\55\15\1\43\26\15",
             "",
             "\1\uffff",
             "\1\uffff",
@@ -7580,46 +7509,46 @@
             "\1\uffff"
     };
 
-    static final short[] DFA56_eot = DFA.unpackEncodedString(DFA56_eotS);
-    static final short[] DFA56_eof = DFA.unpackEncodedString(DFA56_eofS);
-    static final char[] DFA56_min = DFA.unpackEncodedStringToUnsignedChars(DFA56_minS);
-    static final char[] DFA56_max = DFA.unpackEncodedStringToUnsignedChars(DFA56_maxS);
-    static final short[] DFA56_accept = DFA.unpackEncodedString(DFA56_acceptS);
-    static final short[] DFA56_special = DFA.unpackEncodedString(DFA56_specialS);
-    static final short[][] DFA56_transition;
+    static final short[] DFA52_eot = DFA.unpackEncodedString(DFA52_eotS);
+    static final short[] DFA52_eof = DFA.unpackEncodedString(DFA52_eofS);
+    static final char[] DFA52_min = DFA.unpackEncodedStringToUnsignedChars(DFA52_minS);
+    static final char[] DFA52_max = DFA.unpackEncodedStringToUnsignedChars(DFA52_maxS);
+    static final short[] DFA52_accept = DFA.unpackEncodedString(DFA52_acceptS);
+    static final short[] DFA52_special = DFA.unpackEncodedString(DFA52_specialS);
+    static final short[][] DFA52_transition;
 
     static {
-        int numStates = DFA56_transitionS.length;
-        DFA56_transition = new short[numStates][];
+        int numStates = DFA52_transitionS.length;
+        DFA52_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA56_transition[i] = DFA.unpackEncodedString(DFA56_transitionS[i]);
+            DFA52_transition[i] = DFA.unpackEncodedString(DFA52_transitionS[i]);
         }
     }
 
-    class DFA56 extends DFA {
+    class DFA52 extends DFA {
 
-        public DFA56(BaseRecognizer recognizer) {
+        public DFA52(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 56;
-            this.eot = DFA56_eot;
-            this.eof = DFA56_eof;
-            this.min = DFA56_min;
-            this.max = DFA56_max;
-            this.accept = DFA56_accept;
-            this.special = DFA56_special;
-            this.transition = DFA56_transition;
+            this.decisionNumber = 52;
+            this.eot = DFA52_eot;
+            this.eof = DFA52_eof;
+            this.min = DFA52_min;
+            this.max = DFA52_max;
+            this.accept = DFA52_accept;
+            this.special = DFA52_special;
+            this.transition = DFA52_transition;
         }
         public String getDescription() {
-            return "1090:4: ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )?";
+            return "1082:4: ( ( LEFT_SQUARE )=>sqarg= square_chunk | ( LEFT_PAREN )=>paarg= paren_chunk )?";
         }
         public int specialStateTransition(int s, IntStream input) throws NoViableAltException {
         	int _s = s;
             switch ( s ) {
                     case 0 : 
-                        int LA56_50 = input.LA(1);
+                        int LA52_51 = input.LA(1);
 
                          
-                        int index56_50 = input.index();
+                        int index52_51 = input.index();
                         input.rewind();
                         s = -1;
                         if ( (synpred7()) ) {s = 67;}
@@ -7627,290 +7556,288 @@
                         else if ( (true) ) {s = 3;}
 
                          
-                        input.seek(index56_50);
+                        input.seek(index52_51);
                         if ( s>=0 ) return s;
                         break;
                     case 1 : 
-                        int LA56_20 = input.LA(1);
+                        int LA52_9 = input.LA(1);
 
                          
-                        int index56_20 = input.index();
+                        int index52_9 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_20==LEFT_PAREN) ) {s = 46;}
+                        if ( (LA52_9==LEFT_PAREN) ) {s = 28;}
 
-                        else if ( (LA56_20==ID) ) {s = 47;}
+                        else if ( (LA52_9==ID) ) {s = 29;}
 
-                        else if ( (LA56_20==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_9==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( ((LA56_20>=ATTRIBUTES && LA56_20<=FUNCTION)||(LA56_20>=DOT && LA56_20<=GLOBAL)||LA56_20==COMMA||(LA56_20>=QUERY && LA56_20<=80)) && (synpred7())) {s = 13;}
+                        else if ( ((LA52_9>=PACKAGE && LA52_9<=FUNCTION)||(LA52_9>=DOT && LA52_9<=GLOBAL)||LA52_9==COMMA||(LA52_9>=QUERY && LA52_9<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_20);
+                        input.seek(index52_9);
                         if ( s>=0 ) return s;
                         break;
                     case 2 : 
-                        int LA56_31 = input.LA(1);
+                        int LA52_24 = input.LA(1);
 
                          
-                        int index56_31 = input.index();
+                        int index52_24 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 13;}
+                        if ( (LA52_24==LEFT_PAREN) ) {s = 51;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_24==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( ((LA52_24>=PACKAGE && LA52_24<=GLOBAL)||LA52_24==COMMA||(LA52_24>=QUERY && LA52_24<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_31);
+                        input.seek(index52_24);
                         if ( s>=0 ) return s;
                         break;
                     case 3 : 
-                        int LA56_29 = input.LA(1);
+                        int LA52_40 = input.LA(1);
 
                          
-                        int index56_29 = input.index();
+                        int index52_40 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_29==72) ) {s = 60;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_29==DOT) ) {s = 61;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_29==LEFT_SQUARE) ) {s = 62;}
-
-                        else if ( (LA56_29==LEFT_PAREN) ) {s = 63;}
-
-                        else if ( (LA56_29==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_29>=ATTRIBUTES && LA56_29<=ID)||LA56_29==GLOBAL||LA56_29==COMMA||(LA56_29>=QUERY && LA56_29<=RIGHT_CURLY)||(LA56_29>=RIGHT_SQUARE && LA56_29<=71)||(LA56_29>=73 && LA56_29<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_29);
+                        input.seek(index52_40);
                         if ( s>=0 ) return s;
                         break;
                     case 4 : 
-                        int LA56_27 = input.LA(1);
+                        int LA52_15 = input.LA(1);
 
                          
-                        int index56_27 = input.index();
+                        int index52_15 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_27==72) ) {s = 56;}
+                        if ( (LA52_15==LEFT_PAREN) ) {s = 38;}
 
-                        else if ( (LA56_27==DOT) ) {s = 57;}
+                        else if ( (LA52_15==ID) ) {s = 39;}
 
-                        else if ( (LA56_27==LEFT_SQUARE) ) {s = 58;}
+                        else if ( (LA52_15==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_27==LEFT_PAREN) ) {s = 59;}
+                        else if ( ((LA52_15>=PACKAGE && LA52_15<=FUNCTION)||(LA52_15>=DOT && LA52_15<=GLOBAL)||LA52_15==COMMA||(LA52_15>=QUERY && LA52_15<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( (LA56_27==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_27>=ATTRIBUTES && LA56_27<=ID)||LA56_27==GLOBAL||LA56_27==COMMA||(LA56_27>=QUERY && LA56_27<=RIGHT_CURLY)||(LA56_27>=RIGHT_SQUARE && LA56_27<=71)||(LA56_27>=73 && LA56_27<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_27);
+                        input.seek(index52_15);
                         if ( s>=0 ) return s;
                         break;
                     case 5 : 
-                        int LA56_12 = input.LA(1);
+                        int LA52_48 = input.LA(1);
 
                          
-                        int index56_12 = input.index();
+                        int index52_48 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_12==72) ) {s = 32;}
+                        if ( (LA52_48==73) ) {s = 85;}
 
-                        else if ( (LA56_12==DOT) ) {s = 33;}
+                        else if ( (LA52_48==DOT) ) {s = 86;}
 
-                        else if ( (LA56_12==LEFT_SQUARE) ) {s = 34;}
+                        else if ( (LA52_48==LEFT_SQUARE) ) {s = 87;}
 
-                        else if ( (LA56_12==LEFT_PAREN) ) {s = 35;}
+                        else if ( (LA52_48==LEFT_PAREN) ) {s = 88;}
 
-                        else if ( (LA56_12==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_48==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( ((LA56_12>=ATTRIBUTES && LA56_12<=ID)||LA56_12==GLOBAL||LA56_12==COMMA||(LA56_12>=QUERY && LA56_12<=RIGHT_CURLY)||(LA56_12>=RIGHT_SQUARE && LA56_12<=71)||(LA56_12>=73 && LA56_12<=80)) && (synpred7())) {s = 13;}
+                        else if ( ((LA52_48>=PACKAGE && LA52_48<=ID)||LA52_48==GLOBAL||LA52_48==COMMA||(LA52_48>=QUERY && LA52_48<=RIGHT_CURLY)||(LA52_48>=RIGHT_SQUARE && LA52_48<=72)||(LA52_48>=74 && LA52_48<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_12);
+                        input.seek(index52_48);
                         if ( s>=0 ) return s;
                         break;
                     case 6 : 
-                        int LA56_5 = input.LA(1);
+                        int LA52_47 = input.LA(1);
 
                          
-                        int index56_5 = input.index();
+                        int index52_47 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_5==EXISTS) ) {s = 20;}
+                        if ( (LA52_47==73) ) {s = 81;}
 
-                        else if ( (LA56_5==NOT) ) {s = 21;}
+                        else if ( (LA52_47==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_5==EVAL) ) {s = 22;}
+                        else if ( (LA52_47==DOT) ) {s = 82;}
 
-                        else if ( (LA56_5==FORALL) ) {s = 23;}
+                        else if ( (LA52_47==LEFT_PAREN) ) {s = 83;}
 
-                        else if ( (LA56_5==LEFT_PAREN) ) {s = 24;}
+                        else if ( (LA52_47==LEFT_SQUARE) ) {s = 84;}
 
-                        else if ( (LA56_5==ID) ) {s = 25;}
+                        else if ( ((LA52_47>=PACKAGE && LA52_47<=ID)||LA52_47==GLOBAL||LA52_47==COMMA||(LA52_47>=QUERY && LA52_47<=RIGHT_CURLY)||(LA52_47>=RIGHT_SQUARE && LA52_47<=72)||(LA52_47>=74 && LA52_47<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( (LA56_5==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_5>=ATTRIBUTES && LA56_5<=FUNCTION)||(LA56_5>=DOT && LA56_5<=GLOBAL)||LA56_5==COMMA||(LA56_5>=QUERY && LA56_5<=FROM)||(LA56_5>=ACCUMULATE && LA56_5<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_5);
+                        input.seek(index52_47);
                         if ( s>=0 ) return s;
                         break;
                     case 7 : 
-                        int LA56_43 = input.LA(1);
+                        int LA52_25 = input.LA(1);
 
                          
-                        int index56_43 = input.index();
+                        int index52_25 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( ((LA56_43>=ATTRIBUTES && LA56_43<=ID)||LA56_43==GLOBAL||(LA56_43>=QUERY && LA56_43<=WHEN)||LA56_43==ENABLED||LA56_43==SALIENCE||(LA56_43>=DURATION && LA56_43<=DIALECT)||LA56_43==FROM||(LA56_43>=INIT && LA56_43<=RESULT)||(LA56_43>=CONTAINS && LA56_43<=IN)||LA56_43==THEN) ) {s = 79;}
+                        if ( (LA52_25==73) ) {s = 52;}
 
-                        else if ( (LA56_43==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_25==DOT) ) {s = 53;}
 
-                        else if ( (LA56_43==DOT||LA56_43==COMMA||(LA56_43>=DATE_EFFECTIVE && LA56_43<=DATE_EXPIRES)||LA56_43==BOOL||(LA56_43>=INT && LA56_43<=AGENDA_GROUP)||(LA56_43>=LOCK_ON_ACTIVE && LA56_43<=DOUBLE_AMPER)||(LA56_43>=EXISTS && LA56_43<=ACCUMULATE)||LA56_43==COLLECT||(LA56_43>=FLOAT && LA56_43<=RIGHT_SQUARE)||(LA56_43>=EOL && LA56_43<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_25==LEFT_SQUARE) ) {s = 54;}
 
-                        else if ( (LA56_43==LEFT_PAREN) && (synpred7())) {s = 67;}
+                        else if ( (LA52_25==LEFT_PAREN) ) {s = 55;}
 
+                        else if ( (LA52_25==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( ((LA52_25>=PACKAGE && LA52_25<=ID)||LA52_25==GLOBAL||LA52_25==COMMA||(LA52_25>=QUERY && LA52_25<=RIGHT_CURLY)||(LA52_25>=RIGHT_SQUARE && LA52_25<=72)||(LA52_25>=74 && LA52_25<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_43);
+                        input.seek(index52_25);
                         if ( s>=0 ) return s;
                         break;
                     case 8 : 
-                        int LA56_33 = input.LA(1);
+                        int LA52_36 = input.LA(1);
 
                          
-                        int index56_33 = input.index();
+                        int index52_36 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( ((LA56_33>=ATTRIBUTES && LA56_33<=ID)||LA56_33==GLOBAL||(LA56_33>=QUERY && LA56_33<=WHEN)||LA56_33==ENABLED||LA56_33==SALIENCE||(LA56_33>=DURATION && LA56_33<=DIALECT)||LA56_33==FROM||(LA56_33>=INIT && LA56_33<=RESULT)||(LA56_33>=CONTAINS && LA56_33<=IN)||LA56_33==THEN) ) {s = 66;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_33==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_33==DOT||LA56_33==COMMA||(LA56_33>=DATE_EFFECTIVE && LA56_33<=DATE_EXPIRES)||LA56_33==BOOL||(LA56_33>=INT && LA56_33<=AGENDA_GROUP)||(LA56_33>=LOCK_ON_ACTIVE && LA56_33<=DOUBLE_AMPER)||(LA56_33>=EXISTS && LA56_33<=ACCUMULATE)||LA56_33==COLLECT||(LA56_33>=FLOAT && LA56_33<=RIGHT_SQUARE)||(LA56_33>=EOL && LA56_33<=80)) && (synpred7())) {s = 13;}
-
-                        else if ( (LA56_33==LEFT_PAREN) && (synpred7())) {s = 67;}
-
                          
-                        input.seek(index56_33);
+                        input.seek(index52_36);
                         if ( s>=0 ) return s;
                         break;
                     case 9 : 
-                        int LA56_57 = input.LA(1);
+                        int LA52_21 = input.LA(1);
 
                          
-                        int index56_57 = input.index();
+                        int index52_21 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( ((LA56_57>=ATTRIBUTES && LA56_57<=ID)||LA56_57==GLOBAL||(LA56_57>=QUERY && LA56_57<=WHEN)||LA56_57==ENABLED||LA56_57==SALIENCE||(LA56_57>=DURATION && LA56_57<=DIALECT)||LA56_57==FROM||(LA56_57>=INIT && LA56_57<=RESULT)||(LA56_57>=CONTAINS && LA56_57<=IN)||LA56_57==THEN) ) {s = 95;}
+                        if ( (synpred7()) ) {s = 13;}
 
-                        else if ( (LA56_57==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_57==DOT||LA56_57==COMMA||(LA56_57>=DATE_EFFECTIVE && LA56_57<=DATE_EXPIRES)||LA56_57==BOOL||(LA56_57>=INT && LA56_57<=AGENDA_GROUP)||(LA56_57>=LOCK_ON_ACTIVE && LA56_57<=DOUBLE_AMPER)||(LA56_57>=EXISTS && LA56_57<=ACCUMULATE)||LA56_57==COLLECT||(LA56_57>=FLOAT && LA56_57<=RIGHT_SQUARE)||(LA56_57>=EOL && LA56_57<=80)) && (synpred7())) {s = 13;}
-
-                        else if ( (LA56_57==LEFT_PAREN) && (synpred7())) {s = 67;}
-
                          
-                        input.seek(index56_57);
+                        input.seek(index52_21);
                         if ( s>=0 ) return s;
                         break;
                     case 10 : 
-                        int LA56_61 = input.LA(1);
+                        int LA52_35 = input.LA(1);
 
                          
-                        int index56_61 = input.index();
+                        int index52_35 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( ((LA56_61>=ATTRIBUTES && LA56_61<=ID)||LA56_61==GLOBAL||(LA56_61>=QUERY && LA56_61<=WHEN)||LA56_61==ENABLED||LA56_61==SALIENCE||(LA56_61>=DURATION && LA56_61<=DIALECT)||LA56_61==FROM||(LA56_61>=INIT && LA56_61<=RESULT)||(LA56_61>=CONTAINS && LA56_61<=IN)||LA56_61==THEN) ) {s = 99;}
+                        if ( (LA52_35==RIGHT_SQUARE) ) {s = 68;}
 
-                        else if ( (LA56_61==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_35==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_61==DOT||LA56_61==COMMA||(LA56_61>=DATE_EFFECTIVE && LA56_61<=DATE_EXPIRES)||LA56_61==BOOL||(LA56_61>=INT && LA56_61<=AGENDA_GROUP)||(LA56_61>=LOCK_ON_ACTIVE && LA56_61<=DOUBLE_AMPER)||(LA56_61>=EXISTS && LA56_61<=ACCUMULATE)||LA56_61==COLLECT||(LA56_61>=FLOAT && LA56_61<=RIGHT_SQUARE)||(LA56_61>=EOL && LA56_61<=80)) && (synpred7())) {s = 13;}
+                        else if ( ((LA52_35>=PACKAGE && LA52_35<=GLOBAL)||LA52_35==COMMA||(LA52_35>=QUERY && LA52_35<=LEFT_SQUARE)||(LA52_35>=THEN && LA52_35<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( (LA56_61==LEFT_PAREN) && (synpred7())) {s = 67;}
+                        else if ( (LA52_35==LEFT_PAREN) && (synpred7())) {s = 67;}
 
                          
-                        input.seek(index56_61);
+                        input.seek(index52_35);
                         if ( s>=0 ) return s;
                         break;
                     case 11 : 
-                        int LA56_0 = input.LA(1);
+                        int LA52_5 = input.LA(1);
 
                          
-                        int index56_0 = input.index();
+                        int index52_5 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_0==LEFT_SQUARE) && (synpred6())) {s = 1;}
+                        if ( (LA52_5==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_0==LEFT_PAREN) ) {s = 2;}
+                        else if ( (LA52_5==EXISTS) ) {s = 20;}
 
-                        else if ( ((LA56_0>=ID && LA56_0<=DOT)||(LA56_0>=COMMA && LA56_0<=RIGHT_PAREN)||LA56_0==END||(LA56_0>=OR && LA56_0<=DOUBLE_AMPER)||(LA56_0>=EXISTS && LA56_0<=FORALL)||LA56_0==INIT||LA56_0==THEN||LA56_0==71) ) {s = 3;}
+                        else if ( (LA52_5==LEFT_PAREN) ) {s = 21;}
 
+                        else if ( (LA52_5==NOT) ) {s = 22;}
+
+                        else if ( (LA52_5==EVAL) ) {s = 23;}
+
+                        else if ( (LA52_5==FORALL) ) {s = 24;}
+
+                        else if ( (LA52_5==ID) ) {s = 25;}
+
+                        else if ( ((LA52_5>=PACKAGE && LA52_5<=FUNCTION)||(LA52_5>=DOT && LA52_5<=GLOBAL)||LA52_5==COMMA||(LA52_5>=QUERY && LA52_5<=FROM)||(LA52_5>=ACCUMULATE && LA52_5<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_0);
+                        input.seek(index52_5);
                         if ( s>=0 ) return s;
                         break;
                     case 12 : 
-                        int LA56_36 = input.LA(1);
+                        int LA52_58 = input.LA(1);
 
                          
-                        int index56_36 = input.index();
+                        int index52_58 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( (LA52_58==RIGHT_SQUARE) ) {s = 96;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_58==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( ((LA52_58>=PACKAGE && LA52_58<=GLOBAL)||LA52_58==COMMA||(LA52_58>=QUERY && LA52_58<=LEFT_SQUARE)||(LA52_58>=THEN && LA52_58<=80)) && (synpred7())) {s = 13;}
+
+                        else if ( (LA52_58==LEFT_PAREN) && (synpred7())) {s = 67;}
+
                          
-                        input.seek(index56_36);
+                        input.seek(index52_58);
                         if ( s>=0 ) return s;
                         break;
                     case 13 : 
-                        int LA56_64 = input.LA(1);
+                        int LA52_62 = input.LA(1);
 
                          
-                        int index56_64 = input.index();
+                        int index52_62 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_64==DOT) ) {s = 101;}
+                        if ( (LA52_62==RIGHT_SQUARE) ) {s = 100;}
 
-                        else if ( (LA56_64==LEFT_SQUARE) ) {s = 102;}
+                        else if ( (LA52_62==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_64==LEFT_PAREN) ) {s = 103;}
+                        else if ( ((LA52_62>=PACKAGE && LA52_62<=GLOBAL)||LA52_62==COMMA||(LA52_62>=QUERY && LA52_62<=LEFT_SQUARE)||(LA52_62>=THEN && LA52_62<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( (LA56_64==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_62==LEFT_PAREN) && (synpred7())) {s = 67;}
 
-                        else if ( ((LA56_64>=ATTRIBUTES && LA56_64<=ID)||LA56_64==GLOBAL||LA56_64==COMMA||(LA56_64>=QUERY && LA56_64<=RIGHT_CURLY)||(LA56_64>=RIGHT_SQUARE && LA56_64<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_64);
+                        input.seek(index52_62);
                         if ( s>=0 ) return s;
                         break;
                     case 14 : 
-                        int LA56_23 = input.LA(1);
+                        int LA52_64 = input.LA(1);
 
                          
-                        int index56_23 = input.index();
+                        int index52_64 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_23==LEFT_PAREN) ) {s = 51;}
+                        if ( (LA52_64==DOT) ) {s = 101;}
 
-                        else if ( (LA56_23==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_64==LEFT_SQUARE) ) {s = 102;}
 
-                        else if ( ((LA56_23>=ATTRIBUTES && LA56_23<=GLOBAL)||LA56_23==COMMA||(LA56_23>=QUERY && LA56_23<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_64==LEFT_PAREN) ) {s = 103;}
 
+                        else if ( (LA52_64==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( ((LA52_64>=PACKAGE && LA52_64<=ID)||LA52_64==GLOBAL||LA52_64==COMMA||(LA52_64>=QUERY && LA52_64<=RIGHT_CURLY)||(LA52_64>=RIGHT_SQUARE && LA52_64<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_23);
+                        input.seek(index52_64);
                         if ( s>=0 ) return s;
                         break;
                     case 15 : 
-                        int LA56_35 = input.LA(1);
+                        int LA52_65 = input.LA(1);
 
                          
-                        int index56_35 = input.index();
+                        int index52_65 = input.index();
                         input.rewind();
                         s = -1;
                         if ( (synpred7()) ) {s = 67;}
@@ -7918,404 +7845,398 @@
                         else if ( (true) ) {s = 3;}
 
                          
-                        input.seek(index56_35);
+                        input.seek(index52_65);
                         if ( s>=0 ) return s;
                         break;
                     case 16 : 
-                        int LA56_59 = input.LA(1);
+                        int LA52_2 = input.LA(1);
 
                          
-                        int index56_59 = input.index();
+                        int index52_2 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( (LA52_2==AND) ) {s = 4;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_2==OR) ) {s = 5;}
 
+                        else if ( (LA52_2==EXISTS) ) {s = 6;}
+
+                        else if ( (LA52_2==LEFT_PAREN) ) {s = 7;}
+
+                        else if ( (LA52_2==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( (LA52_2==NOT) ) {s = 9;}
+
+                        else if ( (LA52_2==EVAL) ) {s = 10;}
+
+                        else if ( (LA52_2==FORALL) ) {s = 11;}
+
+                        else if ( (LA52_2==ID) ) {s = 12;}
+
+                        else if ( ((LA52_2>=PACKAGE && LA52_2<=FUNCTION)||(LA52_2>=DOT && LA52_2<=GLOBAL)||LA52_2==COMMA||(LA52_2>=QUERY && LA52_2<=LOCK_ON_ACTIVE)||LA52_2==DOUBLE_PIPE||(LA52_2>=DOUBLE_AMPER && LA52_2<=FROM)||(LA52_2>=ACCUMULATE && LA52_2<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_59);
+                        input.seek(index52_2);
                         if ( s>=0 ) return s;
                         break;
                     case 17 : 
-                        int LA56_22 = input.LA(1);
+                        int LA52_49 = input.LA(1);
 
                          
-                        int index56_22 = input.index();
+                        int index52_49 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_22==LEFT_PAREN) ) {s = 50;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_22==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( ((LA56_22>=ATTRIBUTES && LA56_22<=GLOBAL)||LA56_22==COMMA||(LA56_22>=QUERY && LA56_22<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_22);
+                        input.seek(index52_49);
                         if ( s>=0 ) return s;
                         break;
                     case 18 : 
-                        int LA56_47 = input.LA(1);
+                        int LA52_0 = input.LA(1);
 
                          
-                        int index56_47 = input.index();
+                        int index52_0 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_47==72) ) {s = 81;}
+                        if ( (LA52_0==LEFT_SQUARE) && (synpred6())) {s = 1;}
 
-                        else if ( (LA56_47==DOT) ) {s = 82;}
+                        else if ( (LA52_0==LEFT_PAREN) ) {s = 2;}
 
-                        else if ( (LA56_47==LEFT_SQUARE) ) {s = 83;}
+                        else if ( ((LA52_0>=ID && LA52_0<=DOT)||(LA52_0>=COMMA && LA52_0<=RIGHT_PAREN)||LA52_0==END||(LA52_0>=OR && LA52_0<=DOUBLE_AMPER)||(LA52_0>=EXISTS && LA52_0<=FORALL)||LA52_0==INIT||LA52_0==THEN||LA52_0==71) ) {s = 3;}
 
-                        else if ( (LA56_47==LEFT_PAREN) ) {s = 84;}
-
-                        else if ( (LA56_47==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_47>=ATTRIBUTES && LA56_47<=ID)||LA56_47==GLOBAL||LA56_47==COMMA||(LA56_47>=QUERY && LA56_47<=RIGHT_CURLY)||(LA56_47>=RIGHT_SQUARE && LA56_47<=71)||(LA56_47>=73 && LA56_47<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_47);
+                        input.seek(index52_0);
                         if ( s>=0 ) return s;
                         break;
                     case 19 : 
-                        int LA56_25 = input.LA(1);
+                        int LA52_4 = input.LA(1);
 
                          
-                        int index56_25 = input.index();
+                        int index52_4 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_25==72) ) {s = 52;}
+                        if ( (LA52_4==EXISTS) ) {s = 14;}
 
-                        else if ( (LA56_25==DOT) ) {s = 53;}
+                        else if ( (LA52_4==NOT) ) {s = 15;}
 
-                        else if ( (LA56_25==LEFT_SQUARE) ) {s = 54;}
+                        else if ( (LA52_4==EVAL) ) {s = 16;}
 
-                        else if ( (LA56_25==LEFT_PAREN) ) {s = 55;}
+                        else if ( (LA52_4==FORALL) ) {s = 17;}
 
-                        else if ( (LA56_25==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_4==LEFT_PAREN) ) {s = 18;}
 
-                        else if ( ((LA56_25>=ATTRIBUTES && LA56_25<=ID)||LA56_25==GLOBAL||LA56_25==COMMA||(LA56_25>=QUERY && LA56_25<=RIGHT_CURLY)||(LA56_25>=RIGHT_SQUARE && LA56_25<=71)||(LA56_25>=73 && LA56_25<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_4==ID) ) {s = 19;}
 
+                        else if ( (LA52_4==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( ((LA52_4>=PACKAGE && LA52_4<=FUNCTION)||(LA52_4>=DOT && LA52_4<=GLOBAL)||LA52_4==COMMA||(LA52_4>=QUERY && LA52_4<=FROM)||(LA52_4>=ACCUMULATE && LA52_4<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_25);
+                        input.seek(index52_4);
                         if ( s>=0 ) return s;
                         break;
                     case 20 : 
-                        int LA56_49 = input.LA(1);
+                        int LA52_6 = input.LA(1);
 
                          
-                        int index56_49 = input.index();
+                        int index52_6 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_49==72) ) {s = 85;}
+                        if ( (LA52_6==LEFT_PAREN) ) {s = 26;}
 
-                        else if ( (LA56_49==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_6==ID) ) {s = 27;}
 
-                        else if ( (LA56_49==DOT) ) {s = 86;}
+                        else if ( (LA52_6==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_49==LEFT_PAREN) ) {s = 87;}
+                        else if ( ((LA52_6>=PACKAGE && LA52_6<=FUNCTION)||(LA52_6>=DOT && LA52_6<=GLOBAL)||LA52_6==COMMA||(LA52_6>=QUERY && LA52_6<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( (LA56_49==LEFT_SQUARE) ) {s = 88;}
-
-                        else if ( ((LA56_49>=ATTRIBUTES && LA56_49<=ID)||LA56_49==GLOBAL||LA56_49==COMMA||(LA56_49>=QUERY && LA56_49<=RIGHT_CURLY)||(LA56_49>=RIGHT_SQUARE && LA56_49<=71)||(LA56_49>=73 && LA56_49<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_49);
+                        input.seek(index52_6);
                         if ( s>=0 ) return s;
                         break;
                     case 21 : 
-                        int LA56_4 = input.LA(1);
+                        int LA52_39 = input.LA(1);
 
                          
-                        int index56_4 = input.index();
+                        int index52_39 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_4==LEFT_PAREN) ) {s = 14;}
+                        if ( (LA52_39==73) ) {s = 73;}
 
-                        else if ( (LA56_4==EXISTS) ) {s = 15;}
+                        else if ( (LA52_39==DOT) ) {s = 74;}
 
-                        else if ( (LA56_4==NOT) ) {s = 16;}
+                        else if ( (LA52_39==LEFT_SQUARE) ) {s = 75;}
 
-                        else if ( (LA56_4==EVAL) ) {s = 17;}
+                        else if ( (LA52_39==LEFT_PAREN) ) {s = 76;}
 
-                        else if ( (LA56_4==FORALL) ) {s = 18;}
+                        else if ( (LA52_39==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_4==ID) ) {s = 19;}
+                        else if ( ((LA52_39>=PACKAGE && LA52_39<=ID)||LA52_39==GLOBAL||LA52_39==COMMA||(LA52_39>=QUERY && LA52_39<=RIGHT_CURLY)||(LA52_39>=RIGHT_SQUARE && LA52_39<=72)||(LA52_39>=74 && LA52_39<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( (LA56_4==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_4>=ATTRIBUTES && LA56_4<=FUNCTION)||(LA56_4>=DOT && LA56_4<=GLOBAL)||LA56_4==COMMA||(LA56_4>=QUERY && LA56_4<=FROM)||(LA56_4>=ACCUMULATE && LA56_4<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_4);
+                        input.seek(index52_39);
                         if ( s>=0 ) return s;
                         break;
                     case 22 : 
-                        int LA56_28 = input.LA(1);
+                        int LA52_37 = input.LA(1);
 
                          
-                        int index56_28 = input.index();
+                        int index52_37 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 13;}
+                        if ( (LA52_37==73) ) {s = 69;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_37==DOT) ) {s = 70;}
 
+                        else if ( (LA52_37==LEFT_SQUARE) ) {s = 71;}
+
+                        else if ( (LA52_37==LEFT_PAREN) ) {s = 72;}
+
+                        else if ( (LA52_37==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( ((LA52_37>=PACKAGE && LA52_37<=ID)||LA52_37==GLOBAL||LA52_37==COMMA||(LA52_37>=QUERY && LA52_37<=RIGHT_CURLY)||(LA52_37>=RIGHT_SQUARE && LA52_37<=72)||(LA52_37>=74 && LA52_37<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_28);
+                        input.seek(index52_37);
                         if ( s>=0 ) return s;
                         break;
                     case 23 : 
-                        int LA56_26 = input.LA(1);
+                        int LA52_19 = input.LA(1);
 
                          
-                        int index56_26 = input.index();
+                        int index52_19 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 13;}
+                        if ( (LA52_19==73) ) {s = 42;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_19==DOT) ) {s = 43;}
 
+                        else if ( (LA52_19==LEFT_SQUARE) ) {s = 44;}
+
+                        else if ( (LA52_19==LEFT_PAREN) ) {s = 45;}
+
+                        else if ( (LA52_19==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( ((LA52_19>=PACKAGE && LA52_19<=ID)||LA52_19==GLOBAL||LA52_19==COMMA||(LA52_19>=QUERY && LA52_19<=RIGHT_CURLY)||(LA52_19>=RIGHT_SQUARE && LA52_19<=72)||(LA52_19>=74 && LA52_19<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_26);
+                        input.seek(index52_19);
                         if ( s>=0 ) return s;
                         break;
                     case 24 : 
-                        int LA56_39 = input.LA(1);
+                        int LA52_55 = input.LA(1);
 
                          
-                        int index56_39 = input.index();
+                        int index52_55 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_39==72) ) {s = 73;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_39==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_39==DOT) ) {s = 74;}
-
-                        else if ( (LA56_39==LEFT_PAREN) ) {s = 75;}
-
-                        else if ( (LA56_39==LEFT_SQUARE) ) {s = 76;}
-
-                        else if ( ((LA56_39>=ATTRIBUTES && LA56_39<=ID)||LA56_39==GLOBAL||LA56_39==COMMA||(LA56_39>=QUERY && LA56_39<=RIGHT_CURLY)||(LA56_39>=RIGHT_SQUARE && LA56_39<=71)||(LA56_39>=73 && LA56_39<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_39);
+                        input.seek(index52_55);
                         if ( s>=0 ) return s;
                         break;
                     case 25 : 
-                        int LA56_37 = input.LA(1);
+                        int LA52_66 = input.LA(1);
 
                          
-                        int index56_37 = input.index();
+                        int index52_66 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_37==72) ) {s = 69;}
+                        if ( (LA52_66==LEFT_SQUARE) ) {s = 35;}
 
-                        else if ( (LA56_37==DOT) ) {s = 70;}
+                        else if ( (LA52_66==LEFT_PAREN) ) {s = 34;}
 
-                        else if ( (LA56_37==LEFT_SQUARE) ) {s = 71;}
+                        else if ( (LA52_66==DOT) ) {s = 33;}
 
-                        else if ( (LA56_37==LEFT_PAREN) ) {s = 72;}
+                        else if ( (LA52_66==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_37==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( ((LA52_66>=PACKAGE && LA52_66<=ID)||LA52_66==GLOBAL||LA52_66==COMMA||(LA52_66>=QUERY && LA52_66<=RIGHT_CURLY)||(LA52_66>=RIGHT_SQUARE && LA52_66<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( ((LA56_37>=ATTRIBUTES && LA56_37<=ID)||LA56_37==GLOBAL||LA56_37==COMMA||(LA56_37>=QUERY && LA56_37<=RIGHT_CURLY)||(LA56_37>=RIGHT_SQUARE && LA56_37<=71)||(LA56_37>=73 && LA56_37<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_37);
+                        input.seek(index52_66);
                         if ( s>=0 ) return s;
                         break;
                     case 26 : 
-                        int LA56_19 = input.LA(1);
+                        int LA52_28 = input.LA(1);
 
                          
-                        int index56_19 = input.index();
+                        int index52_28 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_19==72) ) {s = 42;}
+                        if ( (synpred7()) ) {s = 13;}
 
-                        else if ( (LA56_19==DOT) ) {s = 43;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_19==LEFT_SQUARE) ) {s = 44;}
-
-                        else if ( (LA56_19==LEFT_PAREN) ) {s = 45;}
-
-                        else if ( (LA56_19==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_19>=ATTRIBUTES && LA56_19<=ID)||LA56_19==GLOBAL||LA56_19==COMMA||(LA56_19>=QUERY && LA56_19<=RIGHT_CURLY)||(LA56_19>=RIGHT_SQUARE && LA56_19<=71)||(LA56_19>=73 && LA56_19<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_19);
+                        input.seek(index52_28);
                         if ( s>=0 ) return s;
                         break;
                     case 27 : 
-                        int LA56_38 = input.LA(1);
+                        int LA52_16 = input.LA(1);
 
                          
-                        int index56_38 = input.index();
+                        int index52_16 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( (LA52_16==LEFT_PAREN) ) {s = 40;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_16==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( ((LA52_16>=PACKAGE && LA52_16<=GLOBAL)||LA52_16==COMMA||(LA52_16>=QUERY && LA52_16<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_38);
+                        input.seek(index52_16);
                         if ( s>=0 ) return s;
                         break;
                     case 28 : 
-                        int LA56_2 = input.LA(1);
+                        int LA52_18 = input.LA(1);
 
                          
-                        int index56_2 = input.index();
+                        int index52_18 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_2==OR) ) {s = 4;}
+                        if ( (synpred7()) ) {s = 13;}
 
-                        else if ( (LA56_2==AND) ) {s = 5;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_2==EXISTS) ) {s = 6;}
-
-                        else if ( (LA56_2==LEFT_PAREN) ) {s = 7;}
-
-                        else if ( (LA56_2==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( (LA56_2==NOT) ) {s = 9;}
-
-                        else if ( (LA56_2==EVAL) ) {s = 10;}
-
-                        else if ( (LA56_2==FORALL) ) {s = 11;}
-
-                        else if ( (LA56_2==ID) ) {s = 12;}
-
-                        else if ( ((LA56_2>=ATTRIBUTES && LA56_2<=FUNCTION)||(LA56_2>=DOT && LA56_2<=GLOBAL)||LA56_2==COMMA||(LA56_2>=QUERY && LA56_2<=LOCK_ON_ACTIVE)||LA56_2==DOUBLE_PIPE||(LA56_2>=DOUBLE_AMPER && LA56_2<=FROM)||(LA56_2>=ACCUMULATE && LA56_2<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_2);
+                        input.seek(index52_18);
                         if ( s>=0 ) return s;
                         break;
                     case 29 : 
-                        int LA56_11 = input.LA(1);
+                        int LA52_30 = input.LA(1);
 
                          
-                        int index56_11 = input.index();
+                        int index52_30 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_11==LEFT_PAREN) ) {s = 31;}
+                        if ( (synpred7()) ) {s = 13;}
 
-                        else if ( (LA56_11==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( ((LA56_11>=ATTRIBUTES && LA56_11<=GLOBAL)||LA56_11==COMMA||(LA56_11>=QUERY && LA56_11<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_11);
+                        input.seek(index52_30);
                         if ( s>=0 ) return s;
                         break;
                     case 30 : 
-                        int LA56_17 = input.LA(1);
+                        int LA52_10 = input.LA(1);
 
                          
-                        int index56_17 = input.index();
+                        int index52_10 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_17==LEFT_PAREN) ) {s = 40;}
+                        if ( (LA52_10==LEFT_PAREN) ) {s = 30;}
 
-                        else if ( (LA56_17==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_10==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( ((LA56_17>=ATTRIBUTES && LA56_17<=GLOBAL)||LA56_17==COMMA||(LA56_17>=QUERY && LA56_17<=80)) && (synpred7())) {s = 13;}
+                        else if ( ((LA52_10>=PACKAGE && LA52_10<=GLOBAL)||LA52_10==COMMA||(LA52_10>=QUERY && LA52_10<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_17);
+                        input.seek(index52_10);
                         if ( s>=0 ) return s;
                         break;
                     case 31 : 
-                        int LA56_24 = input.LA(1);
+                        int LA52_54 = input.LA(1);
 
                          
-                        int index56_24 = input.index();
+                        int index52_54 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 13;}
+                        if ( (LA52_54==RIGHT_SQUARE) ) {s = 92;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_54==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( ((LA52_54>=PACKAGE && LA52_54<=GLOBAL)||LA52_54==COMMA||(LA52_54>=QUERY && LA52_54<=LEFT_SQUARE)||(LA52_54>=THEN && LA52_54<=80)) && (synpred7())) {s = 13;}
+
+                        else if ( (LA52_54==LEFT_PAREN) && (synpred7())) {s = 67;}
+
                          
-                        input.seek(index56_24);
+                        input.seek(index52_54);
                         if ( s>=0 ) return s;
                         break;
                     case 32 : 
-                        int LA56_6 = input.LA(1);
+                        int LA52_33 = input.LA(1);
 
                          
-                        int index56_6 = input.index();
+                        int index52_33 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_6==LEFT_PAREN) ) {s = 26;}
+                        if ( (LA52_33==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_6==ID) ) {s = 27;}
+                        else if ( ((LA52_33>=PACKAGE && LA52_33<=ID)||LA52_33==GLOBAL||(LA52_33>=QUERY && LA52_33<=ATTRIBUTES)||LA52_33==ENABLED||LA52_33==SALIENCE||(LA52_33>=DURATION && LA52_33<=DIALECT)||LA52_33==FROM||(LA52_33>=INIT && LA52_33<=RESULT)||(LA52_33>=CONTAINS && LA52_33<=IN)||LA52_33==THEN) ) {s = 66;}
 
-                        else if ( (LA56_6==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_33==LEFT_PAREN) && (synpred7())) {s = 67;}
 
-                        else if ( ((LA56_6>=ATTRIBUTES && LA56_6<=FUNCTION)||(LA56_6>=DOT && LA56_6<=GLOBAL)||LA56_6==COMMA||(LA56_6>=QUERY && LA56_6<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_33==DOT||LA52_33==COMMA||(LA52_33>=DATE_EFFECTIVE && LA52_33<=DATE_EXPIRES)||LA52_33==BOOL||(LA52_33>=INT && LA52_33<=AGENDA_GROUP)||(LA52_33>=LOCK_ON_ACTIVE && LA52_33<=DOUBLE_AMPER)||(LA52_33>=EXISTS && LA52_33<=ACCUMULATE)||LA52_33==COLLECT||(LA52_33>=FLOAT && LA52_33<=RIGHT_SQUARE)||(LA52_33>=EOL && LA52_33<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_6);
+                        input.seek(index52_33);
                         if ( s>=0 ) return s;
                         break;
                     case 33 : 
-                        int LA56_40 = input.LA(1);
+                        int LA52_57 = input.LA(1);
 
                          
-                        int index56_40 = input.index();
+                        int index52_57 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( ((LA52_57>=PACKAGE && LA52_57<=ID)||LA52_57==GLOBAL||(LA52_57>=QUERY && LA52_57<=ATTRIBUTES)||LA52_57==ENABLED||LA52_57==SALIENCE||(LA52_57>=DURATION && LA52_57<=DIALECT)||LA52_57==FROM||(LA52_57>=INIT && LA52_57<=RESULT)||(LA52_57>=CONTAINS && LA52_57<=IN)||LA52_57==THEN) ) {s = 95;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_57==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( (LA52_57==DOT||LA52_57==COMMA||(LA52_57>=DATE_EFFECTIVE && LA52_57<=DATE_EXPIRES)||LA52_57==BOOL||(LA52_57>=INT && LA52_57<=AGENDA_GROUP)||(LA52_57>=LOCK_ON_ACTIVE && LA52_57<=DOUBLE_AMPER)||(LA52_57>=EXISTS && LA52_57<=ACCUMULATE)||LA52_57==COLLECT||(LA52_57>=FLOAT && LA52_57<=RIGHT_SQUARE)||(LA52_57>=EOL && LA52_57<=80)) && (synpred7())) {s = 13;}
+
+                        else if ( (LA52_57==LEFT_PAREN) && (synpred7())) {s = 67;}
+
                          
-                        input.seek(index56_40);
+                        input.seek(index52_57);
                         if ( s>=0 ) return s;
                         break;
                     case 34 : 
-                        int LA56_51 = input.LA(1);
+                        int LA52_61 = input.LA(1);
 
                          
-                        int index56_51 = input.index();
+                        int index52_61 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( ((LA52_61>=PACKAGE && LA52_61<=ID)||LA52_61==GLOBAL||(LA52_61>=QUERY && LA52_61<=ATTRIBUTES)||LA52_61==ENABLED||LA52_61==SALIENCE||(LA52_61>=DURATION && LA52_61<=DIALECT)||LA52_61==FROM||(LA52_61>=INIT && LA52_61<=RESULT)||(LA52_61>=CONTAINS && LA52_61<=IN)||LA52_61==THEN) ) {s = 99;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_61==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( (LA52_61==DOT||LA52_61==COMMA||(LA52_61>=DATE_EFFECTIVE && LA52_61<=DATE_EXPIRES)||LA52_61==BOOL||(LA52_61>=INT && LA52_61<=AGENDA_GROUP)||(LA52_61>=LOCK_ON_ACTIVE && LA52_61<=DOUBLE_AMPER)||(LA52_61>=EXISTS && LA52_61<=ACCUMULATE)||LA52_61==COLLECT||(LA52_61>=FLOAT && LA52_61<=RIGHT_SQUARE)||(LA52_61>=EOL && LA52_61<=80)) && (synpred7())) {s = 13;}
+
+                        else if ( (LA52_61==LEFT_PAREN) && (synpred7())) {s = 67;}
+
                          
-                        input.seek(index56_51);
+                        input.seek(index52_61);
                         if ( s>=0 ) return s;
                         break;
                     case 35 : 
-                        int LA56_21 = input.LA(1);
+                        int LA52_46 = input.LA(1);
 
                          
-                        int index56_21 = input.index();
+                        int index52_46 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_21==LEFT_PAREN) ) {s = 48;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_21==ID) ) {s = 49;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_21==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_21>=ATTRIBUTES && LA56_21<=FUNCTION)||(LA56_21>=DOT && LA56_21<=GLOBAL)||LA56_21==COMMA||(LA56_21>=QUERY && LA56_21<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_21);
+                        input.seek(index52_46);
                         if ( s>=0 ) return s;
                         break;
                     case 36 : 
-                        int LA56_48 = input.LA(1);
+                        int LA52_50 = input.LA(1);
 
                          
-                        int index56_48 = input.index();
+                        int index52_50 = input.index();
                         input.rewind();
                         s = -1;
                         if ( (synpred7()) ) {s = 67;}
@@ -8323,14 +8244,14 @@
                         else if ( (true) ) {s = 3;}
 
                          
-                        input.seek(index56_48);
+                        input.seek(index52_50);
                         if ( s>=0 ) return s;
                         break;
                     case 37 : 
-                        int LA56_55 = input.LA(1);
+                        int LA52_45 = input.LA(1);
 
                          
-                        int index56_55 = input.index();
+                        int index52_45 = input.index();
                         input.rewind();
                         s = -1;
                         if ( (synpred7()) ) {s = 67;}
@@ -8338,440 +8259,448 @@
                         else if ( (true) ) {s = 3;}
 
                          
-                        input.seek(index56_55);
+                        input.seek(index52_45);
                         if ( s>=0 ) return s;
                         break;
                     case 38 : 
-                        int LA56_34 = input.LA(1);
+                        int LA52_32 = input.LA(1);
 
                          
-                        int index56_34 = input.index();
+                        int index52_32 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_34==RIGHT_SQUARE) ) {s = 68;}
+                        if ( (LA52_32==ID) ) {s = 64;}
 
-                        else if ( (LA56_34==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_32==LEFT_PAREN) ) {s = 65;}
 
-                        else if ( ((LA56_34>=ATTRIBUTES && LA56_34<=GLOBAL)||LA56_34==COMMA||(LA56_34>=QUERY && LA56_34<=LEFT_SQUARE)||(LA56_34>=THEN && LA56_34<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_32==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_34==LEFT_PAREN) && (synpred7())) {s = 67;}
+                        else if ( ((LA52_32>=PACKAGE && LA52_32<=FUNCTION)||(LA52_32>=DOT && LA52_32<=GLOBAL)||LA52_32==COMMA||(LA52_32>=QUERY && LA52_32<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_34);
+                        input.seek(index52_32);
                         if ( s>=0 ) return s;
                         break;
                     case 39 : 
-                        int LA56_58 = input.LA(1);
+                        int LA52_56 = input.LA(1);
 
                          
-                        int index56_58 = input.index();
+                        int index52_56 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_58==RIGHT_SQUARE) ) {s = 96;}
+                        if ( (LA52_56==ID) ) {s = 93;}
 
-                        else if ( (LA56_58==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_56==LEFT_PAREN) ) {s = 94;}
 
-                        else if ( ((LA56_58>=ATTRIBUTES && LA56_58<=GLOBAL)||LA56_58==COMMA||(LA56_58>=QUERY && LA56_58<=LEFT_SQUARE)||(LA56_58>=THEN && LA56_58<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_56==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_58==LEFT_PAREN) && (synpred7())) {s = 67;}
+                        else if ( ((LA52_56>=PACKAGE && LA52_56<=FUNCTION)||(LA52_56>=DOT && LA52_56<=GLOBAL)||LA52_56==COMMA||(LA52_56>=QUERY && LA52_56<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_58);
+                        input.seek(index52_56);
                         if ( s>=0 ) return s;
                         break;
                     case 40 : 
-                        int LA56_62 = input.LA(1);
+                        int LA52_60 = input.LA(1);
 
                          
-                        int index56_62 = input.index();
+                        int index52_60 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_62==RIGHT_SQUARE) ) {s = 100;}
+                        if ( (LA52_60==ID) ) {s = 97;}
 
-                        else if ( (LA56_62==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_60==LEFT_PAREN) ) {s = 98;}
 
-                        else if ( ((LA56_62>=ATTRIBUTES && LA56_62<=GLOBAL)||LA56_62==COMMA||(LA56_62>=QUERY && LA56_62<=LEFT_SQUARE)||(LA56_62>=THEN && LA56_62<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_60==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_62==LEFT_PAREN) && (synpred7())) {s = 67;}
+                        else if ( ((LA52_60>=PACKAGE && LA52_60<=FUNCTION)||(LA52_60>=DOT && LA52_60<=GLOBAL)||LA52_60==COMMA||(LA52_60>=QUERY && LA52_60<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_62);
+                        input.seek(index52_60);
                         if ( s>=0 ) return s;
                         break;
                     case 41 : 
-                        int LA56_44 = input.LA(1);
+                        int LA52_63 = input.LA(1);
 
                          
-                        int index56_44 = input.index();
+                        int index52_63 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_44==RIGHT_SQUARE) ) {s = 80;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_44==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( ((LA56_44>=ATTRIBUTES && LA56_44<=GLOBAL)||LA56_44==COMMA||(LA56_44>=QUERY && LA56_44<=LEFT_SQUARE)||(LA56_44>=THEN && LA56_44<=80)) && (synpred7())) {s = 13;}
-
-                        else if ( (LA56_44==LEFT_PAREN) && (synpred7())) {s = 67;}
-
                          
-                        input.seek(index56_44);
+                        input.seek(index52_63);
                         if ( s>=0 ) return s;
                         break;
                     case 42 : 
-                        int LA56_14 = input.LA(1);
+                        int LA52_42 = input.LA(1);
 
                          
-                        int index56_14 = input.index();
+                        int index52_42 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 13;}
+                        if ( (LA52_42==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_42==ID) ) {s = 77;}
 
+                        else if ( (LA52_42==LEFT_PAREN) ) {s = 78;}
+
+                        else if ( ((LA52_42>=PACKAGE && LA52_42<=FUNCTION)||(LA52_42>=DOT && LA52_42<=GLOBAL)||LA52_42==COMMA||(LA52_42>=QUERY && LA52_42<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_14);
+                        input.seek(index52_42);
                         if ( s>=0 ) return s;
                         break;
                     case 43 : 
-                        int LA56_10 = input.LA(1);
+                        int LA52_52 = input.LA(1);
 
                          
-                        int index56_10 = input.index();
+                        int index52_52 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_10==LEFT_PAREN) ) {s = 30;}
+                        if ( (LA52_52==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_10==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_52==ID) ) {s = 89;}
 
-                        else if ( ((LA56_10>=ATTRIBUTES && LA56_10<=GLOBAL)||LA56_10==COMMA||(LA56_10>=QUERY && LA56_10<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_52==LEFT_PAREN) ) {s = 90;}
 
+                        else if ( ((LA52_52>=PACKAGE && LA52_52<=FUNCTION)||(LA52_52>=DOT && LA52_52<=GLOBAL)||LA52_52==COMMA||(LA52_52>=QUERY && LA52_52<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_10);
+                        input.seek(index52_52);
                         if ( s>=0 ) return s;
                         break;
                     case 44 : 
-                        int LA56_63 = input.LA(1);
+                        int LA52_7 = input.LA(1);
 
                          
-                        int index56_63 = input.index();
+                        int index52_7 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( (synpred7()) ) {s = 13;}
 
                         else if ( (true) ) {s = 3;}
 
                          
-                        input.seek(index56_63);
+                        input.seek(index52_7);
                         if ( s>=0 ) return s;
                         break;
                     case 45 : 
-                        int LA56_15 = input.LA(1);
+                        int LA52_17 = input.LA(1);
 
                          
-                        int index56_15 = input.index();
+                        int index52_17 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_15==LEFT_PAREN) ) {s = 36;}
+                        if ( (LA52_17==LEFT_PAREN) ) {s = 41;}
 
-                        else if ( (LA56_15==ID) ) {s = 37;}
+                        else if ( (LA52_17==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_15==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( ((LA52_17>=PACKAGE && LA52_17<=GLOBAL)||LA52_17==COMMA||(LA52_17>=QUERY && LA52_17<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( ((LA56_15>=ATTRIBUTES && LA56_15<=FUNCTION)||(LA56_15>=DOT && LA56_15<=GLOBAL)||LA56_15==COMMA||(LA56_15>=QUERY && LA56_15<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_15);
+                        input.seek(index52_17);
                         if ( s>=0 ) return s;
                         break;
                     case 46 : 
-                        int LA56_18 = input.LA(1);
+                        int LA52_26 = input.LA(1);
 
                          
-                        int index56_18 = input.index();
+                        int index52_26 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_18==LEFT_PAREN) ) {s = 41;}
+                        if ( (synpred7()) ) {s = 13;}
 
-                        else if ( (LA56_18==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( ((LA56_18>=ATTRIBUTES && LA56_18<=GLOBAL)||LA56_18==COMMA||(LA56_18>=QUERY && LA56_18<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_18);
+                        input.seek(index52_26);
                         if ( s>=0 ) return s;
                         break;
                     case 47 : 
-                        int LA56_32 = input.LA(1);
+                        int LA52_29 = input.LA(1);
 
                          
-                        int index56_32 = input.index();
+                        int index52_29 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_32==ID) ) {s = 64;}
+                        if ( (LA52_29==73) ) {s = 60;}
 
-                        else if ( (LA56_32==LEFT_PAREN) ) {s = 65;}
+                        else if ( (LA52_29==DOT) ) {s = 61;}
 
-                        else if ( (LA56_32==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_29==LEFT_SQUARE) ) {s = 62;}
 
-                        else if ( ((LA56_32>=ATTRIBUTES && LA56_32<=FUNCTION)||(LA56_32>=DOT && LA56_32<=GLOBAL)||LA56_32==COMMA||(LA56_32>=QUERY && LA56_32<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_29==LEFT_PAREN) ) {s = 63;}
 
+                        else if ( (LA52_29==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( ((LA52_29>=PACKAGE && LA52_29<=ID)||LA52_29==GLOBAL||LA52_29==COMMA||(LA52_29>=QUERY && LA52_29<=RIGHT_CURLY)||(LA52_29>=RIGHT_SQUARE && LA52_29<=72)||(LA52_29>=74 && LA52_29<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_32);
+                        input.seek(index52_29);
                         if ( s>=0 ) return s;
                         break;
                     case 48 : 
-                        int LA56_56 = input.LA(1);
+                        int LA52_27 = input.LA(1);
 
                          
-                        int index56_56 = input.index();
+                        int index52_27 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_56==ID) ) {s = 93;}
+                        if ( (LA52_27==73) ) {s = 56;}
 
-                        else if ( (LA56_56==LEFT_PAREN) ) {s = 94;}
+                        else if ( (LA52_27==DOT) ) {s = 57;}
 
-                        else if ( (LA56_56==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_27==LEFT_SQUARE) ) {s = 58;}
 
-                        else if ( ((LA56_56>=ATTRIBUTES && LA56_56<=FUNCTION)||(LA56_56>=DOT && LA56_56<=GLOBAL)||LA56_56==COMMA||(LA56_56>=QUERY && LA56_56<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_27==LEFT_PAREN) ) {s = 59;}
 
+                        else if ( (LA52_27==RIGHT_PAREN) && (synpred7())) {s = 8;}
+
+                        else if ( ((LA52_27>=PACKAGE && LA52_27<=ID)||LA52_27==GLOBAL||LA52_27==COMMA||(LA52_27>=QUERY && LA52_27<=RIGHT_CURLY)||(LA52_27>=RIGHT_SQUARE && LA52_27<=72)||(LA52_27>=74 && LA52_27<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_56);
+                        input.seek(index52_27);
                         if ( s>=0 ) return s;
                         break;
                     case 49 : 
-                        int LA56_60 = input.LA(1);
+                        int LA52_12 = input.LA(1);
 
                          
-                        int index56_60 = input.index();
+                        int index52_12 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_60==ID) ) {s = 97;}
+                        if ( (LA52_12==73) ) {s = 32;}
 
-                        else if ( (LA56_60==LEFT_PAREN) ) {s = 98;}
+                        else if ( (LA52_12==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_60==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_12==DOT) ) {s = 33;}
 
-                        else if ( ((LA56_60>=ATTRIBUTES && LA56_60<=FUNCTION)||(LA56_60>=DOT && LA56_60<=GLOBAL)||LA56_60==COMMA||(LA56_60>=QUERY && LA56_60<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_12==LEFT_PAREN) ) {s = 34;}
 
+                        else if ( (LA52_12==LEFT_SQUARE) ) {s = 35;}
+
+                        else if ( ((LA52_12>=PACKAGE && LA52_12<=ID)||LA52_12==GLOBAL||LA52_12==COMMA||(LA52_12>=QUERY && LA52_12<=RIGHT_CURLY)||(LA52_12>=RIGHT_SQUARE && LA52_12<=72)||(LA52_12>=74 && LA52_12<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_60);
+                        input.seek(index52_12);
                         if ( s>=0 ) return s;
                         break;
                     case 50 : 
-                        int LA56_41 = input.LA(1);
+                        int LA52_43 = input.LA(1);
 
                          
-                        int index56_41 = input.index();
+                        int index52_43 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( (LA52_43==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( ((LA52_43>=PACKAGE && LA52_43<=ID)||LA52_43==GLOBAL||(LA52_43>=QUERY && LA52_43<=ATTRIBUTES)||LA52_43==ENABLED||LA52_43==SALIENCE||(LA52_43>=DURATION && LA52_43<=DIALECT)||LA52_43==FROM||(LA52_43>=INIT && LA52_43<=RESULT)||(LA52_43>=CONTAINS && LA52_43<=IN)||LA52_43==THEN) ) {s = 79;}
 
+                        else if ( (LA52_43==LEFT_PAREN) && (synpred7())) {s = 67;}
+
+                        else if ( (LA52_43==DOT||LA52_43==COMMA||(LA52_43>=DATE_EFFECTIVE && LA52_43<=DATE_EXPIRES)||LA52_43==BOOL||(LA52_43>=INT && LA52_43<=AGENDA_GROUP)||(LA52_43>=LOCK_ON_ACTIVE && LA52_43<=DOUBLE_AMPER)||(LA52_43>=EXISTS && LA52_43<=ACCUMULATE)||LA52_43==COLLECT||(LA52_43>=FLOAT && LA52_43<=RIGHT_SQUARE)||(LA52_43>=EOL && LA52_43<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_41);
+                        input.seek(index52_43);
                         if ( s>=0 ) return s;
                         break;
                     case 51 : 
-                        int LA56_7 = input.LA(1);
+                        int LA52_53 = input.LA(1);
 
                          
-                        int index56_7 = input.index();
+                        int index52_53 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 13;}
+                        if ( (LA52_53==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( ((LA52_53>=PACKAGE && LA52_53<=ID)||LA52_53==GLOBAL||(LA52_53>=QUERY && LA52_53<=ATTRIBUTES)||LA52_53==ENABLED||LA52_53==SALIENCE||(LA52_53>=DURATION && LA52_53<=DIALECT)||LA52_53==FROM||(LA52_53>=INIT && LA52_53<=RESULT)||(LA52_53>=CONTAINS && LA52_53<=IN)||LA52_53==THEN) ) {s = 91;}
 
+                        else if ( (LA52_53==LEFT_PAREN) && (synpred7())) {s = 67;}
+
+                        else if ( (LA52_53==DOT||LA52_53==COMMA||(LA52_53>=DATE_EFFECTIVE && LA52_53<=DATE_EXPIRES)||LA52_53==BOOL||(LA52_53>=INT && LA52_53<=AGENDA_GROUP)||(LA52_53>=LOCK_ON_ACTIVE && LA52_53<=DOUBLE_AMPER)||(LA52_53>=EXISTS && LA52_53<=ACCUMULATE)||LA52_53==COLLECT||(LA52_53>=FLOAT && LA52_53<=RIGHT_SQUARE)||(LA52_53>=EOL && LA52_53<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_7);
+                        input.seek(index52_53);
                         if ( s>=0 ) return s;
                         break;
                     case 52 : 
-                        int LA56_30 = input.LA(1);
+                        int LA52_23 = input.LA(1);
 
                          
-                        int index56_30 = input.index();
+                        int index52_23 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 13;}
+                        if ( (LA52_23==LEFT_PAREN) ) {s = 50;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_23==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( ((LA52_23>=PACKAGE && LA52_23<=GLOBAL)||LA52_23==COMMA||(LA52_23>=QUERY && LA52_23<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_30);
+                        input.seek(index52_23);
                         if ( s>=0 ) return s;
                         break;
                     case 53 : 
-                        int LA56_66 = input.LA(1);
+                        int LA52_20 = input.LA(1);
 
                          
-                        int index56_66 = input.index();
+                        int index52_20 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_66==LEFT_SQUARE) ) {s = 34;}
+                        if ( (LA52_20==LEFT_PAREN) ) {s = 46;}
 
-                        else if ( (LA56_66==LEFT_PAREN) ) {s = 35;}
+                        else if ( (LA52_20==ID) ) {s = 47;}
 
-                        else if ( (LA56_66==DOT) ) {s = 33;}
+                        else if ( (LA52_20==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_66==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( ((LA52_20>=PACKAGE && LA52_20<=FUNCTION)||(LA52_20>=DOT && LA52_20<=GLOBAL)||LA52_20==COMMA||(LA52_20>=QUERY && LA52_20<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( ((LA56_66>=ATTRIBUTES && LA56_66<=ID)||LA56_66==GLOBAL||LA56_66==COMMA||(LA56_66>=QUERY && LA56_66<=RIGHT_CURLY)||(LA56_66>=RIGHT_SQUARE && LA56_66<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_66);
+                        input.seek(index52_20);
                         if ( s>=0 ) return s;
                         break;
                     case 54 : 
-                        int LA56_9 = input.LA(1);
+                        int LA52_44 = input.LA(1);
 
                          
-                        int index56_9 = input.index();
+                        int index52_44 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_9==LEFT_PAREN) ) {s = 28;}
+                        if ( (LA52_44==RIGHT_SQUARE) ) {s = 80;}
 
-                        else if ( (LA56_9==ID) ) {s = 29;}
+                        else if ( (LA52_44==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_9==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( ((LA52_44>=PACKAGE && LA52_44<=GLOBAL)||LA52_44==COMMA||(LA52_44>=QUERY && LA52_44<=LEFT_SQUARE)||(LA52_44>=THEN && LA52_44<=80)) && (synpred7())) {s = 13;}
 
-                        else if ( ((LA56_9>=ATTRIBUTES && LA56_9<=FUNCTION)||(LA56_9>=DOT && LA56_9<=GLOBAL)||LA56_9==COMMA||(LA56_9>=QUERY && LA56_9<=80)) && (synpred7())) {s = 13;}
+                        else if ( (LA52_44==LEFT_PAREN) && (synpred7())) {s = 67;}
 
                          
-                        input.seek(index56_9);
+                        input.seek(index52_44);
                         if ( s>=0 ) return s;
                         break;
                     case 55 : 
-                        int LA56_54 = input.LA(1);
+                        int LA52_38 = input.LA(1);
 
                          
-                        int index56_54 = input.index();
+                        int index52_38 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_54==RIGHT_SQUARE) ) {s = 92;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_54==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( ((LA56_54>=ATTRIBUTES && LA56_54<=GLOBAL)||LA56_54==COMMA||(LA56_54>=QUERY && LA56_54<=LEFT_SQUARE)||(LA56_54>=THEN && LA56_54<=80)) && (synpred7())) {s = 13;}
-
-                        else if ( (LA56_54==LEFT_PAREN) && (synpred7())) {s = 67;}
-
                          
-                        input.seek(index56_54);
+                        input.seek(index52_38);
                         if ( s>=0 ) return s;
                         break;
                     case 56 : 
-                        int LA56_42 = input.LA(1);
+                        int LA52_14 = input.LA(1);
 
                          
-                        int index56_42 = input.index();
+                        int index52_14 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_42==ID) ) {s = 77;}
+                        if ( (LA52_14==LEFT_PAREN) ) {s = 36;}
 
-                        else if ( (LA56_42==LEFT_PAREN) ) {s = 78;}
+                        else if ( (LA52_14==ID) ) {s = 37;}
 
-                        else if ( (LA56_42==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_14==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( ((LA56_42>=ATTRIBUTES && LA56_42<=FUNCTION)||(LA56_42>=DOT && LA56_42<=GLOBAL)||LA56_42==COMMA||(LA56_42>=QUERY && LA56_42<=80)) && (synpred7())) {s = 13;}
+                        else if ( ((LA52_14>=PACKAGE && LA52_14<=FUNCTION)||(LA52_14>=DOT && LA52_14<=GLOBAL)||LA52_14==COMMA||(LA52_14>=QUERY && LA52_14<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_42);
+                        input.seek(index52_14);
                         if ( s>=0 ) return s;
                         break;
                     case 57 : 
-                        int LA56_46 = input.LA(1);
+                        int LA52_31 = input.LA(1);
 
                          
-                        int index56_46 = input.index();
+                        int index52_31 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( (synpred7()) ) {s = 13;}
 
                         else if ( (true) ) {s = 3;}
 
                          
-                        input.seek(index56_46);
+                        input.seek(index52_31);
                         if ( s>=0 ) return s;
                         break;
                     case 58 : 
-                        int LA56_52 = input.LA(1);
+                        int LA52_22 = input.LA(1);
 
                          
-                        int index56_52 = input.index();
+                        int index52_22 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_52==ID) ) {s = 89;}
+                        if ( (LA52_22==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
-                        else if ( (LA56_52==LEFT_PAREN) ) {s = 90;}
+                        else if ( (LA52_22==ID) ) {s = 48;}
 
-                        else if ( (LA56_52==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (LA52_22==LEFT_PAREN) ) {s = 49;}
 
-                        else if ( ((LA56_52>=ATTRIBUTES && LA56_52<=FUNCTION)||(LA56_52>=DOT && LA56_52<=GLOBAL)||LA56_52==COMMA||(LA56_52>=QUERY && LA56_52<=80)) && (synpred7())) {s = 13;}
+                        else if ( ((LA52_22>=PACKAGE && LA52_22<=FUNCTION)||(LA52_22>=DOT && LA52_22<=GLOBAL)||LA52_22==COMMA||(LA52_22>=QUERY && LA52_22<=80)) && (synpred7())) {s = 13;}
 
                          
-                        input.seek(index56_52);
+                        input.seek(index52_22);
                         if ( s>=0 ) return s;
                         break;
                     case 59 : 
-                        int LA56_45 = input.LA(1);
+                        int LA52_11 = input.LA(1);
 
                          
-                        int index56_45 = input.index();
+                        int index52_11 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (synpred7()) ) {s = 67;}
+                        if ( (LA52_11==LEFT_PAREN) ) {s = 31;}
 
-                        else if ( (true) ) {s = 3;}
+                        else if ( (LA52_11==RIGHT_PAREN) && (synpred7())) {s = 8;}
 
+                        else if ( ((LA52_11>=PACKAGE && LA52_11<=GLOBAL)||LA52_11==COMMA||(LA52_11>=QUERY && LA52_11<=80)) && (synpred7())) {s = 13;}
+
                          
-                        input.seek(index56_45);
+                        input.seek(index52_11);
                         if ( s>=0 ) return s;
                         break;
                     case 60 : 
-                        int LA56_16 = input.LA(1);
+                        int LA52_34 = input.LA(1);
 
                          
-                        int index56_16 = input.index();
+                        int index52_34 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( (LA56_16==LEFT_PAREN) ) {s = 38;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_16==ID) ) {s = 39;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_16==RIGHT_PAREN) && (synpred7())) {s = 8;}
-
-                        else if ( ((LA56_16>=ATTRIBUTES && LA56_16<=FUNCTION)||(LA56_16>=DOT && LA56_16<=GLOBAL)||LA56_16==COMMA||(LA56_16>=QUERY && LA56_16<=80)) && (synpred7())) {s = 13;}
-
                          
-                        input.seek(index56_16);
+                        input.seek(index52_34);
                         if ( s>=0 ) return s;
                         break;
                     case 61 : 
-                        int LA56_53 = input.LA(1);
+                        int LA52_59 = input.LA(1);
 
                          
-                        int index56_53 = input.index();
+                        int index52_59 = input.index();
                         input.rewind();
                         s = -1;
-                        if ( ((LA56_53>=ATTRIBUTES && LA56_53<=ID)||LA56_53==GLOBAL||(LA56_53>=QUERY && LA56_53<=WHEN)||LA56_53==ENABLED||LA56_53==SALIENCE||(LA56_53>=DURATION && LA56_53<=DIALECT)||LA56_53==FROM||(LA56_53>=INIT && LA56_53<=RESULT)||(LA56_53>=CONTAINS && LA56_53<=IN)||LA56_53==THEN) ) {s = 91;}
+                        if ( (synpred7()) ) {s = 67;}
 
-                        else if ( (LA56_53==RIGHT_PAREN) && (synpred7())) {s = 8;}
+                        else if ( (true) ) {s = 3;}
 
-                        else if ( (LA56_53==DOT||LA56_53==COMMA||(LA56_53>=DATE_EFFECTIVE && LA56_53<=DATE_EXPIRES)||LA56_53==BOOL||(LA56_53>=INT && LA56_53<=AGENDA_GROUP)||(LA56_53>=LOCK_ON_ACTIVE && LA56_53<=DOUBLE_AMPER)||(LA56_53>=EXISTS && LA56_53<=ACCUMULATE)||LA56_53==COLLECT||(LA56_53>=FLOAT && LA56_53<=RIGHT_SQUARE)||(LA56_53>=EOL && LA56_53<=80)) && (synpred7())) {s = 13;}
-
-                        else if ( (LA56_53==LEFT_PAREN) && (synpred7())) {s = 67;}
-
                          
-                        input.seek(index56_53);
+                        input.seek(index52_59);
                         if ( s>=0 ) return s;
                         break;
                     case 62 : 
-                        int LA56_65 = input.LA(1);
+                        int LA52_41 = input.LA(1);
 
                          
-                        int index56_65 = input.index();
+                        int index52_41 = input.index();
                         input.rewind();
                         s = -1;
                         if ( (synpred7()) ) {s = 67;}
@@ -8779,46 +8708,46 @@
                         else if ( (true) ) {s = 3;}
 
                          
-                        input.seek(index56_65);
+                        input.seek(index52_41);
                         if ( s>=0 ) return s;
                         break;
             }
             if (backtracking>0) {failed=true; return -1;}
             NoViableAltException nvae =
-                new NoViableAltException(getDescription(), 56, _s, input);
+                new NoViableAltException(getDescription(), 52, _s, input);
             error(nvae);
             throw nvae;
         }
     }
-    static final String DFA68_eotS =
+    static final String DFA64_eotS =
         "\21\uffff";
-    static final String DFA68_eofS =
+    static final String DFA64_eofS =
         "\21\uffff";
-    static final String DFA68_minS =
-        "\1\14\1\uffff\1\4\1\11\1\0\1\4\1\uffff\1\4\11\0";
-    static final String DFA68_maxS =
+    static final String DFA64_minS =
+        "\1\13\1\uffff\1\4\1\10\1\0\1\4\1\uffff\1\4\11\0";
+    static final String DFA64_maxS =
         "\1\45\1\uffff\2\120\1\0\1\120\1\uffff\1\120\11\0";
-    static final String DFA68_acceptS =
+    static final String DFA64_acceptS =
         "\1\uffff\1\2\4\uffff\1\1\12\uffff";
-    static final String DFA68_specialS =
+    static final String DFA64_specialS =
         "\4\uffff\1\0\14\uffff}>";
-    static final String[] DFA68_transitionS = {
-            "\2\1\25\uffff\1\2\1\uffff\1\1",
+    static final String[] DFA64_transitionS = {
+            "\2\1\26\uffff\1\2\1\uffff\1\1",
             "",
-            "\5\1\1\uffff\1\1\1\4\2\uffff\5\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
+            "\4\1\1\uffff\1\1\1\4\2\uffff\6\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
             "\2\1\5\uffff\1\1\1\uffff\1\6\1\1\2\uffff\4\1\1\uffff\1\5\1\7"+
             "\1\10\1\11\1\3\6\uffff\1\1\16\uffff\6\6",
-            "\1\1\1\uffff\1\12\2\1\25\uffff\1\1\1\uffff\1\1\2\uffff\1\1\10"+
+            "\1\1\1\uffff\1\12\2\1\26\uffff\1\1\1\uffff\1\1\2\uffff\1\1\10"+
             "\uffff\5\1\4\uffff\1\1\17\uffff\7\1",
             "\1\uffff",
-            "\5\6\1\1\1\6\1\14\2\1\5\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
+            "\4\6\1\1\1\6\1\20\2\1\6\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
             "\6\2\uffff\1\1\1\uffff\1\1\1\6\1\uffff\1\1\3\uffff\4\6\1\uffff"+
-            "\1\15\1\16\1\17\1\20\1\13\2\6\2\uffff\1\1\1\uffff\1\6\15\uffff"+
+            "\1\14\1\15\1\16\1\17\1\13\2\6\2\uffff\1\1\1\uffff\1\6\15\uffff"+
             "\7\1",
             "",
-            "\5\6\1\1\1\6\1\14\2\1\5\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
+            "\4\6\1\1\1\6\1\20\2\1\6\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
             "\6\2\uffff\1\1\1\uffff\1\1\1\6\1\uffff\1\1\3\uffff\4\6\1\uffff"+
-            "\1\15\1\16\1\17\1\20\1\13\2\6\2\uffff\1\1\1\uffff\1\6\15\uffff"+
+            "\1\14\1\15\1\16\1\17\1\13\2\6\2\uffff\1\1\1\uffff\1\6\15\uffff"+
             "\7\1",
             "\1\uffff",
             "\1\uffff",
@@ -8831,46 +8760,46 @@
             "\1\uffff"
     };
 
-    static final short[] DFA68_eot = DFA.unpackEncodedString(DFA68_eotS);
-    static final short[] DFA68_eof = DFA.unpackEncodedString(DFA68_eofS);
-    static final char[] DFA68_min = DFA.unpackEncodedStringToUnsignedChars(DFA68_minS);
-    static final char[] DFA68_max = DFA.unpackEncodedStringToUnsignedChars(DFA68_maxS);
-    static final short[] DFA68_accept = DFA.unpackEncodedString(DFA68_acceptS);
-    static final short[] DFA68_special = DFA.unpackEncodedString(DFA68_specialS);
-    static final short[][] DFA68_transition;
+    static final short[] DFA64_eot = DFA.unpackEncodedString(DFA64_eotS);
+    static final short[] DFA64_eof = DFA.unpackEncodedString(DFA64_eofS);
+    static final char[] DFA64_min = DFA.unpackEncodedStringToUnsignedChars(DFA64_minS);
+    static final char[] DFA64_max = DFA.unpackEncodedStringToUnsignedChars(DFA64_maxS);
+    static final short[] DFA64_accept = DFA.unpackEncodedString(DFA64_acceptS);
+    static final short[] DFA64_special = DFA.unpackEncodedString(DFA64_specialS);
+    static final short[][] DFA64_transition;
 
     static {
-        int numStates = DFA68_transitionS.length;
-        DFA68_transition = new short[numStates][];
+        int numStates = DFA64_transitionS.length;
+        DFA64_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA68_transition[i] = DFA.unpackEncodedString(DFA68_transitionS[i]);
+            DFA64_transition[i] = DFA.unpackEncodedString(DFA64_transitionS[i]);
         }
     }
 
-    class DFA68 extends DFA {
+    class DFA64 extends DFA {
 
-        public DFA68(BaseRecognizer recognizer) {
+        public DFA64(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 68;
-            this.eot = DFA68_eot;
-            this.eof = DFA68_eof;
-            this.min = DFA68_min;
-            this.max = DFA68_max;
-            this.accept = DFA68_accept;
-            this.special = DFA68_special;
-            this.transition = DFA68_transition;
+            this.decisionNumber = 64;
+            this.eot = DFA64_eot;
+            this.eof = DFA64_eof;
+            this.min = DFA64_min;
+            this.max = DFA64_max;
+            this.accept = DFA64_accept;
+            this.special = DFA64_special;
+            this.transition = DFA64_transition;
         }
         public String getDescription() {
-            return "()* loopback of 1357:3: ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )*";
+            return "()* loopback of 1349:3: ( options {backtrack=true; } : DOUBLE_PIPE and_restr_connective[or] )*";
         }
         public int specialStateTransition(int s, IntStream input) throws NoViableAltException {
         	int _s = s;
             switch ( s ) {
                     case 0 : 
-                        int LA68_4 = input.LA(1);
+                        int LA64_4 = input.LA(1);
 
                          
-                        int index68_4 = input.index();
+                        int index64_4 = input.index();
                         input.rewind();
                         s = -1;
                         if ( (synpred8()) ) {s = 6;}
@@ -8878,46 +8807,46 @@
                         else if ( (true) ) {s = 1;}
 
                          
-                        input.seek(index68_4);
+                        input.seek(index64_4);
                         if ( s>=0 ) return s;
                         break;
             }
             if (backtracking>0) {failed=true; return -1;}
             NoViableAltException nvae =
-                new NoViableAltException(getDescription(), 68, _s, input);
+                new NoViableAltException(getDescription(), 64, _s, input);
             error(nvae);
             throw nvae;
         }
     }
-    static final String DFA69_eotS =
+    static final String DFA65_eotS =
         "\27\uffff";
-    static final String DFA69_eofS =
+    static final String DFA65_eofS =
         "\1\1\26\uffff";
-    static final String DFA69_minS =
-        "\1\14\1\uffff\1\4\1\11\2\4\1\uffff\1\4\17\0";
-    static final String DFA69_maxS =
+    static final String DFA65_minS =
+        "\1\13\1\uffff\1\4\1\10\2\4\1\uffff\1\4\17\0";
+    static final String DFA65_maxS =
         "\1\45\1\uffff\4\120\1\uffff\1\120\17\0";
-    static final String DFA69_acceptS =
+    static final String DFA65_acceptS =
         "\1\uffff\1\2\4\uffff\1\1\20\uffff";
-    static final String DFA69_specialS =
+    static final String DFA65_specialS =
         "\27\uffff}>";
-    static final String[] DFA69_transitionS = {
-            "\2\1\25\uffff\1\1\1\uffff\1\2",
+    static final String[] DFA65_transitionS = {
+            "\2\1\26\uffff\1\1\1\uffff\1\2",
             "",
-            "\5\1\1\uffff\1\1\1\4\2\uffff\5\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
+            "\4\1\1\uffff\1\1\1\4\2\uffff\6\1\3\uffff\1\1\1\uffff\1\1\6\uffff"+
             "\2\1\5\uffff\1\1\1\uffff\1\6\1\1\2\uffff\4\1\1\uffff\1\5\1\7"+
             "\1\10\1\11\1\3\6\uffff\1\1\16\uffff\6\6",
-            "\1\1\1\uffff\1\12\2\1\25\uffff\1\1\1\uffff\1\1\2\uffff\1\1\10"+
+            "\1\1\1\uffff\1\12\2\1\26\uffff\1\1\1\uffff\1\1\2\uffff\1\1\10"+
             "\uffff\5\1\4\uffff\1\1\17\uffff\7\1",
-            "\5\1\1\uffff\1\1\1\14\2\uffff\5\1\3\uffff\1\1\1\uffff\1\1\6"+
+            "\4\1\1\uffff\1\1\1\14\2\uffff\6\1\3\uffff\1\1\1\uffff\1\1\6"+
             "\uffff\2\1\5\uffff\1\1\1\uffff\1\6\1\1\2\uffff\4\1\1\uffff\1"+
             "\15\1\16\1\17\1\20\1\13\6\uffff\1\1\16\uffff\6\6",
-            "\5\6\1\1\1\6\1\26\2\1\5\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
+            "\4\6\1\1\1\6\1\26\2\1\6\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
             "\6\2\uffff\1\1\1\uffff\1\1\1\6\1\uffff\1\1\3\uffff\4\6\1\uffff"+
             "\1\22\1\23\1\24\1\25\1\21\2\6\2\uffff\1\1\1\uffff\1\6\15\uffff"+
             "\7\1",
             "",
-            "\5\6\1\1\1\6\1\26\2\1\5\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
+            "\4\6\1\1\1\6\1\26\2\1\6\6\1\uffff\1\6\1\uffff\4\6\5\uffff\2"+
             "\6\2\uffff\1\1\1\uffff\1\1\1\6\1\uffff\1\1\3\uffff\4\6\1\uffff"+
             "\1\22\1\23\1\24\1\25\1\21\2\6\2\uffff\1\1\1\uffff\1\6\15\uffff"+
             "\7\1",
@@ -8938,364 +8867,360 @@
             "\1\uffff"
     };
 
-    static final short[] DFA69_eot = DFA.unpackEncodedString(DFA69_eotS);
-    static final short[] DFA69_eof = DFA.unpackEncodedString(DFA69_eofS);
-    static final char[] DFA69_min = DFA.unpackEncodedStringToUnsignedChars(DFA69_minS);
-    static final char[] DFA69_max = DFA.unpackEncodedStringToUnsignedChars(DFA69_maxS);
-    static final short[] DFA69_accept = DFA.unpackEncodedString(DFA69_acceptS);
-    static final short[] DFA69_special = DFA.unpackEncodedString(DFA69_specialS);
-    static final short[][] DFA69_transition;
+    static final short[] DFA65_eot = DFA.unpackEncodedString(DFA65_eotS);
+    static final short[] DFA65_eof = DFA.unpackEncodedString(DFA65_eofS);
+    static final char[] DFA65_min = DFA.unpackEncodedStringToUnsignedChars(DFA65_minS);
+    static final char[] DFA65_max = DFA.unpackEncodedStringToUnsignedChars(DFA65_maxS);
+    static final short[] DFA65_accept = DFA.unpackEncodedString(DFA65_acceptS);
+    static final short[] DFA65_special = DFA.unpackEncodedString(DFA65_specialS);
+    static final short[][] DFA65_transition;
 
     static {
-        int numStates = DFA69_transitionS.length;
-        DFA69_transition = new short[numStates][];
+        int numStates = DFA65_transitionS.length;
+        DFA65_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA69_transition[i] = DFA.unpackEncodedString(DFA69_transitionS[i]);
+            DFA65_transition[i] = DFA.unpackEncodedString(DFA65_transitionS[i]);
         }
     }
 
-    class DFA69 extends DFA {
+    class DFA65 extends DFA {
 
-        public DFA69(BaseRecognizer recognizer) {
+        public DFA65(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 69;
-            this.eot = DFA69_eot;
-            this.eof = DFA69_eof;
-            this.min = DFA69_min;
-            this.max = DFA69_max;
-            this.accept = DFA69_accept;
-            this.special = DFA69_special;
-            this.transition = DFA69_transition;
+            this.decisionNumber = 65;
+            this.eot = DFA65_eot;
+            this.eof = DFA65_eof;
+            this.min = DFA65_min;
+            this.max = DFA65_max;
+            this.accept = DFA65_accept;
+            this.special = DFA65_special;
+            this.transition = DFA65_transition;
         }
         public String getDescription() {
-            return "()* loopback of 1380:3: ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )*";
+            return "()* loopback of 1372:3: ( options {backtrack=true; } : t= DOUBLE_AMPER constraint_expression[and] )*";
         }
     }
  
 
     public static final BitSet FOLLOW_71_in_opt_semicolon39 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_prolog_in_compilation_unit57 = new BitSet(new long[]{0x00000000000344C0L});
-    public static final BitSet FOLLOW_statement_in_compilation_unit62 = new BitSet(new long[]{0x00000000000344C0L});
+    public static final BitSet FOLLOW_prolog_in_compilation_unit57 = new BitSet(new long[]{0x00000003FD69A260L});
+    public static final BitSet FOLLOW_statement_in_compilation_unit62 = new BitSet(new long[]{0x00000003FD69A260L});
     public static final BitSet FOLLOW_EOF_in_compilation_unit67 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_package_statement_in_prolog96 = new BitSet(new long[]{0x00000003FD680012L});
-    public static final BitSet FOLLOW_ATTRIBUTES_in_prolog110 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
-    public static final BitSet FOLLOW_72_in_prolog112 = new BitSet(new long[]{0x00000003FD680002L});
-    public static final BitSet FOLLOW_rule_attribute_in_prolog122 = new BitSet(new long[]{0x00000003FD681002L});
-    public static final BitSet FOLLOW_COMMA_in_prolog145 = new BitSet(new long[]{0x00000003FD680000L});
-    public static final BitSet FOLLOW_rule_attribute_in_prolog150 = new BitSet(new long[]{0x00000003FD681002L});
-    public static final BitSet FOLLOW_PACKAGE_in_package_statement194 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_dotted_name_in_package_statement198 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_package_statement200 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_function_import_statement_in_statement214 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_import_statement_in_statement220 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_global_in_statement226 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_function_in_statement232 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_template_in_statement246 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_rule_in_statement255 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_query_in_statement267 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_IMPORT_in_import_statement296 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_import_name_in_import_statement319 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_import_statement322 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_IMPORT_in_function_import_statement346 = new BitSet(new long[]{0x0000000000000080L});
-    public static final BitSet FOLLOW_FUNCTION_in_function_import_statement348 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_import_name_in_function_import_statement371 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_function_import_statement374 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ID_in_import_name400 = new BitSet(new long[]{0x0000000000000202L,0x0000000000000200L});
-    public static final BitSet FOLLOW_DOT_in_import_name412 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_identifier_in_import_name416 = new BitSet(new long[]{0x0000000000000202L,0x0000000000000200L});
-    public static final BitSet FOLLOW_73_in_import_name440 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_GLOBAL_in_global474 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_dotted_name_in_global485 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_identifier_in_global496 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_global498 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_FUNCTION_in_function523 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_dotted_name_in_function527 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_identifier_in_function532 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_function541 = new BitSet(new long[]{0x103EF0418147E5F0L});
-    public static final BitSet FOLLOW_dotted_name_in_function550 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_argument_in_function555 = new BitSet(new long[]{0x0000000000003000L});
-    public static final BitSet FOLLOW_COMMA_in_function569 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_dotted_name_in_function573 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_argument_in_function578 = new BitSet(new long[]{0x0000000000003000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_function602 = new BitSet(new long[]{0x0100000000000000L});
-    public static final BitSet FOLLOW_curly_chunk_in_function608 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_identifier_in_argument635 = new BitSet(new long[]{0x0400000000000002L});
-    public static final BitSet FOLLOW_LEFT_SQUARE_in_argument641 = new BitSet(new long[]{0x0800000000000000L});
-    public static final BitSet FOLLOW_RIGHT_SQUARE_in_argument643 = new BitSet(new long[]{0x0400000000000002L});
-    public static final BitSet FOLLOW_QUERY_in_query673 = new BitSet(new long[]{0x0000000000100100L});
-    public static final BitSet FOLLOW_name_in_query677 = new BitSet(new long[]{0x0000078000008900L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_query687 = new BitSet(new long[]{0x0000000000002100L});
-    public static final BitSet FOLLOW_qualified_id_in_query722 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_ID_in_query727 = new BitSet(new long[]{0x0000000000003000L});
-    public static final BitSet FOLLOW_COMMA_in_query748 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_qualified_id_in_query752 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_ID_in_query757 = new BitSet(new long[]{0x0000000000003000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_query807 = new BitSet(new long[]{0x0000078000008900L});
-    public static final BitSet FOLLOW_normal_lhs_block_in_query836 = new BitSet(new long[]{0x0000000000008000L});
-    public static final BitSet FOLLOW_END_in_query841 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_query843 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_TEMPLATE_in_template871 = new BitSet(new long[]{0x0000000000100100L});
-    public static final BitSet FOLLOW_name_in_template875 = new BitSet(new long[]{0x0000000000000100L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_template877 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_template_slot_in_template892 = new BitSet(new long[]{0x0000000000008100L});
-    public static final BitSet FOLLOW_END_in_template907 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_template909 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_qualified_id_in_template_slot955 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_identifier_in_template_slot971 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_template_slot973 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULE_in_rule1004 = new BitSet(new long[]{0x0000000000100100L});
-    public static final BitSet FOLLOW_name_in_rule1008 = new BitSet(new long[]{0x10000003FD6C0010L});
-    public static final BitSet FOLLOW_rule_attributes_in_rule1017 = new BitSet(new long[]{0x1000000000040000L});
-    public static final BitSet FOLLOW_WHEN_in_rule1029 = new BitSet(new long[]{0x1000078000000900L,0x0000000000000100L});
-    public static final BitSet FOLLOW_72_in_rule1031 = new BitSet(new long[]{0x1000078000000900L});
-    public static final BitSet FOLLOW_normal_lhs_block_in_rule1042 = new BitSet(new long[]{0x1000000000000000L});
-    public static final BitSet FOLLOW_rhs_chunk_in_rule1052 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ATTRIBUTES_in_rule_attributes1072 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
-    public static final BitSet FOLLOW_72_in_rule_attributes1074 = new BitSet(new long[]{0x00000003FD680000L});
-    public static final BitSet FOLLOW_rule_attribute_in_rule_attributes1082 = new BitSet(new long[]{0x00000003FD681002L});
-    public static final BitSet FOLLOW_COMMA_in_rule_attributes1089 = new BitSet(new long[]{0x00000003FD680000L});
-    public static final BitSet FOLLOW_rule_attribute_in_rule_attributes1094 = new BitSet(new long[]{0x00000003FD681002L});
-    public static final BitSet FOLLOW_salience_in_rule_attribute1131 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_no_loop_in_rule_attribute1139 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_agenda_group_in_rule_attribute1148 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_duration_in_rule_attribute1157 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_activation_group_in_rule_attribute1166 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_auto_focus_in_rule_attribute1174 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_date_effective_in_rule_attribute1182 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_date_expires_in_rule_attribute1190 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_enabled_in_rule_attribute1198 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ruleflow_group_in_rule_attribute1206 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_lock_on_active_in_rule_attribute1214 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_dialect_in_rule_attribute1221 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_DATE_EFFECTIVE_in_date_effective1247 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_STRING_in_date_effective1249 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_DATE_EXPIRES_in_date_expires1278 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_STRING_in_date_expires1280 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ENABLED_in_enabled1309 = new BitSet(new long[]{0x0000000000800000L});
-    public static final BitSet FOLLOW_BOOL_in_enabled1311 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_SALIENCE_in_salience1344 = new BitSet(new long[]{0x0000000002000800L});
-    public static final BitSet FOLLOW_INT_in_salience1355 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_paren_chunk_in_salience1370 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_NO_LOOP_in_no_loop1400 = new BitSet(new long[]{0x0000000000800002L});
-    public static final BitSet FOLLOW_BOOL_in_no_loop1413 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_AUTO_FOCUS_in_auto_focus1448 = new BitSet(new long[]{0x0000000000800002L});
-    public static final BitSet FOLLOW_BOOL_in_auto_focus1461 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ACTIVATION_GROUP_in_activation_group1497 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_STRING_in_activation_group1499 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_RULEFLOW_GROUP_in_ruleflow_group1527 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_STRING_in_ruleflow_group1529 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_AGENDA_GROUP_in_agenda_group1557 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_STRING_in_agenda_group1559 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_DURATION_in_duration1587 = new BitSet(new long[]{0x0000000002000000L});
-    public static final BitSet FOLLOW_INT_in_duration1589 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_DIALECT_in_dialect1617 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_STRING_in_dialect1619 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LOCK_ON_ACTIVE_in_lock_on_active1651 = new BitSet(new long[]{0x0000000000800002L});
-    public static final BitSet FOLLOW_BOOL_in_lock_on_active1664 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_lhs_in_normal_lhs_block1703 = new BitSet(new long[]{0x0000078000000902L});
-    public static final BitSet FOLLOW_lhs_or_in_lhs1740 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_or1765 = new BitSet(new long[]{0x0000000400000000L});
-    public static final BitSet FOLLOW_OR_in_lhs_or1767 = new BitSet(new long[]{0x0000078000000900L});
-    public static final BitSet FOLLOW_lhs_and_in_lhs_or1778 = new BitSet(new long[]{0x0000078000002900L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_or1788 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_lhs_and_in_lhs_or1806 = new BitSet(new long[]{0x0000000C00000002L});
-    public static final BitSet FOLLOW_set_in_lhs_or1814 = new BitSet(new long[]{0x0000078000000900L});
-    public static final BitSet FOLLOW_lhs_and_in_lhs_or1830 = new BitSet(new long[]{0x0000000C00000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_and1861 = new BitSet(new long[]{0x0000001000000000L});
-    public static final BitSet FOLLOW_AND_in_lhs_and1863 = new BitSet(new long[]{0x0000078000000900L});
-    public static final BitSet FOLLOW_lhs_unary_in_lhs_and1874 = new BitSet(new long[]{0x0000078000002900L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_and1884 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_lhs_unary_in_lhs_and1902 = new BitSet(new long[]{0x0000003000000002L});
-    public static final BitSet FOLLOW_set_in_lhs_and1910 = new BitSet(new long[]{0x0000078000000900L});
-    public static final BitSet FOLLOW_lhs_unary_in_lhs_and1926 = new BitSet(new long[]{0x0000003000000002L});
-    public static final BitSet FOLLOW_lhs_exist_in_lhs_unary1971 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_lhs_not_in_lhs_unary1989 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_lhs_eval_in_lhs_unary2008 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_lhs_forall_in_lhs_unary2027 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_unary2044 = new BitSet(new long[]{0x0000078000000900L});
-    public static final BitSet FOLLOW_lhs_or_in_lhs_unary2048 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_unary2050 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_pattern_source_in_lhs_unary2061 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_lhs_unary2073 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_lhs_pattern_in_pattern_source2100 = new BitSet(new long[]{0x0000004000000002L});
-    public static final BitSet FOLLOW_FROM_in_pattern_source2112 = new BitSet(new long[]{0x103FF8418147C5F0L});
-    public static final BitSet FOLLOW_accumulate_statement_in_pattern_source2168 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_collect_statement_in_pattern_source2191 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_from_statement_in_pattern_source2215 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_EXISTS_in_lhs_exist2258 = new BitSet(new long[]{0x0000000000000900L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_exist2278 = new BitSet(new long[]{0x0000078000000900L});
-    public static final BitSet FOLLOW_lhs_or_in_lhs_exist2282 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_exist2312 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_lhs_pattern_in_lhs_exist2362 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_NOT_in_lhs_not2414 = new BitSet(new long[]{0x0000000000000900L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_not2427 = new BitSet(new long[]{0x0000078000000900L});
-    public static final BitSet FOLLOW_lhs_or_in_lhs_not2431 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_not2462 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_lhs_pattern_in_lhs_not2499 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_EVAL_in_lhs_eval2545 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_paren_chunk_in_lhs_eval2556 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_FORALL_in_lhs_forall2582 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_forall2584 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_lhs_pattern_in_lhs_forall2588 = new BitSet(new long[]{0x0000000000002100L});
-    public static final BitSet FOLLOW_lhs_pattern_in_lhs_forall2603 = new BitSet(new long[]{0x0000000000002100L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_forall2619 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_fact_binding_in_lhs_pattern2652 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_fact_in_lhs_pattern2660 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_from_source_in_from_statement2687 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_identifier_in_from_source2716 = new BitSet(new long[]{0x0000000000000A02L});
-    public static final BitSet FOLLOW_paren_chunk_in_from_source2744 = new BitSet(new long[]{0x0000000000000202L});
-    public static final BitSet FOLLOW_expression_chain_in_from_source2757 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ACCUMULATE_in_accumulate_statement2798 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_accumulate_statement2808 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_pattern_source_in_accumulate_statement2812 = new BitSet(new long[]{0x0000100000001100L});
-    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2814 = new BitSet(new long[]{0x0000100000000100L});
-    public static final BitSet FOLLOW_INIT_in_accumulate_statement2832 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2845 = new BitSet(new long[]{0x0000200000001000L});
-    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2847 = new BitSet(new long[]{0x0000200000000000L});
-    public static final BitSet FOLLOW_ACTION_in_accumulate_statement2858 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2862 = new BitSet(new long[]{0x0000C00000001000L});
-    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2864 = new BitSet(new long[]{0x0000C00000000000L});
-    public static final BitSet FOLLOW_REVERSE_in_accumulate_statement2877 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2881 = new BitSet(new long[]{0x0000800000001000L});
-    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2883 = new BitSet(new long[]{0x0000800000000000L});
-    public static final BitSet FOLLOW_RESULT_in_accumulate_statement2900 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2904 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_ID_in_accumulate_statement2930 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2934 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_accumulate_statement2951 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_DOT_in_expression_chain2980 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_identifier_in_expression_chain2984 = new BitSet(new long[]{0x0400000000000A02L});
-    public static final BitSet FOLLOW_square_chunk_in_expression_chain3015 = new BitSet(new long[]{0x0000000000000202L});
-    public static final BitSet FOLLOW_paren_chunk_in_expression_chain3048 = new BitSet(new long[]{0x0000000000000202L});
-    public static final BitSet FOLLOW_expression_chain_in_expression_chain3063 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_COLLECT_in_collect_statement3114 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_collect_statement3124 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_pattern_source_in_collect_statement3128 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_collect_statement3130 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ID_in_fact_binding3162 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
-    public static final BitSet FOLLOW_72_in_fact_binding3164 = new BitSet(new long[]{0x0000000000000900L});
-    public static final BitSet FOLLOW_fact_in_fact_binding3178 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_fact_binding3194 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_fact_in_fact_binding3198 = new BitSet(new long[]{0x0000000C00002000L});
-    public static final BitSet FOLLOW_set_in_fact_binding3211 = new BitSet(new long[]{0x0000000000000100L});
-    public static final BitSet FOLLOW_fact_in_fact_binding3223 = new BitSet(new long[]{0x0000000C00002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_fact_binding3241 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_qualified_id_in_fact3296 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_fact3306 = new BitSet(new long[]{0x103EF2418147EDF0L});
-    public static final BitSet FOLLOW_constraints_in_fact3318 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_fact3325 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_EOF_in_fact3334 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_constraint_in_constraints3352 = new BitSet(new long[]{0x0000000000001002L});
-    public static final BitSet FOLLOW_COMMA_in_constraints3359 = new BitSet(new long[]{0x103EF2418147CDF0L});
-    public static final BitSet FOLLOW_constraint_in_constraints3368 = new BitSet(new long[]{0x0000000000001002L});
-    public static final BitSet FOLLOW_or_constr_in_constraint3401 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_and_constr_in_or_constr3424 = new BitSet(new long[]{0x0000000800000002L});
-    public static final BitSet FOLLOW_DOUBLE_PIPE_in_or_constr3432 = new BitSet(new long[]{0x103EF2418147CDF0L});
-    public static final BitSet FOLLOW_and_constr_in_or_constr3441 = new BitSet(new long[]{0x0000000800000002L});
-    public static final BitSet FOLLOW_unary_constr_in_and_constr3473 = new BitSet(new long[]{0x0000002000000002L});
-    public static final BitSet FOLLOW_DOUBLE_AMPER_in_and_constr3481 = new BitSet(new long[]{0x103EF2418147CDF0L});
-    public static final BitSet FOLLOW_unary_constr_in_and_constr3490 = new BitSet(new long[]{0x0000002000000002L});
-    public static final BitSet FOLLOW_field_constraint_in_unary_constr3518 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_unary_constr3526 = new BitSet(new long[]{0x103EF2418147CDF0L});
-    public static final BitSet FOLLOW_or_constr_in_unary_constr3528 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_unary_constr3531 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_EVAL_in_unary_constr3537 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_predicate_in_unary_constr3539 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ID_in_field_constraint3569 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000100L});
-    public static final BitSet FOLLOW_72_in_field_constraint3571 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_accessor_path_in_field_constraint3592 = new BitSet(new long[]{0x003E010000000802L,0x000000000001FC00L});
-    public static final BitSet FOLLOW_or_restr_connective_in_field_constraint3620 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_74_in_field_constraint3640 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_predicate_in_field_constraint3642 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_and_restr_connective_in_or_restr_connective3685 = new BitSet(new long[]{0x0000000800000002L});
-    public static final BitSet FOLLOW_DOUBLE_PIPE_in_or_restr_connective3709 = new BitSet(new long[]{0x003E010000000800L,0x000000000001F800L});
-    public static final BitSet FOLLOW_and_restr_connective_in_or_restr_connective3720 = new BitSet(new long[]{0x0000000800000002L});
-    public static final BitSet FOLLOW_constraint_expression_in_and_restr_connective3752 = new BitSet(new long[]{0x0000002000000002L});
-    public static final BitSet FOLLOW_DOUBLE_AMPER_in_and_restr_connective3773 = new BitSet(new long[]{0x003E010000000800L,0x000000000001F800L});
-    public static final BitSet FOLLOW_constraint_expression_in_and_restr_connective3784 = new BitSet(new long[]{0x0000002000000002L});
-    public static final BitSet FOLLOW_compound_operator_in_constraint_expression3821 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_simple_operator_in_constraint_expression3828 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_constraint_expression3835 = new BitSet(new long[]{0x003E010000000800L,0x000000000001F800L});
-    public static final BitSet FOLLOW_or_restr_connective_in_constraint_expression3844 = new BitSet(new long[]{0x0000000000002000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_constraint_expression3850 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_75_in_simple_operator3881 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_76_in_simple_operator3889 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_77_in_simple_operator3897 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_78_in_simple_operator3905 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_79_in_simple_operator3913 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_80_in_simple_operator3921 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_CONTAINS_in_simple_operator3929 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_NOT_in_simple_operator3937 = new BitSet(new long[]{0x0002000000000000L});
-    public static final BitSet FOLLOW_CONTAINS_in_simple_operator3941 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_EXCLUDES_in_simple_operator3949 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_MATCHES_in_simple_operator3957 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_NOT_in_simple_operator3965 = new BitSet(new long[]{0x0008000000000000L});
-    public static final BitSet FOLLOW_MATCHES_in_simple_operator3969 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_MEMBEROF_in_simple_operator3977 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_NOT_in_simple_operator3985 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_MEMBEROF_in_simple_operator3989 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_expression_value_in_simple_operator4003 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_IN_in_compound_operator4033 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_NOT_in_compound_operator4045 = new BitSet(new long[]{0x0020000000000000L});
-    public static final BitSet FOLLOW_IN_in_compound_operator4047 = new BitSet(new long[]{0x0000000000000800L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_compound_operator4062 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_expression_value_in_compound_operator4066 = new BitSet(new long[]{0x0000000000003000L});
-    public static final BitSet FOLLOW_COMMA_in_compound_operator4073 = new BitSet(new long[]{0x10FEF04183D7CDF0L});
-    public static final BitSet FOLLOW_expression_value_in_compound_operator4077 = new BitSet(new long[]{0x0000000000003000L});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_compound_operator4086 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_accessor_path_in_expression_value4120 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_literal_constraint_in_expression_value4140 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_paren_chunk_in_expression_value4154 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_STRING_in_literal_constraint4197 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_INT_in_literal_constraint4208 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_FLOAT_in_literal_constraint4221 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_BOOL_in_literal_constraint4232 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_NULL_in_literal_constraint4244 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_paren_chunk_in_predicate4282 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_CURLY_in_curly_chunk4300 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_set_in_curly_chunk4304 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_curly_chunk_in_curly_chunk4313 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_RIGHT_CURLY_in_curly_chunk4318 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_paren_chunk4332 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_set_in_paren_chunk4336 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_paren_chunk_in_paren_chunk4345 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_RIGHT_PAREN_in_paren_chunk4350 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_SQUARE_in_square_chunk4363 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_set_in_square_chunk4367 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_square_chunk_in_square_chunk4376 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_RIGHT_SQUARE_in_square_chunk4381 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ID_in_qualified_id4410 = new BitSet(new long[]{0x0400000000000202L});
-    public static final BitSet FOLLOW_DOT_in_qualified_id4416 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_identifier_in_qualified_id4418 = new BitSet(new long[]{0x0400000000000202L});
-    public static final BitSet FOLLOW_LEFT_SQUARE_in_qualified_id4427 = new BitSet(new long[]{0x0800000000000000L});
-    public static final BitSet FOLLOW_RIGHT_SQUARE_in_qualified_id4429 = new BitSet(new long[]{0x0400000000000002L});
-    public static final BitSet FOLLOW_identifier_in_dotted_name4463 = new BitSet(new long[]{0x0400000000000202L});
-    public static final BitSet FOLLOW_DOT_in_dotted_name4469 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_identifier_in_dotted_name4473 = new BitSet(new long[]{0x0400000000000202L});
-    public static final BitSet FOLLOW_LEFT_SQUARE_in_dotted_name4482 = new BitSet(new long[]{0x0800000000000000L});
-    public static final BitSet FOLLOW_RIGHT_SQUARE_in_dotted_name4484 = new BitSet(new long[]{0x0400000000000002L});
-    public static final BitSet FOLLOW_accessor_element_in_accessor_path4518 = new BitSet(new long[]{0x0000000000000202L});
-    public static final BitSet FOLLOW_DOT_in_accessor_path4524 = new BitSet(new long[]{0x103EF0418147C5F0L});
-    public static final BitSet FOLLOW_accessor_element_in_accessor_path4528 = new BitSet(new long[]{0x0000000000000202L});
-    public static final BitSet FOLLOW_identifier_in_accessor_element4566 = new BitSet(new long[]{0x0400000000000002L});
-    public static final BitSet FOLLOW_square_chunk_in_accessor_element4573 = new BitSet(new long[]{0x0400000000000002L});
-    public static final BitSet FOLLOW_THEN_in_rhs_chunk4594 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_set_in_rhs_chunk4602 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
-    public static final BitSet FOLLOW_END_in_rhs_chunk4626 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
-    public static final BitSet FOLLOW_opt_semicolon_in_rhs_chunk4628 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_ID_in_name4662 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_STRING_in_name4670 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_package_statement_in_prolog96 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule_attribute_in_statement121 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_function_import_statement_in_statement128 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_import_statement_in_statement134 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_global_in_statement140 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_function_in_statement146 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_template_in_statement160 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_rule_in_statement169 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_query_in_statement181 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_PACKAGE_in_package_statement205 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_dotted_name_in_package_statement209 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_package_statement211 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_IMPORT_in_import_statement242 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_import_name_in_import_statement265 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_import_statement268 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_IMPORT_in_function_import_statement292 = new BitSet(new long[]{0x0000000000000040L});
+    public static final BitSet FOLLOW_FUNCTION_in_function_import_statement294 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_import_name_in_function_import_statement317 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_function_import_statement320 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ID_in_import_name346 = new BitSet(new long[]{0x0000000000000102L,0x0000000000000100L});
+    public static final BitSet FOLLOW_DOT_in_import_name358 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_identifier_in_import_name362 = new BitSet(new long[]{0x0000000000000102L,0x0000000000000100L});
+    public static final BitSet FOLLOW_72_in_import_name386 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_GLOBAL_in_global420 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_dotted_name_in_global431 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_identifier_in_global442 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_global444 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_FUNCTION_in_function469 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_dotted_name_in_function473 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_identifier_in_function478 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_function487 = new BitSet(new long[]{0x103EF0418147F2F0L});
+    public static final BitSet FOLLOW_dotted_name_in_function496 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_argument_in_function501 = new BitSet(new long[]{0x0000000000001800L});
+    public static final BitSet FOLLOW_COMMA_in_function515 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_dotted_name_in_function519 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_argument_in_function524 = new BitSet(new long[]{0x0000000000001800L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_function548 = new BitSet(new long[]{0x0100000000000000L});
+    public static final BitSet FOLLOW_curly_chunk_in_function554 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_identifier_in_argument581 = new BitSet(new long[]{0x0400000000000002L});
+    public static final BitSet FOLLOW_LEFT_SQUARE_in_argument587 = new BitSet(new long[]{0x0800000000000000L});
+    public static final BitSet FOLLOW_RIGHT_SQUARE_in_argument589 = new BitSet(new long[]{0x0400000000000002L});
+    public static final BitSet FOLLOW_QUERY_in_query619 = new BitSet(new long[]{0x0000000000100080L});
+    public static final BitSet FOLLOW_name_in_query623 = new BitSet(new long[]{0x0000078000004480L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_query633 = new BitSet(new long[]{0x0000000000001080L});
+    public static final BitSet FOLLOW_qualified_id_in_query668 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_ID_in_query673 = new BitSet(new long[]{0x0000000000001800L});
+    public static final BitSet FOLLOW_COMMA_in_query694 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_qualified_id_in_query698 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_ID_in_query703 = new BitSet(new long[]{0x0000000000001800L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_query753 = new BitSet(new long[]{0x0000078000004480L});
+    public static final BitSet FOLLOW_normal_lhs_block_in_query782 = new BitSet(new long[]{0x0000000000004000L});
+    public static final BitSet FOLLOW_END_in_query787 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_query789 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_TEMPLATE_in_template817 = new BitSet(new long[]{0x0000000000100080L});
+    public static final BitSet FOLLOW_name_in_template821 = new BitSet(new long[]{0x0000000000000080L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_template823 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_template_slot_in_template838 = new BitSet(new long[]{0x0000000000004080L});
+    public static final BitSet FOLLOW_END_in_template853 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_template855 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_qualified_id_in_template_slot901 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_identifier_in_template_slot917 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_template_slot919 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULE_in_rule950 = new BitSet(new long[]{0x0000000000100080L});
+    public static final BitSet FOLLOW_name_in_rule954 = new BitSet(new long[]{0x10000003FD6E0000L});
+    public static final BitSet FOLLOW_rule_attributes_in_rule963 = new BitSet(new long[]{0x1000000000020000L});
+    public static final BitSet FOLLOW_WHEN_in_rule975 = new BitSet(new long[]{0x1000078000000480L,0x0000000000000200L});
+    public static final BitSet FOLLOW_73_in_rule977 = new BitSet(new long[]{0x1000078000000480L});
+    public static final BitSet FOLLOW_normal_lhs_block_in_rule988 = new BitSet(new long[]{0x1000000000000000L});
+    public static final BitSet FOLLOW_rhs_chunk_in_rule998 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ATTRIBUTES_in_rule_attributes1018 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
+    public static final BitSet FOLLOW_73_in_rule_attributes1020 = new BitSet(new long[]{0x00000003FD680000L});
+    public static final BitSet FOLLOW_rule_attribute_in_rule_attributes1028 = new BitSet(new long[]{0x00000003FD680802L});
+    public static final BitSet FOLLOW_COMMA_in_rule_attributes1035 = new BitSet(new long[]{0x00000003FD680000L});
+    public static final BitSet FOLLOW_rule_attribute_in_rule_attributes1040 = new BitSet(new long[]{0x00000003FD680802L});
+    public static final BitSet FOLLOW_salience_in_rule_attribute1077 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_no_loop_in_rule_attribute1085 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_agenda_group_in_rule_attribute1094 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_duration_in_rule_attribute1103 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_activation_group_in_rule_attribute1112 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_auto_focus_in_rule_attribute1120 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_date_effective_in_rule_attribute1128 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_date_expires_in_rule_attribute1136 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_enabled_in_rule_attribute1144 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ruleflow_group_in_rule_attribute1152 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_lock_on_active_in_rule_attribute1160 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_dialect_in_rule_attribute1167 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_DATE_EFFECTIVE_in_date_effective1193 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_STRING_in_date_effective1195 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_DATE_EXPIRES_in_date_expires1224 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_STRING_in_date_expires1226 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ENABLED_in_enabled1255 = new BitSet(new long[]{0x0000000000800000L});
+    public static final BitSet FOLLOW_BOOL_in_enabled1257 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_SALIENCE_in_salience1290 = new BitSet(new long[]{0x0000000002000400L});
+    public static final BitSet FOLLOW_INT_in_salience1301 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_paren_chunk_in_salience1316 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_NO_LOOP_in_no_loop1346 = new BitSet(new long[]{0x0000000000800002L});
+    public static final BitSet FOLLOW_BOOL_in_no_loop1359 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_AUTO_FOCUS_in_auto_focus1394 = new BitSet(new long[]{0x0000000000800002L});
+    public static final BitSet FOLLOW_BOOL_in_auto_focus1407 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ACTIVATION_GROUP_in_activation_group1443 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_STRING_in_activation_group1445 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_RULEFLOW_GROUP_in_ruleflow_group1473 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_STRING_in_ruleflow_group1475 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_AGENDA_GROUP_in_agenda_group1503 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_STRING_in_agenda_group1505 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_DURATION_in_duration1533 = new BitSet(new long[]{0x0000000002000000L});
+    public static final BitSet FOLLOW_INT_in_duration1535 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_DIALECT_in_dialect1563 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_STRING_in_dialect1565 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LOCK_ON_ACTIVE_in_lock_on_active1597 = new BitSet(new long[]{0x0000000000800002L});
+    public static final BitSet FOLLOW_BOOL_in_lock_on_active1610 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_lhs_in_normal_lhs_block1649 = new BitSet(new long[]{0x0000078000000482L});
+    public static final BitSet FOLLOW_lhs_or_in_lhs1686 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_or1711 = new BitSet(new long[]{0x0000000400000000L});
+    public static final BitSet FOLLOW_OR_in_lhs_or1713 = new BitSet(new long[]{0x0000078000000480L});
+    public static final BitSet FOLLOW_lhs_and_in_lhs_or1724 = new BitSet(new long[]{0x0000078000001480L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_or1734 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_lhs_and_in_lhs_or1752 = new BitSet(new long[]{0x0000000C00000002L});
+    public static final BitSet FOLLOW_set_in_lhs_or1760 = new BitSet(new long[]{0x0000078000000480L});
+    public static final BitSet FOLLOW_lhs_and_in_lhs_or1776 = new BitSet(new long[]{0x0000000C00000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_and1807 = new BitSet(new long[]{0x0000001000000000L});
+    public static final BitSet FOLLOW_AND_in_lhs_and1809 = new BitSet(new long[]{0x0000078000000480L});
+    public static final BitSet FOLLOW_lhs_unary_in_lhs_and1820 = new BitSet(new long[]{0x0000078000001480L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_and1830 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_lhs_unary_in_lhs_and1848 = new BitSet(new long[]{0x0000003000000002L});
+    public static final BitSet FOLLOW_set_in_lhs_and1856 = new BitSet(new long[]{0x0000078000000480L});
+    public static final BitSet FOLLOW_lhs_unary_in_lhs_and1872 = new BitSet(new long[]{0x0000003000000002L});
+    public static final BitSet FOLLOW_lhs_exist_in_lhs_unary1917 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_lhs_not_in_lhs_unary1935 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_lhs_eval_in_lhs_unary1954 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_lhs_forall_in_lhs_unary1973 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_unary1990 = new BitSet(new long[]{0x0000078000000480L});
+    public static final BitSet FOLLOW_lhs_or_in_lhs_unary1994 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_unary1996 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_pattern_source_in_lhs_unary2007 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_lhs_unary2019 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_lhs_pattern_in_pattern_source2046 = new BitSet(new long[]{0x0000004000000002L});
+    public static final BitSet FOLLOW_FROM_in_pattern_source2058 = new BitSet(new long[]{0x103FF8418147E2F0L});
+    public static final BitSet FOLLOW_accumulate_statement_in_pattern_source2114 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_collect_statement_in_pattern_source2137 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_from_statement_in_pattern_source2161 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_EXISTS_in_lhs_exist2204 = new BitSet(new long[]{0x0000000000000480L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_exist2224 = new BitSet(new long[]{0x0000078000000480L});
+    public static final BitSet FOLLOW_lhs_or_in_lhs_exist2228 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_exist2258 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_lhs_pattern_in_lhs_exist2308 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_NOT_in_lhs_not2360 = new BitSet(new long[]{0x0000000000000480L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_not2373 = new BitSet(new long[]{0x0000078000000480L});
+    public static final BitSet FOLLOW_lhs_or_in_lhs_not2377 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_not2408 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_lhs_pattern_in_lhs_not2445 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_EVAL_in_lhs_eval2491 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_paren_chunk_in_lhs_eval2502 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_FORALL_in_lhs_forall2528 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_lhs_forall2530 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_lhs_pattern_in_lhs_forall2534 = new BitSet(new long[]{0x0000000000001080L});
+    public static final BitSet FOLLOW_lhs_pattern_in_lhs_forall2549 = new BitSet(new long[]{0x0000000000001080L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_lhs_forall2565 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_fact_binding_in_lhs_pattern2598 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_fact_in_lhs_pattern2606 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_from_source_in_from_statement2633 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_identifier_in_from_source2662 = new BitSet(new long[]{0x0000000000000502L});
+    public static final BitSet FOLLOW_paren_chunk_in_from_source2690 = new BitSet(new long[]{0x0000000000000102L});
+    public static final BitSet FOLLOW_expression_chain_in_from_source2703 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ACCUMULATE_in_accumulate_statement2744 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_accumulate_statement2754 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_pattern_source_in_accumulate_statement2758 = new BitSet(new long[]{0x0000100000000880L});
+    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2760 = new BitSet(new long[]{0x0000100000000080L});
+    public static final BitSet FOLLOW_INIT_in_accumulate_statement2778 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2791 = new BitSet(new long[]{0x0000200000000800L});
+    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2793 = new BitSet(new long[]{0x0000200000000000L});
+    public static final BitSet FOLLOW_ACTION_in_accumulate_statement2804 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2808 = new BitSet(new long[]{0x0000C00000000800L});
+    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2810 = new BitSet(new long[]{0x0000C00000000000L});
+    public static final BitSet FOLLOW_REVERSE_in_accumulate_statement2823 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2827 = new BitSet(new long[]{0x0000800000000800L});
+    public static final BitSet FOLLOW_COMMA_in_accumulate_statement2829 = new BitSet(new long[]{0x0000800000000000L});
+    public static final BitSet FOLLOW_RESULT_in_accumulate_statement2846 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2850 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_ID_in_accumulate_statement2876 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_paren_chunk_in_accumulate_statement2880 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_accumulate_statement2897 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_DOT_in_expression_chain2926 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_identifier_in_expression_chain2930 = new BitSet(new long[]{0x0400000000000502L});
+    public static final BitSet FOLLOW_square_chunk_in_expression_chain2961 = new BitSet(new long[]{0x0000000000000102L});
+    public static final BitSet FOLLOW_paren_chunk_in_expression_chain2994 = new BitSet(new long[]{0x0000000000000102L});
+    public static final BitSet FOLLOW_expression_chain_in_expression_chain3009 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_COLLECT_in_collect_statement3060 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_collect_statement3070 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_pattern_source_in_collect_statement3074 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_collect_statement3076 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ID_in_fact_binding3108 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
+    public static final BitSet FOLLOW_73_in_fact_binding3110 = new BitSet(new long[]{0x0000000000000480L});
+    public static final BitSet FOLLOW_fact_in_fact_binding3124 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_fact_binding3140 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_fact_in_fact_binding3144 = new BitSet(new long[]{0x0000000C00001000L});
+    public static final BitSet FOLLOW_set_in_fact_binding3157 = new BitSet(new long[]{0x0000000000000080L});
+    public static final BitSet FOLLOW_fact_in_fact_binding3169 = new BitSet(new long[]{0x0000000C00001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_fact_binding3187 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_qualified_id_in_fact3242 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_fact3252 = new BitSet(new long[]{0x103EF2418147F6F0L});
+    public static final BitSet FOLLOW_constraints_in_fact3264 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_fact3271 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_EOF_in_fact3280 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_constraint_in_constraints3298 = new BitSet(new long[]{0x0000000000000802L});
+    public static final BitSet FOLLOW_COMMA_in_constraints3305 = new BitSet(new long[]{0x103EF2418147E6F0L});
+    public static final BitSet FOLLOW_constraint_in_constraints3314 = new BitSet(new long[]{0x0000000000000802L});
+    public static final BitSet FOLLOW_or_constr_in_constraint3347 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_and_constr_in_or_constr3370 = new BitSet(new long[]{0x0000000800000002L});
+    public static final BitSet FOLLOW_DOUBLE_PIPE_in_or_constr3378 = new BitSet(new long[]{0x103EF2418147E6F0L});
+    public static final BitSet FOLLOW_and_constr_in_or_constr3387 = new BitSet(new long[]{0x0000000800000002L});
+    public static final BitSet FOLLOW_unary_constr_in_and_constr3419 = new BitSet(new long[]{0x0000002000000002L});
+    public static final BitSet FOLLOW_DOUBLE_AMPER_in_and_constr3427 = new BitSet(new long[]{0x103EF2418147E6F0L});
+    public static final BitSet FOLLOW_unary_constr_in_and_constr3436 = new BitSet(new long[]{0x0000002000000002L});
+    public static final BitSet FOLLOW_field_constraint_in_unary_constr3464 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_unary_constr3472 = new BitSet(new long[]{0x103EF2418147E6F0L});
+    public static final BitSet FOLLOW_or_constr_in_unary_constr3474 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_unary_constr3477 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_EVAL_in_unary_constr3483 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_predicate_in_unary_constr3485 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ID_in_field_constraint3515 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000200L});
+    public static final BitSet FOLLOW_73_in_field_constraint3517 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_accessor_path_in_field_constraint3538 = new BitSet(new long[]{0x003E010000000402L,0x000000000001FC00L});
+    public static final BitSet FOLLOW_or_restr_connective_in_field_constraint3566 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_74_in_field_constraint3586 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_predicate_in_field_constraint3588 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_and_restr_connective_in_or_restr_connective3631 = new BitSet(new long[]{0x0000000800000002L});
+    public static final BitSet FOLLOW_DOUBLE_PIPE_in_or_restr_connective3655 = new BitSet(new long[]{0x003E010000000400L,0x000000000001F800L});
+    public static final BitSet FOLLOW_and_restr_connective_in_or_restr_connective3666 = new BitSet(new long[]{0x0000000800000002L});
+    public static final BitSet FOLLOW_constraint_expression_in_and_restr_connective3698 = new BitSet(new long[]{0x0000002000000002L});
+    public static final BitSet FOLLOW_DOUBLE_AMPER_in_and_restr_connective3719 = new BitSet(new long[]{0x003E010000000400L,0x000000000001F800L});
+    public static final BitSet FOLLOW_constraint_expression_in_and_restr_connective3730 = new BitSet(new long[]{0x0000002000000002L});
+    public static final BitSet FOLLOW_compound_operator_in_constraint_expression3767 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_simple_operator_in_constraint_expression3774 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_constraint_expression3781 = new BitSet(new long[]{0x003E010000000400L,0x000000000001F800L});
+    public static final BitSet FOLLOW_or_restr_connective_in_constraint_expression3790 = new BitSet(new long[]{0x0000000000001000L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_constraint_expression3796 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_75_in_simple_operator3827 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_76_in_simple_operator3835 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_77_in_simple_operator3843 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_78_in_simple_operator3851 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_79_in_simple_operator3859 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_80_in_simple_operator3867 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_CONTAINS_in_simple_operator3875 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_NOT_in_simple_operator3883 = new BitSet(new long[]{0x0002000000000000L});
+    public static final BitSet FOLLOW_CONTAINS_in_simple_operator3887 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_EXCLUDES_in_simple_operator3895 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_MATCHES_in_simple_operator3903 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_NOT_in_simple_operator3911 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_MATCHES_in_simple_operator3915 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_MEMBEROF_in_simple_operator3923 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_NOT_in_simple_operator3931 = new BitSet(new long[]{0x0010000000000000L});
+    public static final BitSet FOLLOW_MEMBEROF_in_simple_operator3935 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_expression_value_in_simple_operator3949 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_IN_in_compound_operator3979 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_NOT_in_compound_operator3991 = new BitSet(new long[]{0x0020000000000000L});
+    public static final BitSet FOLLOW_IN_in_compound_operator3993 = new BitSet(new long[]{0x0000000000000400L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_compound_operator4008 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_expression_value_in_compound_operator4012 = new BitSet(new long[]{0x0000000000001800L});
+    public static final BitSet FOLLOW_COMMA_in_compound_operator4019 = new BitSet(new long[]{0x10FEF04183D7E6F0L});
+    public static final BitSet FOLLOW_expression_value_in_compound_operator4023 = new BitSet(new long[]{0x0000000000001800L});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_compound_operator4032 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_accessor_path_in_expression_value4066 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_literal_constraint_in_expression_value4086 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_paren_chunk_in_expression_value4100 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_STRING_in_literal_constraint4143 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_INT_in_literal_constraint4154 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_FLOAT_in_literal_constraint4167 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_BOOL_in_literal_constraint4178 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_NULL_in_literal_constraint4190 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_paren_chunk_in_predicate4228 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_CURLY_in_curly_chunk4246 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_set_in_curly_chunk4250 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_curly_chunk_in_curly_chunk4259 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_RIGHT_CURLY_in_curly_chunk4264 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_paren_chunk4278 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_set_in_paren_chunk4282 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_paren_chunk_in_paren_chunk4291 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_RIGHT_PAREN_in_paren_chunk4296 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_SQUARE_in_square_chunk4309 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_set_in_square_chunk4313 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_square_chunk_in_square_chunk4322 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_RIGHT_SQUARE_in_square_chunk4327 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ID_in_qualified_id4356 = new BitSet(new long[]{0x0400000000000102L});
+    public static final BitSet FOLLOW_DOT_in_qualified_id4362 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_identifier_in_qualified_id4364 = new BitSet(new long[]{0x0400000000000102L});
+    public static final BitSet FOLLOW_LEFT_SQUARE_in_qualified_id4373 = new BitSet(new long[]{0x0800000000000000L});
+    public static final BitSet FOLLOW_RIGHT_SQUARE_in_qualified_id4375 = new BitSet(new long[]{0x0400000000000002L});
+    public static final BitSet FOLLOW_identifier_in_dotted_name4409 = new BitSet(new long[]{0x0400000000000102L});
+    public static final BitSet FOLLOW_DOT_in_dotted_name4415 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_identifier_in_dotted_name4419 = new BitSet(new long[]{0x0400000000000102L});
+    public static final BitSet FOLLOW_LEFT_SQUARE_in_dotted_name4428 = new BitSet(new long[]{0x0800000000000000L});
+    public static final BitSet FOLLOW_RIGHT_SQUARE_in_dotted_name4430 = new BitSet(new long[]{0x0400000000000002L});
+    public static final BitSet FOLLOW_accessor_element_in_accessor_path4464 = new BitSet(new long[]{0x0000000000000102L});
+    public static final BitSet FOLLOW_DOT_in_accessor_path4470 = new BitSet(new long[]{0x103EF0418147E2F0L});
+    public static final BitSet FOLLOW_accessor_element_in_accessor_path4474 = new BitSet(new long[]{0x0000000000000102L});
+    public static final BitSet FOLLOW_identifier_in_accessor_element4512 = new BitSet(new long[]{0x0400000000000002L});
+    public static final BitSet FOLLOW_square_chunk_in_accessor_element4519 = new BitSet(new long[]{0x0400000000000002L});
+    public static final BitSet FOLLOW_THEN_in_rhs_chunk4540 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_set_in_rhs_chunk4548 = new BitSet(new long[]{0xFFFFFFFFFFFFFFF0L,0x000000000001FFFFL});
+    public static final BitSet FOLLOW_END_in_rhs_chunk4572 = new BitSet(new long[]{0x0000000000000002L,0x0000000000000080L});
+    public static final BitSet FOLLOW_opt_semicolon_in_rhs_chunk4574 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_ID_in_name4608 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_STRING_in_name4616 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_set_in_identifier0 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_EXISTS_in_synpred11963 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_NOT_in_synpred21981 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_EVAL_in_synpred32000 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_FORALL_in_synpred42019 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_synpred52038 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_SQUARE_in_synpred63007 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_LEFT_PAREN_in_synpred73040 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_DOUBLE_PIPE_in_synpred83709 = new BitSet(new long[]{0x003E010000000800L,0x000000000001F800L});
-    public static final BitSet FOLLOW_and_restr_connective_in_synpred83720 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_DOUBLE_AMPER_in_synpred93773 = new BitSet(new long[]{0x003E010000000800L,0x000000000001F800L});
-    public static final BitSet FOLLOW_constraint_expression_in_synpred93784 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_EXISTS_in_synpred11909 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_NOT_in_synpred21927 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_EVAL_in_synpred31946 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_FORALL_in_synpred41965 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_synpred51984 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_SQUARE_in_synpred62953 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_LEFT_PAREN_in_synpred72986 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_DOUBLE_PIPE_in_synpred83655 = new BitSet(new long[]{0x003E010000000400L,0x000000000001F800L});
+    public static final BitSet FOLLOW_and_restr_connective_in_synpred83666 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_DOUBLE_AMPER_in_synpred93719 = new BitSet(new long[]{0x003E010000000400L,0x000000000001F800L});
+    public static final BitSet FOLLOW_constraint_expression_in_synpred93730 = new BitSet(new long[]{0x0000000000000002L});
 
 }
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g	2007-08-16 07:03:30 UTC (rev 14295)
+++ labs/jbossrules/trunk/drools-compiler/src/main/resources/org/drools/lang/DRL.g	2007-08-16 07:20:31 UTC (rev 14296)
@@ -212,19 +212,20 @@
 	:	( pkgstmt=package_statement { packageName = $pkgstmt.packageName; } )?
 		{ 
 			this.packageDescr = factory.createPackage( packageName ); 
-		}
-		(ATTRIBUTES ':')?
-		(	a=rule_attribute
- 	  		{
- 	  	        	this.packageDescr.addAttribute( a );
-	                }
- 	  	(       ','? a=rule_attribute
- 	  		{
- 	  	        	this.packageDescr.addAttribute( a );
-	                }
- 	  	)* )?	
+		}	
 	;
 	
+
+statement
+	:	a=rule_attribute { this.packageDescr.addAttribute( a ); }
+	|	function_import_statement 
+	|	import_statement 
+	|	global 
+	|	function 
+	|       t=template { this.packageDescr.addFactTemplate( $t.template ); }
+	|	r=rule { this.packageDescr.addRule( $r.rule ); }			
+	|	q=query	{ this.packageDescr.addRule( $q.query ); }
+	;
 package_statement returns [String packageName]
 	@init{
 		$packageName = null;
@@ -235,15 +236,6 @@
 			$packageName = $n.text;
 		}
 	;
-statement
-	:	function_import_statement 
-	|	import_statement 
-	|	global 
-	|	function 
-	|       t=template { this.packageDescr.addFactTemplate( $t.template ); }
-	|	r=rule { this.packageDescr.addRule( $r.rule ); }			
-	|	q=query	{ this.packageDescr.addRule( $q.query ); }
-	;
 
 	
 

Modified: labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java	2007-08-16 07:03:30 UTC (rev 14295)
+++ labs/jbossrules/trunk/drools-compiler/src/test/java/org/drools/lang/RuleParserTest.java	2007-08-16 07:20:31 UTC (rev 14296)
@@ -2,13 +2,13 @@
 
 /*
  * Copyright 2005 JBoss Inc
- * 
+ *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
- * 
+ *
  *      http://www.apache.org/licenses/LICENSE-2.0
- * 
+ *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@@ -614,101 +614,101 @@
 
     //        public void testFrom() throws Exception {
     //            final RuleDescr rule = parseResource( "from.drl" ).rule();
-    //    
+    //
     //            if(parser.hasErrors()) {
     //                System.err.println(parser.getErrorMessages());
     //            }
     //            assertFalse(parser.hasErrors());
-    //            
+    //
     //            assertNotNull( rule );
-    //    
+    //
     //            assertEquals( "using_from",
     //                          rule.getName() );
-    //    
+    //
     //            assertEquals(9, rule.getLhs().getDescrs().size());
-    //            
+    //
     //            FromDescr from = (FromDescr) rule.getLhs().getDescrs().get(0);
-    //            
+    //
     //            assertEquals(3, from.getLine());
-    //            
+    //
     //            assertEquals("Foo", from.getReturnedPattern().getObjectType());
     //            assertTrue(from.getDataSource() instanceof FieldAccessDescr);
-    //            assertEquals("baz", ((FieldAccessDescr) from.getDataSource()).getFieldName());        
+    //            assertEquals("baz", ((FieldAccessDescr) from.getDataSource()).getFieldName());
     //            assertEquals("bar", ((FieldAccessDescr) from.getDataSource()).getVariableName());
-    //            
-    //            
+    //
+    //
     //            ArgumentValueDescr arg = null;
-    //            
+    //
     //            from = (FromDescr) rule.getLhs().getDescrs().get(1);
     //            assertEquals("Foo", from.getReturnedPattern().getObjectType());
     //            assertEquals(0, from.getReturnedPattern().getDescrs().size());
     //            FieldAccessDescr fieldAccess = ( FieldAccessDescr ) from.getDataSource();
     //            arg = ( ArgumentValueDescr ) fieldAccess.getArgument();
     //            assertEquals(ArgumentValueDescr.STRING,  arg.getType() );
-    //            
+    //
     //            from = (FromDescr) rule.getLhs().getDescrs().get(2);
     //            fieldAccess = ( FieldAccessDescr ) from.getDataSource();
     //            arg = ( ArgumentValueDescr ) fieldAccess.getArgument();
-    //            assertEquals(ArgumentValueDescr.VARIABLE,  arg.getType() );        
-    //            
+    //            assertEquals(ArgumentValueDescr.VARIABLE,  arg.getType() );
+    //
     //            from = (FromDescr) rule.getLhs().getDescrs().get(3);
     //            fieldAccess = ( FieldAccessDescr ) from.getDataSource();
     //            arg = ( ArgumentValueDescr ) fieldAccess.getArgument();
     //            assertEquals(ArgumentValueDescr.INTEGRAL,  arg.getType() );
-    //            
+    //
     //            from = (FromDescr) rule.getLhs().getDescrs().get(4);
     //            assertEquals("Whee", from.getReturnedColumn().getObjectType());
     //            assertEquals(1, from.getReturnedColumn().getDescrs().size());
     //            assertTrue(from.getDataSource() instanceof FunctionCallDescr);
-    //            assertEquals("whee", ((FunctionCallDescr) from.getDataSource()).getName());        
+    //            assertEquals("whee", ((FunctionCallDescr) from.getDataSource()).getName());
     //            assertEquals(1, ((FunctionCallDescr) from.getDataSource()).getArguments().size());
     //            arg = ( (ArgumentValueDescr )((FunctionCallDescr) from.getDataSource()).getArguments().get(0));
     //            assertEquals("y", arg.getValue());
     //            assertEquals(ArgumentValueDescr.STRING, arg.getType());
-    //    
+    //
     //            assertEquals(7, from.getLine());
     //            assertEquals(7, from.getReturnedColumn().getLine());
-    //            
+    //
     //            from = (FromDescr) rule.getLhs().getDescrs().get(5);
     //            assertEquals("Foo", from.getReturnedColumn().getObjectType());
     //            assertEquals(1, from.getReturnedColumn().getDescrs().size());
     //            assertEquals("f", from.getReturnedColumn().getIdentifier());
     //            assertTrue(from.getDataSource() instanceof MethodAccessDescr);
-    //            assertEquals("bar", ((MethodAccessDescr) from.getDataSource()).getVariableName());        
+    //            assertEquals("bar", ((MethodAccessDescr) from.getDataSource()).getVariableName());
     //            assertEquals("la", ((MethodAccessDescr) from.getDataSource()).getMethodName());
     //            assertEquals(1, ((MethodAccessDescr) from.getDataSource()).getArguments().size());
     //            arg = (ArgumentValueDescr) ((MethodAccessDescr) from.getDataSource()).getArguments().get(0);
-    //            
-    //            
+    //
+    //
     //            assertEquals("x", arg.getValue());
     //            assertEquals(ArgumentValueDescr.VARIABLE, arg.getType());
-    //    
+    //
     //            assertEqualsIgnoreWhitespace("whee();", ( String ) rule.getConsequence());
-    //            
+    //
     //            from = (FromDescr) rule.getLhs().getDescrs().get(6);
     //            assertEquals("wa", ((FunctionCallDescr)from.getDataSource()).getName());
-    //    
+    //
     //            from = (FromDescr) rule.getLhs().getDescrs().get(7);
     //            MethodAccessDescr meth = (MethodAccessDescr)from.getDataSource();
     //            assertEquals("wa", meth.getMethodName());
     //            assertEquals("la", meth.getVariableName());
-    //            
+    //
     //            arg = (ArgumentValueDescr) meth.getArguments().get(0);
     //            assertEquals("42", arg.getValue());
     //            assertEquals(ArgumentValueDescr.INTEGRAL, arg.getType());
-    //            
+    //
     //            arg = (ArgumentValueDescr) meth.getArguments().get(1);
     //            assertEquals("42.42", arg.getValue());
     //            assertEquals(ArgumentValueDescr.DECIMAL, arg.getType());
-    //    
+    //
     //            arg = (ArgumentValueDescr) meth.getArguments().get(2);
     //            assertEquals("false", arg.getValue());
     //            assertEquals(ArgumentValueDescr.BOOLEAN, arg.getType());
-    //            
+    //
     //            arg = (ArgumentValueDescr) meth.getArguments().get(3);
     //            assertEquals("null", arg.getValue());
-    //            assertEquals(ArgumentValueDescr.NULL, arg.getType());                                
-    //            
+    //            assertEquals(ArgumentValueDescr.NULL, arg.getType());
+    //
     //            assertEquals("Bam", ((PatternDescr)rule.getLhs().getDescrs().get(8)).getObjectType());
     //        }
 
@@ -885,7 +885,7 @@
     }
 
     public void testLineNumberInAST() throws Exception {
-        //also see testSimpleExpander to see how this works with an expander (should be the same). 
+        //also see testSimpleExpander to see how this works with an expander (should be the same).
 
         final RuleDescr rule = parseResource( "simple_rule.drl" ).rule();
 
@@ -2169,12 +2169,12 @@
     }
 
     public void testPackageGarbage() throws Exception {
-        
+
         parseResource( "package_garbage.drl" ).compilation_unit();
         assertTrue(this.parser.hasErrors());
     }
-    
-    
+
+
     public void testPackageAttributes() throws Exception {
         parseResource( "package_attributes.drl" ).compilation_unit();
         assertFalse( this.parser.getErrorMessages().toString(),
@@ -2195,6 +2195,9 @@
         assertEquals( 2,
                       pkg.getRules().size() );
 
+        assertEquals(2, pkg.getImports().size() );
+
+
         RuleDescr rule = (RuleDescr) pkg.getRules().get( 0 );
         assertEquals( "bar",
                       rule.getName() );
@@ -3361,9 +3364,9 @@
         assertEquals( 1,
                       descrs.getDescrs().size() );
         PatternDescr pat = (PatternDescr) descrs.getDescrs().get( 0 );
-        assertEquals( "org.drools.Message", 
+        assertEquals( "org.drools.Message",
                       pat.getObjectType() );
-        
+
         FieldConstraintDescr fieldConstr = (FieldConstraintDescr) pat.getConstraint().getDescrs().get( 0 );
         QualifiedIdentifierRestrictionDescr restr = (QualifiedIdentifierRestrictionDescr) fieldConstr.getRestrictions().get( 0 );
 

Modified: labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/package_attributes.drl
===================================================================
--- labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/package_attributes.drl	2007-08-16 07:03:30 UTC (rev 14295)
+++ labs/jbossrules/trunk/drools-compiler/src/test/resources/org/drools/lang/package_attributes.drl	2007-08-16 07:20:31 UTC (rev 14296)
@@ -1,9 +1,16 @@
 package com.foo;
 
+agenda-group "x"
 
-agenda-group "x"
+import goo.ber
+import wee.waa
+
+
 dialect "java"
 
+
+
+
 rule bar
   when
   then




More information about the jboss-svn-commits mailing list