compatibility among different JDT versions: translate generated constants.
diff --git a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/DOMAdaptation.java b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/DOMAdaptation.java
index 47f29ef..2001aed 100644
--- a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/DOMAdaptation.java
+++ b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/DOMAdaptation.java
@@ -10,12 +10,18 @@
  *******************************************************************************/
 package org.eclipse.objectteams.internal.jdt.nullity;
 
+import java.lang.reflect.Field;
+import java.util.Locale;
+import java.util.MissingResourceException;
+import java.util.ResourceBundle;
+
 import org.eclipse.jdt.core.compiler.InvalidInputException;
 import org.eclipse.jdt.core.dom.BodyDeclaration;
 import org.eclipse.jdt.core.dom.IExtendedModifier;
 import org.eclipse.jdt.core.dom.MarkerAnnotation;
 import org.eclipse.jdt.core.dom.Modifier;
-import org.eclipse.jdt.internal.compiler.parser.TerminalTokens;
+import org.eclipse.jdt.internal.compiler.ast.Annotation;
+import org.eclipse.jdt.internal.compiler.batch.Main;
 
 import base org.eclipse.jdt.core.dom.ASTConverter;
 
@@ -27,55 +33,101 @@
 @SuppressWarnings({ "decapsulation", "restriction" })
 public team class DOMAdaptation {
 	
+	int [] translation = new int[1024];
+
+	@SuppressWarnings("nls")
+	public void initVersion() {
+		if (this.translation == null) {
+			this.translation = new int[1024];
+			ResourceBundle bundle = Main.ResourceBundleFactory.getBundle(Locale.getDefault());
+			try {
+				String otVersion = bundle.getString("otdtc.version");
+				if (otVersion.contains("2.0.0"))
+					initTranslation(TerminalTokens_OT200.class);
+				else if (otVersion.contains("2.0.1"))
+					initTranslation(TerminalTokens_OT201.class);
+				else if (otVersion.contains("2.1.0 M1"))
+					initTranslation(TerminalTokens_OT21M1.class);
+			} catch (MissingResourceException mre) {
+				String version = bundle.getString("compiler.version");
+				if (version.contains("3.7.0"))
+					initTranslation(TerminalTokens_R370.class);
+				else if (version.contains("3.7.1"))
+					initTranslation(TerminalTokens_B74R37x.class);
+				else if (version.contains("3.8.0 M1"))
+					initTranslation(TerminalTokens_R38M1.class);
+			}
+		}
+	}
+	void initTranslation(Class<?> terminalTokensClass) {
+		for (Field field :terminalTokensClass.getDeclaredFields()) {
+			try {
+				int thisValue = field.getInt(null);
+				int ot21m1Value = TerminalTokens_OT21M1.class.getField(field.getName()).getInt(null);
+				this.translation[thisValue] = ot21m1Value;
+			} catch (Exception e) {
+				e.printStackTrace();
+			}
+		}
+	}
+	
 	protected class Converter playedBy ASTConverter {
 		
+		
 		void setModifiers(BodyDeclaration bodyDeclaration, org.eclipse.jdt.internal.compiler.ast.Annotation[] annotations, int modifiersEnd)
 		<- replace void setModifiers(BodyDeclaration bodyDeclaration, org.eclipse.jdt.internal.compiler.ast.Annotation[] annotations, int modifiersEnd);
 		
-		@SuppressWarnings({ "inferredcallout", "basecall" })
+		@SuppressWarnings({ "basecall", "inferredcallout" })
 		callin void setModifiers(BodyDeclaration bodyDeclaration, org.eclipse.jdt.internal.compiler.ast.Annotation[] annotations, int modifiersEnd) {
 			this.scanner.tokenizeWhiteSpace = false;
 			try {
 				int token;
 				int indexInAnnotations = 0;
+//{Modification:
+				initVersion();
+				while ((token = translation[this.scanner.getNextToken()]) != TerminalTokens_OT21M1.TokenNameEOF) {
+/* orig:
 				while ((token = this.scanner.getNextToken()) != TerminalTokens.TokenNameEOF) {
+  */
 					IExtendedModifier modifier = null;
+//  :giro 
 		switchToken:
+// SH}
 					switch(token) {
-						case TerminalTokens.TokenNameabstract:
+						case TerminalTokens_OT21M1.TokenNameabstract:
 							modifier = createModifier(Modifier.ModifierKeyword.ABSTRACT_KEYWORD);
 							break;
-						case TerminalTokens.TokenNamepublic:
+						case TerminalTokens_OT21M1.TokenNamepublic:
 							modifier = createModifier(Modifier.ModifierKeyword.PUBLIC_KEYWORD);
 							break;
-						case TerminalTokens.TokenNamestatic:
+						case TerminalTokens_OT21M1.TokenNamestatic:
 							modifier = createModifier(Modifier.ModifierKeyword.STATIC_KEYWORD);
 							break;
-						case TerminalTokens.TokenNameprotected:
+						case TerminalTokens_OT21M1.TokenNameprotected:
 							modifier = createModifier(Modifier.ModifierKeyword.PROTECTED_KEYWORD);
 							break;
-						case TerminalTokens.TokenNameprivate:
+						case TerminalTokens_OT21M1.TokenNameprivate:
 							modifier = createModifier(Modifier.ModifierKeyword.PRIVATE_KEYWORD);
 							break;
-						case TerminalTokens.TokenNamefinal:
+						case TerminalTokens_OT21M1.TokenNamefinal:
 							modifier = createModifier(Modifier.ModifierKeyword.FINAL_KEYWORD);
 							break;
-						case TerminalTokens.TokenNamenative:
+						case TerminalTokens_OT21M1.TokenNamenative:
 							modifier = createModifier(Modifier.ModifierKeyword.NATIVE_KEYWORD);
 							break;
-						case TerminalTokens.TokenNamesynchronized:
+						case TerminalTokens_OT21M1.TokenNamesynchronized:
 							modifier = createModifier(Modifier.ModifierKeyword.SYNCHRONIZED_KEYWORD);
 							break;
-						case TerminalTokens.TokenNametransient:
+						case TerminalTokens_OT21M1.TokenNametransient:
 							modifier = createModifier(Modifier.ModifierKeyword.TRANSIENT_KEYWORD);
 							break;
-						case TerminalTokens.TokenNamevolatile:
+						case TerminalTokens_OT21M1.TokenNamevolatile:
 							modifier = createModifier(Modifier.ModifierKeyword.VOLATILE_KEYWORD);
 							break;
-						case TerminalTokens.TokenNamestrictfp:
+						case TerminalTokens_OT21M1.TokenNamestrictfp:
 							modifier = createModifier(Modifier.ModifierKeyword.STRICTFP_KEYWORD);
 							break;
-						case TerminalTokens.TokenNameAT :
+						case TerminalTokens_OT21M1.TokenNameAT :
 							// we have an annotation
 							if (annotations != null && indexInAnnotations < annotations.length) {
 //{Modification: skip synthetic annotations
@@ -93,9 +145,9 @@
 								this.scanner.resetTo(annotation.declarationSourceEnd + 1, modifiersEnd);
 							}
 							break;
-						case TerminalTokens.TokenNameCOMMENT_BLOCK :
-						case TerminalTokens.TokenNameCOMMENT_LINE :
-						case TerminalTokens.TokenNameCOMMENT_JAVADOC :
+						case TerminalTokens_OT21M1.TokenNameCOMMENT_BLOCK :
+						case TerminalTokens_OT21M1.TokenNameCOMMENT_LINE :
+						case TerminalTokens_OT21M1.TokenNameCOMMENT_JAVADOC :
 							break;
 						default :
 							// there is some syntax errors in source code
diff --git a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_B74R37x.java b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_B74R37x.java
new file mode 100755
index 0000000..b2f2b65
--- /dev/null
+++ b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_B74R37x.java
@@ -0,0 +1,147 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2011 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.objectteams.internal.jdt.nullity;
+
+/**
+ * IMPORTANT NOTE: These constants are dedicated to the internal Scanner implementation.
+ * It is mirrored in org.eclipse.jdt.core.compiler public package where it is API.
+ * The mirror implementation is using the backward compatible ITerminalSymbols constant
+ * definitions (stable with 2.0), whereas the internal implementation uses TerminalTokens
+ * which constant values reflect the latest parser generation state.
+ */
+/**
+ * Maps each terminal symbol in the java-grammar into a unique integer.
+ * This integer is used to represent the terminal when computing a parsing action.
+ *
+ * Disclaimer : These constant values are generated automatically using a Java
+ * grammar, therefore their actual values are subject to change if new keywords
+ * were added to the language (for instance, 'assert' is a keyword in 1.4).
+ */
+// captured constants as of v_B74_R37x
+public interface TerminalTokens_B74R37x {
+
+	// special tokens not part of grammar - not autogenerated
+	int TokenNameWHITESPACE = 1000,
+		TokenNameCOMMENT_LINE = 1001,
+		TokenNameCOMMENT_BLOCK = 1002,
+		TokenNameCOMMENT_JAVADOC = 1003;
+
+	int TokenNameIdentifier = 26,
+		TokenNameabstract = 56,
+		TokenNameassert = 74,
+		TokenNameboolean = 32,
+		TokenNamebreak = 75,
+		TokenNamebyte = 33,
+		TokenNamecase = 102,
+		TokenNamecatch = 100,
+		TokenNamechar = 34,
+		TokenNameclass = 72,
+		TokenNamecontinue = 76,
+		TokenNameconst = 108,
+		TokenNamedefault = 97,
+		TokenNamedo = 77,
+		TokenNamedouble = 35,
+		TokenNameelse = 104,
+		TokenNameenum = 98,
+		TokenNameextends = 99,
+		TokenNamefalse = 44,
+		TokenNamefinal = 57,
+		TokenNamefinally = 103,
+		TokenNamefloat = 36,
+		TokenNamefor = 78,
+		TokenNamegoto = 109,
+		TokenNameif = 79,
+		TokenNameimplements = 106,
+		TokenNameimport = 101,
+		TokenNameinstanceof = 13,
+		TokenNameint = 37,
+		TokenNameinterface = 95,
+		TokenNamelong = 38,
+		TokenNamenative = 58,
+		TokenNamenew = 43,
+		TokenNamenull = 45,
+		TokenNamepackage = 96,
+		TokenNameprivate = 59,
+		TokenNameprotected = 60,
+		TokenNamepublic = 61,
+		TokenNamereturn = 80,
+		TokenNameshort = 39,
+		TokenNamestatic = 54,
+		TokenNamestrictfp = 62,
+		TokenNamesuper = 41,
+		TokenNameswitch = 81,
+		TokenNamesynchronized = 55,
+		TokenNamethis = 42,
+		TokenNamethrow = 82,
+		TokenNamethrows = 105,
+		TokenNametransient = 63,
+		TokenNametrue = 46,
+		TokenNametry = 83,
+		TokenNamevoid = 40,
+		TokenNamevolatile = 64,
+		TokenNamewhile = 73,
+		TokenNameIntegerLiteral = 47,
+		TokenNameLongLiteral = 48,
+		TokenNameFloatingPointLiteral = 49,
+		TokenNameDoubleLiteral = 50,
+		TokenNameCharacterLiteral = 51,
+		TokenNameStringLiteral = 52,
+		TokenNamePLUS_PLUS = 8,
+		TokenNameMINUS_MINUS = 9,
+		TokenNameEQUAL_EQUAL = 18,
+		TokenNameLESS_EQUAL = 14,
+		TokenNameGREATER_EQUAL = 15,
+		TokenNameNOT_EQUAL = 19,
+		TokenNameLEFT_SHIFT = 17,
+		TokenNameRIGHT_SHIFT = 10,
+		TokenNameUNSIGNED_RIGHT_SHIFT = 12,
+		TokenNamePLUS_EQUAL = 84,
+		TokenNameMINUS_EQUAL = 85,
+		TokenNameMULTIPLY_EQUAL = 86,
+		TokenNameDIVIDE_EQUAL = 87,
+		TokenNameAND_EQUAL = 88,
+		TokenNameOR_EQUAL = 89,
+		TokenNameXOR_EQUAL = 90,
+		TokenNameREMAINDER_EQUAL = 91,
+		TokenNameLEFT_SHIFT_EQUAL = 92,
+		TokenNameRIGHT_SHIFT_EQUAL = 93,
+		TokenNameUNSIGNED_RIGHT_SHIFT_EQUAL = 94,
+		TokenNameOR_OR = 25,
+		TokenNameAND_AND = 24,
+		TokenNamePLUS = 1,
+		TokenNameMINUS = 2,
+		TokenNameNOT = 66,
+		TokenNameREMAINDER = 5,
+		TokenNameXOR = 21,
+		TokenNameAND = 20,
+		TokenNameMULTIPLY = 4,
+		TokenNameOR = 22,
+		TokenNameTWIDDLE = 67,
+		TokenNameDIVIDE = 6,
+		TokenNameGREATER = 11,
+		TokenNameLESS = 7,
+		TokenNameLPAREN = 29,
+		TokenNameRPAREN = 28,
+		TokenNameLBRACE = 68,
+		TokenNameRBRACE = 31,
+		TokenNameLBRACKET = 16,
+		TokenNameRBRACKET = 70,
+		TokenNameSEMICOLON = 27,
+		TokenNameQUESTION = 23,
+		TokenNameCOLON = 65,
+		TokenNameCOMMA = 30,
+		TokenNameDOT = 3,
+		TokenNameEQUAL = 71,
+		TokenNameAT = 53,
+		TokenNameELLIPSIS = 107,
+		TokenNameEOF = 69,
+		TokenNameERROR = 110;
+}
diff --git a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT200.java b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT200.java
new file mode 100644
index 0000000..22d648a
--- /dev/null
+++ b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT200.java
@@ -0,0 +1,157 @@
+package org.eclipse.objectteams.internal.jdt.nullity;
+
+/**
+ * IMPORTANT NOTE: These constants are dedicated to the internal Scanner implementation.
+ * It is mirrored in org.eclipse.jdt.core.compiler public package where it is API.
+ * The mirror implementation is using the backward compatible ITerminalSymbols constant
+ * definitions (stable with 2.0), whereas the internal implementation uses TerminalTokens
+ * which constant values reflect the latest parser generation state.
+ */
+/**
+ * Maps each terminal symbol in the java-grammar into a unique integer.
+ * This integer is used to represent the terminal when computing a parsing action.
+ *
+ * Disclaimer : These constant values are generated automatically using a Java
+ * grammar, therefore their actual values are subject to change if new keywords
+ * were added to the language (for instance, 'assert' is a keyword in 1.4).
+ */
+public interface TerminalTokens_OT200 {
+
+	// special tokens not part of grammar - not autogenerated
+	int
+	    TokenNameWHITESPACE = 1000,
+		TokenNameCOMMENT_LINE = 1001,
+		TokenNameCOMMENT_BLOCK = 1002,
+		TokenNameCOMMENT_JAVADOC = 1003;
+
+	int
+      TokenNameIdentifier = 22,
+      TokenNameabstract = 60,
+      TokenNameassert = 94,
+      TokenNameboolean = 33,
+      TokenNamebreak = 95,
+      TokenNamebyte = 34,
+      TokenNamecase = 113,
+      TokenNamecatch = 115,
+      TokenNamechar = 35,
+      TokenNameclass = 77,
+      TokenNamecontinue = 96,
+      TokenNameconst = 127,
+      TokenNamedefault = 108,
+      TokenNamedo = 97,
+      TokenNamedouble = 36,
+      TokenNameelse = 116,
+      TokenNameenum = 105,
+      TokenNameextends = 107,
+      TokenNamefalse = 47,
+      TokenNamefinal = 61,
+      TokenNamefinally = 117,
+      TokenNamefloat = 37,
+      TokenNamefor = 98,
+      TokenNamegoto = 128,
+      TokenNameif = 99,
+      TokenNameimplements = 125,
+      TokenNameimport = 111,
+      TokenNameinstanceof = 14,
+      TokenNameint = 38,
+      TokenNameinterface = 80,
+      TokenNamelong = 39,
+      TokenNamenative = 62,
+      TokenNamenew = 44,
+      TokenNamenull = 48,
+      TokenNamepackage = 112,
+      TokenNameprivate = 63,
+      TokenNameprotected = 64,
+      TokenNamepublic = 65,
+      TokenNamereturn = 100,
+      TokenNameshort = 40,
+      TokenNamestatic = 57,
+      TokenNamestrictfp = 66,
+      TokenNamesuper = 42,
+      TokenNameswitch = 101,
+      TokenNamesynchronized = 58,
+      TokenNamethis = 43,
+      TokenNamethrow = 102,
+      TokenNamethrows = 118,
+      TokenNametransient = 67,
+      TokenNametrue = 49,
+      TokenNametry = 103,
+      TokenNamevoid = 41,
+      TokenNamevolatile = 68,
+      TokenNamewhile = 81,
+      TokenNameas = 82,
+      TokenNamebase = 31,
+      TokenNamecallin = 69,
+      TokenNameplayedBy = 126,
+      TokenNameprecedence = 114,
+      TokenNamereadonly = 70,
+      TokenNameteam = 59,
+      TokenNametsuper = 45,
+      TokenNamewhen = 109,
+      TokenNamewith = 110,
+      TokenNamewithin = 104,
+      TokenNamereplace = 121,
+      TokenNameafter = 119,
+      TokenNamebefore = 122,
+      TokenNameget = 123,
+      TokenNameset = 124,
+      TokenNameIntegerLiteral = 50,
+      TokenNameLongLiteral = 51,
+      TokenNameFloatingPointLiteral = 52,
+      TokenNameDoubleLiteral = 53,
+      TokenNameCharacterLiteral = 54,
+      TokenNameStringLiteral = 55,
+      TokenNamePLUS_PLUS = 9,
+      TokenNameMINUS_MINUS = 10,
+      TokenNameEQUAL_EQUAL = 18,
+      TokenNameLESS_EQUAL = 15,
+      TokenNameGREATER_EQUAL = 16,
+      TokenNameNOT_EQUAL = 19,
+      TokenNameLEFT_SHIFT = 17,
+      TokenNameRIGHT_SHIFT = 11,
+      TokenNameUNSIGNED_RIGHT_SHIFT = 13,
+      TokenNamePLUS_EQUAL = 83,
+      TokenNameMINUS_EQUAL = 84,
+      TokenNameMULTIPLY_EQUAL = 85,
+      TokenNameDIVIDE_EQUAL = 86,
+      TokenNameAND_EQUAL = 87,
+      TokenNameOR_EQUAL = 88,
+      TokenNameXOR_EQUAL = 89,
+      TokenNameREMAINDER_EQUAL = 90,
+      TokenNameLEFT_SHIFT_EQUAL = 91,
+      TokenNameRIGHT_SHIFT_EQUAL = 92,
+      TokenNameUNSIGNED_RIGHT_SHIFT_EQUAL = 93,
+      TokenNameOR_OR = 26,
+      TokenNameAND_AND = 25,
+      TokenNamePLUS = 2,
+      TokenNameMINUS = 3,
+      TokenNameNOT = 71,
+      TokenNameREMAINDER = 6,
+      TokenNameXOR = 21,
+      TokenNameAND = 20,
+      TokenNameMULTIPLY = 4,
+      TokenNameOR = 23,
+      TokenNameTWIDDLE = 72,
+      TokenNameDIVIDE = 7,
+      TokenNameGREATER = 12,
+      TokenNameLESS = 5,
+      TokenNameLPAREN = 27,
+      TokenNameRPAREN = 29,
+      TokenNameLBRACE = 74,
+      TokenNameRBRACE = 32,
+      TokenNameLBRACKET = 8,
+      TokenNameRBRACKET = 76,
+      TokenNameSEMICOLON = 28,
+      TokenNameQUESTION = 24,
+      TokenNameCOLON = 56,
+      TokenNameCOMMA = 30,
+      TokenNameDOT = 1,
+      TokenNameEQUAL = 78,
+      TokenNameAT = 46,
+      TokenNameELLIPSIS = 120,
+      TokenNameBINDIN = 79,
+      TokenNameBINDOUT = 75,
+      TokenNameCALLOUT_OVERRIDE = 106,
+      TokenNameEOF = 73,
+      TokenNameERROR = 129;
+}
diff --git a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT201.java b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT201.java
new file mode 100644
index 0000000..3727905
--- /dev/null
+++ b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT201.java
@@ -0,0 +1,168 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2011 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *     Technical University Berlin - extended API and implementation
+ *******************************************************************************/
+package org.eclipse.objectteams.internal.jdt.nullity;
+
+/**
+ * IMPORTANT NOTE: These constants are dedicated to the internal Scanner implementation.
+ * It is mirrored in org.eclipse.jdt.core.compiler public package where it is API.
+ * The mirror implementation is using the backward compatible ITerminalSymbols constant
+ * definitions (stable with 2.0), whereas the internal implementation uses TerminalTokens
+ * which constant values reflect the latest parser generation state.
+ */
+/**
+ * Maps each terminal symbol in the java-grammar into a unique integer.
+ * This integer is used to represent the terminal when computing a parsing action.
+ *
+ * Disclaimer : These constant values are generated automatically using a Java
+ * grammar, therefore their actual values are subject to change if new keywords
+ * were added to the language (for instance, 'assert' is a keyword in 1.4).
+ */
+public interface TerminalTokens_OT201 {
+
+	// special tokens not part of grammar - not autogenerated
+	int
+	    TokenNameWHITESPACE = 1000,
+		TokenNameCOMMENT_LINE = 1001,
+		TokenNameCOMMENT_BLOCK = 1002,
+		TokenNameCOMMENT_JAVADOC = 1003;
+
+	int
+      TokenNameIdentifier = 22,
+      TokenNameabstract = 60,
+      TokenNameassert = 94,
+      TokenNameboolean = 33,
+      TokenNamebreak = 95,
+      TokenNamebyte = 34,
+      TokenNamecase = 114,
+      TokenNamecatch = 111,
+      TokenNamechar = 35,
+      TokenNameclass = 78,
+      TokenNamecontinue = 96,
+      TokenNameconst = 127,
+      TokenNamedefault = 108,
+      TokenNamedo = 97,
+      TokenNamedouble = 36,
+      TokenNameelse = 117,
+      TokenNameenum = 105,
+      TokenNameextends = 107,
+      TokenNamefalse = 47,
+      TokenNamefinal = 61,
+      TokenNamefinally = 115,
+      TokenNamefloat = 37,
+      TokenNamefor = 98,
+      TokenNamegoto = 128,
+      TokenNameif = 99,
+      TokenNameimplements = 125,
+      TokenNameimport = 112,
+      TokenNameinstanceof = 14,
+      TokenNameint = 38,
+      TokenNameinterface = 80,
+      TokenNamelong = 39,
+      TokenNamenative = 62,
+      TokenNamenew = 44,
+      TokenNamenull = 48,
+      TokenNamepackage = 113,
+      TokenNameprivate = 63,
+      TokenNameprotected = 64,
+      TokenNamepublic = 65,
+      TokenNamereturn = 100,
+      TokenNameshort = 40,
+      TokenNamestatic = 57,
+      TokenNamestrictfp = 66,
+      TokenNamesuper = 42,
+      TokenNameswitch = 101,
+      TokenNamesynchronized = 58,
+      TokenNamethis = 43,
+      TokenNamethrow = 102,
+      TokenNamethrows = 118,
+      TokenNametransient = 67,
+      TokenNametrue = 49,
+      TokenNametry = 103,
+      TokenNamevoid = 41,
+      TokenNamevolatile = 68,
+      TokenNamewhile = 81,
+      TokenNameas = 82,
+      TokenNamebase = 31,
+      TokenNamecallin = 69,
+      TokenNameplayedBy = 126,
+      TokenNameprecedence = 116,
+      TokenNamereadonly = 70,
+      TokenNameteam = 59,
+      TokenNametsuper = 46,
+      TokenNamewhen = 109,
+      TokenNamewith = 110,
+      TokenNamewithin = 104,
+      TokenNamereplace = 120,
+      TokenNameafter = 119,
+      TokenNamebefore = 121,
+      TokenNameget = 122,
+      TokenNameset = 123,
+      TokenNameIntegerLiteral = 50,
+      TokenNameLongLiteral = 51,
+      TokenNameFloatingPointLiteral = 52,
+      TokenNameDoubleLiteral = 53,
+      TokenNameCharacterLiteral = 54,
+      TokenNameStringLiteral = 55,
+      TokenNamePLUS_PLUS = 9,
+      TokenNameMINUS_MINUS = 10,
+      TokenNameEQUAL_EQUAL = 18,
+      TokenNameLESS_EQUAL = 15,
+      TokenNameGREATER_EQUAL = 16,
+      TokenNameNOT_EQUAL = 19,
+      TokenNameLEFT_SHIFT = 17,
+      TokenNameRIGHT_SHIFT = 12,
+      TokenNameUNSIGNED_RIGHT_SHIFT = 13,
+      TokenNamePLUS_EQUAL = 83,
+      TokenNameMINUS_EQUAL = 84,
+      TokenNameMULTIPLY_EQUAL = 85,
+      TokenNameDIVIDE_EQUAL = 86,
+      TokenNameAND_EQUAL = 87,
+      TokenNameOR_EQUAL = 88,
+      TokenNameXOR_EQUAL = 89,
+      TokenNameREMAINDER_EQUAL = 90,
+      TokenNameLEFT_SHIFT_EQUAL = 91,
+      TokenNameRIGHT_SHIFT_EQUAL = 92,
+      TokenNameUNSIGNED_RIGHT_SHIFT_EQUAL = 93,
+      TokenNameOR_OR = 27,
+      TokenNameAND_AND = 25,
+      TokenNamePLUS = 2,
+      TokenNameMINUS = 3,
+      TokenNameNOT = 71,
+      TokenNameREMAINDER = 6,
+      TokenNameXOR = 21,
+      TokenNameAND = 20,
+      TokenNameMULTIPLY = 5,
+      TokenNameOR = 23,
+      TokenNameTWIDDLE = 72,
+      TokenNameDIVIDE = 7,
+      TokenNameGREATER = 11,
+      TokenNameLESS = 4,
+      TokenNameLPAREN = 26,
+      TokenNameRPAREN = 28,
+      TokenNameLBRACE = 74,
+      TokenNameRBRACE = 32,
+      TokenNameLBRACKET = 8,
+      TokenNameRBRACKET = 76,
+      TokenNameSEMICOLON = 29,
+      TokenNameQUESTION = 24,
+      TokenNameCOLON = 56,
+      TokenNameCOMMA = 30,
+      TokenNameDOT = 1,
+      TokenNameEQUAL = 77,
+      TokenNameAT = 45,
+      TokenNameELLIPSIS = 124,
+      TokenNameBINDIN = 79,
+      TokenNameBINDOUT = 75,
+      TokenNameCALLOUT_OVERRIDE = 106,
+      TokenNameEOF = 73,
+      TokenNameERROR = 129;
+}
diff --git a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT21M1.java b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT21M1.java
new file mode 100644
index 0000000..48939c5
--- /dev/null
+++ b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_OT21M1.java
@@ -0,0 +1,168 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2011 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *     Technical University Berlin - extended API and implementation
+ *******************************************************************************/
+package org.eclipse.objectteams.internal.jdt.nullity;
+
+/**
+ * IMPORTANT NOTE: These constants are dedicated to the internal Scanner implementation.
+ * It is mirrored in org.eclipse.jdt.core.compiler public package where it is API.
+ * The mirror implementation is using the backward compatible ITerminalSymbols constant
+ * definitions (stable with 2.0), whereas the internal implementation uses TerminalTokens
+ * which constant values reflect the latest parser generation state.
+ */
+/**
+ * Maps each terminal symbol in the java-grammar into a unique integer.
+ * This integer is used to represent the terminal when computing a parsing action.
+ *
+ * Disclaimer : These constant values are generated automatically using a Java
+ * grammar, therefore their actual values are subject to change if new keywords
+ * were added to the language (for instance, 'assert' is a keyword in 1.4).
+ */
+public interface TerminalTokens_OT21M1 {
+
+	// special tokens not part of grammar - not autogenerated
+	int
+	    TokenNameWHITESPACE = 1000,
+		TokenNameCOMMENT_LINE = 1001,
+		TokenNameCOMMENT_BLOCK = 1002,
+		TokenNameCOMMENT_JAVADOC = 1003;
+
+	int
+      TokenNameIdentifier = 22,
+      TokenNameabstract = 60,
+      TokenNameassert = 94,
+      TokenNameboolean = 33,
+      TokenNamebreak = 95,
+      TokenNamebyte = 34,
+      TokenNamecase = 114,
+      TokenNamecatch = 111,
+      TokenNamechar = 35,
+      TokenNameclass = 78,
+      TokenNamecontinue = 96,
+      TokenNameconst = 127,
+      TokenNamedefault = 108,
+      TokenNamedo = 97,
+      TokenNamedouble = 36,
+      TokenNameelse = 117,
+      TokenNameenum = 105,
+      TokenNameextends = 107,
+      TokenNamefalse = 47,
+      TokenNamefinal = 61,
+      TokenNamefinally = 115,
+      TokenNamefloat = 37,
+      TokenNamefor = 98,
+      TokenNamegoto = 128,
+      TokenNameif = 99,
+      TokenNameimplements = 125,
+      TokenNameimport = 112,
+      TokenNameinstanceof = 14,
+      TokenNameint = 38,
+      TokenNameinterface = 80,
+      TokenNamelong = 39,
+      TokenNamenative = 62,
+      TokenNamenew = 44,
+      TokenNamenull = 48,
+      TokenNamepackage = 113,
+      TokenNameprivate = 63,
+      TokenNameprotected = 64,
+      TokenNamepublic = 65,
+      TokenNamereturn = 100,
+      TokenNameshort = 40,
+      TokenNamestatic = 57,
+      TokenNamestrictfp = 66,
+      TokenNamesuper = 42,
+      TokenNameswitch = 101,
+      TokenNamesynchronized = 58,
+      TokenNamethis = 43,
+      TokenNamethrow = 102,
+      TokenNamethrows = 118,
+      TokenNametransient = 67,
+      TokenNametrue = 49,
+      TokenNametry = 103,
+      TokenNamevoid = 41,
+      TokenNamevolatile = 68,
+      TokenNamewhile = 81,
+      TokenNameas = 82,
+      TokenNamebase = 31,
+      TokenNamecallin = 69,
+      TokenNameplayedBy = 126,
+      TokenNameprecedence = 116,
+      TokenNamereadonly = 70,
+      TokenNameteam = 59,
+      TokenNametsuper = 46,
+      TokenNamewhen = 109,
+      TokenNamewith = 110,
+      TokenNamewithin = 104,
+      TokenNamereplace = 120,
+      TokenNameafter = 119,
+      TokenNamebefore = 121,
+      TokenNameget = 122,
+      TokenNameset = 123,
+      TokenNameIntegerLiteral = 50,
+      TokenNameLongLiteral = 51,
+      TokenNameFloatingPointLiteral = 52,
+      TokenNameDoubleLiteral = 53,
+      TokenNameCharacterLiteral = 54,
+      TokenNameStringLiteral = 55,
+      TokenNamePLUS_PLUS = 9,
+      TokenNameMINUS_MINUS = 10,
+      TokenNameEQUAL_EQUAL = 18,
+      TokenNameLESS_EQUAL = 15,
+      TokenNameGREATER_EQUAL = 16,
+      TokenNameNOT_EQUAL = 19,
+      TokenNameLEFT_SHIFT = 17,
+      TokenNameRIGHT_SHIFT = 12,
+      TokenNameUNSIGNED_RIGHT_SHIFT = 13,
+      TokenNamePLUS_EQUAL = 83,
+      TokenNameMINUS_EQUAL = 84,
+      TokenNameMULTIPLY_EQUAL = 85,
+      TokenNameDIVIDE_EQUAL = 86,
+      TokenNameAND_EQUAL = 87,
+      TokenNameOR_EQUAL = 88,
+      TokenNameXOR_EQUAL = 89,
+      TokenNameREMAINDER_EQUAL = 90,
+      TokenNameLEFT_SHIFT_EQUAL = 91,
+      TokenNameRIGHT_SHIFT_EQUAL = 92,
+      TokenNameUNSIGNED_RIGHT_SHIFT_EQUAL = 93,
+      TokenNameOR_OR = 27,
+      TokenNameAND_AND = 25,
+      TokenNamePLUS = 2,
+      TokenNameMINUS = 3,
+      TokenNameNOT = 71,
+      TokenNameREMAINDER = 6,
+      TokenNameXOR = 21,
+      TokenNameAND = 20,
+      TokenNameMULTIPLY = 5,
+      TokenNameOR = 23,
+      TokenNameTWIDDLE = 72,
+      TokenNameDIVIDE = 7,
+      TokenNameGREATER = 11,
+      TokenNameLESS = 4,
+      TokenNameLPAREN = 26,
+      TokenNameRPAREN = 28,
+      TokenNameLBRACE = 74,
+      TokenNameRBRACE = 32,
+      TokenNameLBRACKET = 8,
+      TokenNameRBRACKET = 76,
+      TokenNameSEMICOLON = 29,
+      TokenNameQUESTION = 24,
+      TokenNameCOLON = 56,
+      TokenNameCOMMA = 30,
+      TokenNameDOT = 1,
+      TokenNameEQUAL = 77,
+      TokenNameAT = 45,
+      TokenNameELLIPSIS = 124,
+      TokenNameBINDIN = 79,
+      TokenNameBINDOUT = 75,
+      TokenNameCALLOUT_OVERRIDE = 106,
+      TokenNameEOF = 73,
+      TokenNameERROR = 129;
+}
diff --git a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_R370.java b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_R370.java
new file mode 100644
index 0000000..a16a02b
--- /dev/null
+++ b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_R370.java
@@ -0,0 +1,136 @@
+package org.eclipse.objectteams.internal.jdt.nullity;
+
+/**
+ * IMPORTANT NOTE: These constants are dedicated to the internal Scanner implementation.
+ * It is mirrored in org.eclipse.jdt.core.compiler public package where it is API.
+ * The mirror implementation is using the backward compatible ITerminalSymbols constant
+ * definitions (stable with 2.0), whereas the internal implementation uses TerminalTokens
+ * which constant values reflect the latest parser generation state.
+ */
+/**
+ * Maps each terminal symbol in the java-grammar into a unique integer.
+ * This integer is used to represent the terminal when computing a parsing action.
+ *
+ * Disclaimer : These constant values are generated automatically using a Java
+ * grammar, therefore their actual values are subject to change if new keywords
+ * were added to the language (for instance, 'assert' is a keyword in 1.4).
+ */
+public interface TerminalTokens_R370 {
+
+	// special tokens not part of grammar - not autogenerated
+	int TokenNameWHITESPACE = 1000,
+		TokenNameCOMMENT_LINE = 1001,
+		TokenNameCOMMENT_BLOCK = 1002,
+		TokenNameCOMMENT_JAVADOC = 1003;
+
+	int TokenNameIdentifier = 26,
+		TokenNameabstract = 56,
+		TokenNameassert = 74,
+		TokenNameboolean = 32,
+		TokenNamebreak = 75,
+		TokenNamebyte = 33,
+		TokenNamecase = 101,
+		TokenNamecatch = 102,
+		TokenNamechar = 34,
+		TokenNameclass = 72,
+		TokenNamecontinue = 76,
+		TokenNameconst = 108,
+		TokenNamedefault = 97,
+		TokenNamedo = 77,
+		TokenNamedouble = 35,
+		TokenNameelse = 103,
+		TokenNameenum = 98,
+		TokenNameextends = 99,
+		TokenNamefalse = 44,
+		TokenNamefinal = 57,
+		TokenNamefinally = 104,
+		TokenNamefloat = 36,
+		TokenNamefor = 78,
+		TokenNamegoto = 109,
+		TokenNameif = 79,
+		TokenNameimplements = 107,
+		TokenNameimport = 100,
+		TokenNameinstanceof = 12,
+		TokenNameint = 37,
+		TokenNameinterface = 95,
+		TokenNamelong = 38,
+		TokenNamenative = 58,
+		TokenNamenew = 43,
+		TokenNamenull = 45,
+		TokenNamepackage = 96,
+		TokenNameprivate = 59,
+		TokenNameprotected = 60,
+		TokenNamepublic = 61,
+		TokenNamereturn = 80,
+		TokenNameshort = 39,
+		TokenNamestatic = 54,
+		TokenNamestrictfp = 62,
+		TokenNamesuper = 41,
+		TokenNameswitch = 81,
+		TokenNamesynchronized = 55,
+		TokenNamethis = 42,
+		TokenNamethrow = 82,
+		TokenNamethrows = 105,
+		TokenNametransient = 63,
+		TokenNametrue = 46,
+		TokenNametry = 83,
+		TokenNamevoid = 40,
+		TokenNamevolatile = 64,
+		TokenNamewhile = 73,
+		TokenNameIntegerLiteral = 47,
+		TokenNameLongLiteral = 48,
+		TokenNameFloatingPointLiteral = 49,
+		TokenNameDoubleLiteral = 50,
+		TokenNameCharacterLiteral = 51,
+		TokenNameStringLiteral = 52,
+		TokenNamePLUS_PLUS = 8,
+		TokenNameMINUS_MINUS = 9,
+		TokenNameEQUAL_EQUAL = 18,
+		TokenNameLESS_EQUAL = 15,
+		TokenNameGREATER_EQUAL = 16,
+		TokenNameNOT_EQUAL = 19,
+		TokenNameLEFT_SHIFT = 17,
+		TokenNameRIGHT_SHIFT = 10,
+		TokenNameUNSIGNED_RIGHT_SHIFT = 11,
+		TokenNamePLUS_EQUAL = 84,
+		TokenNameMINUS_EQUAL = 85,
+		TokenNameMULTIPLY_EQUAL = 86,
+		TokenNameDIVIDE_EQUAL = 87,
+		TokenNameAND_EQUAL = 88,
+		TokenNameOR_EQUAL = 89,
+		TokenNameXOR_EQUAL = 90,
+		TokenNameREMAINDER_EQUAL = 91,
+		TokenNameLEFT_SHIFT_EQUAL = 92,
+		TokenNameRIGHT_SHIFT_EQUAL = 93,
+		TokenNameUNSIGNED_RIGHT_SHIFT_EQUAL = 94,
+		TokenNameOR_OR = 25,
+		TokenNameAND_AND = 24,
+		TokenNamePLUS = 1,
+		TokenNameMINUS = 2,
+		TokenNameNOT = 66,
+		TokenNameREMAINDER = 5,
+		TokenNameXOR = 21,
+		TokenNameAND = 20,
+		TokenNameMULTIPLY = 4,
+		TokenNameOR = 22,
+		TokenNameTWIDDLE = 67,
+		TokenNameDIVIDE = 6,
+		TokenNameGREATER = 13,
+		TokenNameLESS = 7,
+		TokenNameLPAREN = 28,
+		TokenNameRPAREN = 29,
+		TokenNameLBRACE = 68,
+		TokenNameRBRACE = 31,
+		TokenNameLBRACKET = 14,
+		TokenNameRBRACKET = 70,
+		TokenNameSEMICOLON = 27,
+		TokenNameQUESTION = 23,
+		TokenNameCOLON = 65,
+		TokenNameCOMMA = 30,
+		TokenNameDOT = 3,
+		TokenNameEQUAL = 71,
+		TokenNameAT = 53,
+		TokenNameELLIPSIS = 106,
+		TokenNameEOF = 69,
+		TokenNameERROR = 110;
+}
diff --git a/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_R38M1.java b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_R38M1.java
new file mode 100755
index 0000000..390dabb
--- /dev/null
+++ b/contrib/org.eclipse.objectteams.jdt.nullity/src/org/eclipse/objectteams/internal/jdt/nullity/TerminalTokens_R38M1.java
@@ -0,0 +1,146 @@
+/*******************************************************************************
+ * Copyright (c) 2000, 2011 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ *     IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.objectteams.internal.jdt.nullity;
+
+/**
+ * IMPORTANT NOTE: These constants are dedicated to the internal Scanner implementation.
+ * It is mirrored in org.eclipse.jdt.core.compiler public package where it is API.
+ * The mirror implementation is using the backward compatible ITerminalSymbols constant
+ * definitions (stable with 2.0), whereas the internal implementation uses TerminalTokens
+ * which constant values reflect the latest parser generation state.
+ */
+/**
+ * Maps each terminal symbol in the java-grammar into a unique integer.
+ * This integer is used to represent the terminal when computing a parsing action.
+ *
+ * Disclaimer : These constant values are generated automatically using a Java
+ * grammar, therefore their actual values are subject to change if new keywords
+ * were added to the language (for instance, 'assert' is a keyword in 1.4).
+ */
+public interface TerminalTokens_R38M1 {
+
+	// special tokens not part of grammar - not autogenerated
+	int TokenNameWHITESPACE = 1000,
+		TokenNameCOMMENT_LINE = 1001,
+		TokenNameCOMMENT_BLOCK = 1002,
+		TokenNameCOMMENT_JAVADOC = 1003;
+
+	int TokenNameIdentifier = 26,
+		TokenNameabstract = 56,
+		TokenNameassert = 74,
+		TokenNameboolean = 32,
+		TokenNamebreak = 75,
+		TokenNamebyte = 33,
+		TokenNamecase = 102,
+		TokenNamecatch = 100,
+		TokenNamechar = 34,
+		TokenNameclass = 72,
+		TokenNamecontinue = 76,
+		TokenNameconst = 108,
+		TokenNamedefault = 97,
+		TokenNamedo = 77,
+		TokenNamedouble = 35,
+		TokenNameelse = 104,
+		TokenNameenum = 98,
+		TokenNameextends = 99,
+		TokenNamefalse = 44,
+		TokenNamefinal = 57,
+		TokenNamefinally = 103,
+		TokenNamefloat = 36,
+		TokenNamefor = 78,
+		TokenNamegoto = 109,
+		TokenNameif = 79,
+		TokenNameimplements = 106,
+		TokenNameimport = 101,
+		TokenNameinstanceof = 13,
+		TokenNameint = 37,
+		TokenNameinterface = 95,
+		TokenNamelong = 38,
+		TokenNamenative = 58,
+		TokenNamenew = 43,
+		TokenNamenull = 45,
+		TokenNamepackage = 96,
+		TokenNameprivate = 59,
+		TokenNameprotected = 60,
+		TokenNamepublic = 61,
+		TokenNamereturn = 80,
+		TokenNameshort = 39,
+		TokenNamestatic = 54,
+		TokenNamestrictfp = 62,
+		TokenNamesuper = 41,
+		TokenNameswitch = 81,
+		TokenNamesynchronized = 55,
+		TokenNamethis = 42,
+		TokenNamethrow = 82,
+		TokenNamethrows = 105,
+		TokenNametransient = 63,
+		TokenNametrue = 46,
+		TokenNametry = 83,
+		TokenNamevoid = 40,
+		TokenNamevolatile = 64,
+		TokenNamewhile = 73,
+		TokenNameIntegerLiteral = 47,
+		TokenNameLongLiteral = 48,
+		TokenNameFloatingPointLiteral = 49,
+		TokenNameDoubleLiteral = 50,
+		TokenNameCharacterLiteral = 51,
+		TokenNameStringLiteral = 52,
+		TokenNamePLUS_PLUS = 8,
+		TokenNameMINUS_MINUS = 9,
+		TokenNameEQUAL_EQUAL = 18,
+		TokenNameLESS_EQUAL = 14,
+		TokenNameGREATER_EQUAL = 15,
+		TokenNameNOT_EQUAL = 19,
+		TokenNameLEFT_SHIFT = 17,
+		TokenNameRIGHT_SHIFT = 10,
+		TokenNameUNSIGNED_RIGHT_SHIFT = 12,
+		TokenNamePLUS_EQUAL = 84,
+		TokenNameMINUS_EQUAL = 85,
+		TokenNameMULTIPLY_EQUAL = 86,
+		TokenNameDIVIDE_EQUAL = 87,
+		TokenNameAND_EQUAL = 88,
+		TokenNameOR_EQUAL = 89,
+		TokenNameXOR_EQUAL = 90,
+		TokenNameREMAINDER_EQUAL = 91,
+		TokenNameLEFT_SHIFT_EQUAL = 92,
+		TokenNameRIGHT_SHIFT_EQUAL = 93,
+		TokenNameUNSIGNED_RIGHT_SHIFT_EQUAL = 94,
+		TokenNameOR_OR = 25,
+		TokenNameAND_AND = 24,
+		TokenNamePLUS = 1,
+		TokenNameMINUS = 2,
+		TokenNameNOT = 66,
+		TokenNameREMAINDER = 5,
+		TokenNameXOR = 21,
+		TokenNameAND = 20,
+		TokenNameMULTIPLY = 4,
+		TokenNameOR = 22,
+		TokenNameTWIDDLE = 67,
+		TokenNameDIVIDE = 6,
+		TokenNameGREATER = 11,
+		TokenNameLESS = 7,
+		TokenNameLPAREN = 29,
+		TokenNameRPAREN = 28,
+		TokenNameLBRACE = 68,
+		TokenNameRBRACE = 31,
+		TokenNameLBRACKET = 16,
+		TokenNameRBRACKET = 70,
+		TokenNameSEMICOLON = 27,
+		TokenNameQUESTION = 23,
+		TokenNameCOLON = 65,
+		TokenNameCOMMA = 30,
+		TokenNameDOT = 3,
+		TokenNameEQUAL = 71,
+		TokenNameAT = 53,
+		TokenNameELLIPSIS = 107,
+		TokenNameEOF = 69,
+		TokenNameERROR = 110;
+}