Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/QValConstructor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/QValConstructor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/QValConstructor.java	(nonexistent)
@@ -1,92 +0,0 @@
-/**
-  *
-  *                      OOAS Compiler
-  *
-  *       Copyright 2015, AIT Austrian Institute of Technology.
-  * This code is based on the C# Version of the OOAS Compiler, which is
-  * copyright 2015 by the Institute of Software Technology, Graz University
-  * of Technology with portions copyright by the AIT Austrian Institute of
-  * Technology. All rights reserved.
-  *
-  * SEE THE "LICENSE" FILE FOR THE TERMS UNDER WHICH THIS FILE IS PROVIDED.
-  *
-  * If you modify the file please update the list of contributors below to in-
-  * clude your name. Please also stick to the coding convention of using TABs
-  * to do the basic (block-level) indentation and spaces for anything after
-  * that. (Enable the display of special chars and it should be pretty obvious
-  * what this means.) Also, remove all trailing whitespace.
-  *
-  * Contributors:
-  *               Willibald Krenn (AIT)
-  *               Stephan Zimmerer (AIT)
-  *               Markus Demetz (AIT)
-  *               Christoph Czurda (AIT)
-  *
-  */
-
-
-package org.momut.ooas.ast.expressions;
-
-import java.util.Arrays;
-
-import org.momut.ooas.ast.IAstVisitor;
-
-///////////////////////////////////////////////
-///  Constructor: Qualitative Value
-///
-public final class QValConstructor extends TypeConstructionExpression
-{
-	public enum QValDeriv { DonTCare, Dec, Steady, Inc }
-
-	private Expression[] m_value;
-	private QValDeriv m_derivValue;
-
-	public Expression[] value() { return m_value; }
-	public QValDeriv valueDeriv() { return m_derivValue; }
-
-
-	public QValConstructor(int line, int pos)
-	{
-		super (ExpressionKind.QValConstr, line, pos);
-		m_value = new Expression[1];
-		m_value[0] = null;
-		m_derivValue = QValDeriv.DonTCare;
-	}
-
-	public QValConstructor(QValConstructor toCopy)
-	{
-		super (toCopy);
-		m_value = Arrays.copyOf(toCopy.m_value, toCopy.m_value.length);
-		m_derivValue = toCopy.m_derivValue;
-	}
-
-	@Override
-	public /*override*/ Expression Clone()
-	{
-		return new QValConstructor(this);
-	}
-
-
-	public /*override*/ void Accept(IAstVisitor visitor)
-	{
-		visitor.visit(this);
-	}
-
-	public void SetValue(Expression aval)
-	{
-		m_value[0] = aval;
-	}
-
-	public void AddRange(Expression toRange)
-	{
-		Expression currVal = m_value[0];
-		m_value = new Expression[2];
-		m_value[0] = currVal;
-		m_value[1] = toRange;
-	}
-
-	public void SetDerivation(QValDeriv newValue)
-	{
-		m_derivValue = newValue;
-	}
-}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/LandmarkIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/LandmarkIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/LandmarkIdentifier.java	(nonexistent)
@@ -1,60 +0,0 @@
-/**
-  *
-  *                      OOAS Compiler
-  *
-  *       Copyright 2015, AIT Austrian Institute of Technology.
-  * This code is based on the C# Version of the OOAS Compiler, which is
-  * copyright 2015 by the Institute of Software Technology, Graz University
-  * of Technology with portions copyright by the AIT Austrian Institute of
-  * Technology. All rights reserved.
-  *
-  * SEE THE "LICENSE" FILE FOR THE TERMS UNDER WHICH THIS FILE IS PROVIDED.
-  *
-  * If you modify the file please update the list of contributors below to in-
-  * clude your name. Please also stick to the coding convention of using TABs
-  * to do the basic (block-level) indentation and spaces for anything after
-  * that. (Enable the display of special chars and it should be pretty obvious
-  * what this means.) Also, remove all trailing whitespace.
-  *
-  * Contributors:
-  *               Willibald Krenn (AIT)
-  *               Stephan Zimmerer (AIT)
-  *               Markus Demetz (AIT)
-  *               Christoph Czurda (AIT)
-  *
-  */
-
-
-package org.momut.ooas.ast.identifiers;
-
-import org.antlr.runtime.Token;
-import org.momut.ooas.ast.IAstVisitor;
-import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.QrType;
-
-public final class LandmarkIdentifier extends ValueIdentifier
-{
-	public LandmarkIdentifier(Token aToken,
-			QrType aType,
-			IScope aDefiningScope)
-	{
-		super(aToken, aType, IdentifierKind.LandmarkIdentifier, aDefiningScope);
-	}
-
-	public LandmarkIdentifier(LandmarkIdentifier toCopy)
-	{
-		super(toCopy);
-	}
-
-	@Override
-	public /*override*/ Identifier Clone()
-	{
-		return this;
-	}
-
-	@Override
-	public /*override*/ void Accept(IAstVisitor visitor)
-	{
-		visitor.visit(this);
-	}
-}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/statements/QualitativeConstraintStatement.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/statements/QualitativeConstraintStatement.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/statements/QualitativeConstraintStatement.java	(nonexistent)
@@ -1,114 +0,0 @@
-/**
-  *
-  *                      OOAS Compiler
-  *
-  *       Copyright 2015, AIT Austrian Institute of Technology.
-  * This code is based on the C# Version of the OOAS Compiler, which is
-  * copyright 2015 by the Institute of Software Technology, Graz University
-  * of Technology with portions copyright by the AIT Austrian Institute of
-  * Technology. All rights reserved.
-  *
-  * SEE THE "LICENSE" FILE FOR THE TERMS UNDER WHICH THIS FILE IS PROVIDED.
-  *
-  * If you modify the file please update the list of contributors below to in-
-  * clude your name. Please also stick to the coding convention of using TABs
-  * to do the basic (block-level) indentation and spaces for anything after
-  * that. (Enable the display of special chars and it should be pretty obvious
-  * what this means.) Also, remove all trailing whitespace.
-  *
-  * Contributors:
-  *               Willibald Krenn (AIT)
-  *               Stephan Zimmerer (AIT)
-  *               Markus Demetz (AIT)
-  *               Christoph Czurda (AIT)
-  *
-  */
-
-
-package org.momut.ooas.ast.statements;
-
-import org.momut.ooas.ast.IAstVisitor;
-import org.momut.ooas.ast.identifiers.Identifier;
-import org.momut.ooas.utils.exceptions.ArgumentException;
-
-///////////////////////////////////////////////
-///  Qualitative Constraints
-///
-public final class QualitativeConstraintStatement extends Statement
-{
-	public enum QualitativeConstraintOperation { Equal, Deriv, Sum, Prod, Diff }
-
-	private Identifier m_variable0;
-	private Identifier m_variable1;
-	private Identifier m_variable2;
-	private final QualitativeConstraintOperation m_operation;
-	public boolean tag = false; // says that this is an obs assignment (important for prolog code target)
-
-	public Identifier variable0() { return m_variable0; }
-	public Identifier variable1() { return m_variable1; }
-	public Identifier variable2() { return m_variable2; }
-	public QualitativeConstraintOperation operation() { return m_operation; }
-
-	public QualitativeConstraintStatement(Identifier var0, Identifier var1, QualitativeConstraintOperation op, int aline, int apos)
-	{
-		super (StatementKind.QualConstraint, aline, apos);
-		if (op == QualitativeConstraintOperation.Diff
-				|| op == QualitativeConstraintOperation.Prod
-				|| op == QualitativeConstraintOperation.Sum)
-			throw new ArgumentException();
-		m_variable0 = var0;
-		m_variable1 = var1;
-		m_variable2 = null;
-		m_operation = op;
-	}
-
-	public QualitativeConstraintStatement(QualitativeConstraintStatement toCopy)
-	{
-		super (toCopy);
-		m_variable0 = toCopy.m_variable0;
-		m_variable1 = toCopy.m_variable1;
-		m_variable2 = toCopy.m_variable2;
-		m_operation = toCopy.m_operation;
-		tag = toCopy.tag;
-	}
-
-
-	public QualitativeConstraintStatement(Identifier var0, Identifier var1, Identifier var2, QualitativeConstraintOperation op, int aline, int apos)
-	{
-		super (StatementKind.QualConstraint, aline, apos);
-		if (op == QualitativeConstraintOperation.Deriv
-				|| op == QualitativeConstraintOperation.Equal)
-			throw new ArgumentException();
-		m_variable0 = var0;
-		m_variable1 = var1;
-		m_variable2 = var2;
-		m_operation = op;
-	}
-
-	@Override
-	public /*override*/ void Accept(IAstVisitor visitor)
-	{
-		visitor.visit(this);
-	}
-
-	@Override
-	public /*override*/ Statement Clone()
-	{
-		return new QualitativeConstraintStatement(this);
-	}
-
-	public void SetVariable0(Identifier newVal)
-	{
-		m_variable0 = newVal;
-	}
-
-	public void SetVariable1(Identifier newVal)
-	{
-		m_variable1 = newVal;
-	}
-
-	public void SetVariable2(Identifier newVal)
-	{
-		m_variable2 = newVal;
-	}
-}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/UlyssesType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/UlyssesType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/UlyssesType.java	(nonexistent)
@@ -1,596 +0,0 @@
-/**
-  *
-  *                      OOAS Compiler
-  *
-  *       Copyright 2015, AIT Austrian Institute of Technology.
-  * This code is based on the C# Version of the OOAS Compiler, which is
-  * copyright 2015 by the Institute of Software Technology, Graz University
-  * of Technology with portions copyright by the AIT Austrian Institute of
-  * Technology. All rights reserved.
-  *
-  * SEE THE "LICENSE" FILE FOR THE TERMS UNDER WHICH THIS FILE IS PROVIDED.
-  *
-  * If you modify the file please update the list of contributors below to in-
-  * clude your name. Please also stick to the coding convention of using TABs
-  * to do the basic (block-level) indentation and spaces for anything after
-  * that. (Enable the display of special chars and it should be pretty obvious
-  * what this means.) Also, remove all trailing whitespace.
-  *
-  * Contributors:
-  *               Willibald Krenn (AIT)
-  *               Stephan Zimmerer (AIT)
-  *               Markus Demetz (AIT)
-  *               Christoph Czurda (AIT)
-  *
-  */
-
-
-package org.momut.ooas.ast.types;
-
-import java.util.Iterator;
-
-import org.momut.ooas.ast.AstNode;
-import org.momut.ooas.ast.AstNodeTypeEnum;
-import org.momut.ooas.ast.IAst;
-import org.momut.ooas.ast.IAstVisitor;
-import org.momut.ooas.ast.identifiers.TypeIdentifier;
-import org.momut.ooas.utils.exceptions.ArgumentException;
-import org.momut.ooas.utils.exceptions.NotImplementedException;
-import org.momut.ooas.utils.exceptions.OoasCompilerRuntimeException;
-
-public abstract class UlyssesType extends AstNode implements IAst
-{
-	private String m_origAnonName;
-	protected TypeKind m_kind;
-	protected TypeIdentifier m_identifier;
-	protected int m_hash;
-	//    protected long TimeStamp = DateTime.Now.Ticks;
-
-
-	public TypeKind kind() { return m_kind; }
-
-	public TypeIdentifier identifier() {
-		synchronized(this) {
-			if (m_identifier == null)
-				SetupAnonymousName();
-		}
-		return m_identifier;
-	}
-
-	public boolean isAnonymousType() {
-		final String anonName = AnonymousName();
-		if (!m_origAnonName.equals(anonName))
-			throw new OoasCompilerRuntimeException("Internal Error: Anonymous Name changed from '%s' to '%s'.", m_origAnonName, anonName);
-		return anonName.equals(m_identifier.tokenText());
-	}
-
-	protected UlyssesType(TypeKind aKind, TypeIdentifier anIdentifier)
-	{
-		m_kind = aKind;
-		m_identifier = anIdentifier;
-		m_hash = aKind.toString().hashCode(); //Enum.GetName(typeof(TypeKind), aKind).GetHashCode();
-	}
-
-	@Override
-	public /*override*/ String toString()
-	{
-		return identifier().tokenText();
-	}
-
-	public /*virtual*/ String AnonymousName()
-	{
-		throw new NotImplementedException();
-	}
-
-
-	public void SetTypeIdentifier(TypeIdentifier anId)
-	{
-		m_identifier = anId;
-	}
-
-	public void SetupAnonymousName()
-	{
-		if (m_identifier == null)
-		{
-			final String anonymousName = this.AnonymousName();
-			m_identifier = new TypeIdentifier(anonymousName, this, null);
-			m_origAnonName = anonymousName;
-		}
-	}
-
-
-	@Override
-	public AstNodeTypeEnum nodeType() { return AstNodeTypeEnum.type; }
-
-	@Override
-	public void Accept(IAstVisitor visitor)
-	{
-		throw new NotImplementedException();
-	}
-
-
-
-	public boolean IsNumeric()
-	{
-		final Object o = this;
-		return (m_kind == TypeKind.IntType) ||
-				(m_kind == TypeKind.FloatType) ||
-				(m_kind == TypeKind.EnumeratedType && o instanceof ValuedEnumType);
-	}
-
-	public boolean IsQualitative()
-	{
-		return (m_kind == TypeKind.QrType);
-	}
-
-	/**
-	 * returns the number of unique values of the type (2 for bool, etc..)
-	 */
-	public int valueCount() {
-		throw new NotImplementedException(); // must be overridden by child
-	}
-
-	public static String High(UlyssesType atype)
-	{
-		switch (atype.kind())
-		{
-			case BoolType:
-				return "1";
-			case EnumeratedType:
-				return Integer.toString((((EnumType)atype).listOfEnumSymbols().size() - 1));
-			case IntType:
-				return Integer.toString(((IntType)atype).rangeHigh());
-			case FloatType:
-				return Double.toString(((FloatType)atype).high());
-//			case TypeKind.QrType:
-//				return (((QrType)atype).landmarks.Count - 1).ToString();
-			default:
-				throw new NotImplementedException();
-		}
-	}
-
-	public static String Low(UlyssesType atype)
-	{
-		switch (atype.kind())
-		{
-			case BoolType:
-				return "0";
-			case EnumeratedType:
-				return "0";
-			case IntType:
-				return Integer.toString(((IntType)atype).rangeLow());
-			case FloatType:
-				return Double.toString(((FloatType)atype).low());
-//			case TypeKind.QrType:
-//				return "0";
-			default:
-				throw new NotImplementedException();
-		}
-	}
-
-
-	/// <summary>
-	///  Returns a cover for two types (if possible).
-	///  note the cover type for two ints, floats, etc. will have max/min values
-	///  that reflect the maximum of the two operands.
-	/// </summary>
-
-	public static UlyssesType CoverType(UlyssesType type1, UlyssesType type2)
-	{
-		/*first some sanity checks*/
-		if (type1 == null)
-			throw new ArgumentException("type1 null");
-		if (type2 == null)
-			throw new ArgumentException("type2 null");
-
-		if (type1.kind() == TypeKind.OpaqueType)
-			throw new ArgumentException("type1 opaque type");
-		if (type2.kind() == TypeKind.OpaqueType)
-			throw new ArgumentException("type2 opaque type");
-
-		if (type1 == type2)
-			return type1;
-		if (UlyssesType.TypeEqual(type1, type2))
-			return type1;
-
-		final TypeKind tk1 = type1.kind();
-		final TypeKind tk2 = type2.kind();
-
-
-
-		if (tk1 != tk2)
-		{
-			// the only notion we support here is int->float and valenum -> int
-			if ((tk1 == TypeKind.IntType || tk2 == TypeKind.IntType)
-					&& (tk1 == TypeKind.FloatType || tk2 == TypeKind.FloatType))
-			{
-				final IntType aInt = tk1 == TypeKind.IntType ? (IntType)type1 : (IntType)type2;
-				final FloatType aFloat = tk1 == TypeKind.IntType ? (FloatType)type2 : (FloatType)type1;
-
-				final double low = aInt.rangeLow() < aFloat.low() ? (double)aInt.rangeLow() : aFloat.low();
-				final double high = aInt.rangeHigh() < aFloat.high() ? aFloat.high() : (double)aInt.rangeHigh();
-				final double precision = aFloat.precision() > 1 ? 1.0 : aFloat.precision();
-
-				return new FloatType(low, high, precision, null);
-
-			}
-			else if ((tk1 == TypeKind.IntType || tk2 == TypeKind.IntType)
-					&& (tk1 == TypeKind.EnumeratedType || tk2 == TypeKind.EnumeratedType))
-			{
-				final IntType intt1 = tk1 == TypeKind.IntType ? (IntType)type1 : (IntType)type2;
-				final EnumType anEnum = tk1 == TypeKind.IntType ? (EnumType)type2 : (EnumType)type1;
-
-				if (anEnum instanceof ValuedEnumType)
-				{
-					final IntType intt2 = ((ValuedEnumType)anEnum).getIntType();
-					final int low = intt1.rangeLow() < intt2.rangeLow() ? intt1.rangeLow() : intt2.rangeLow();
-					final int high = intt1.rangeHigh() > intt2.rangeHigh() ? intt1.rangeHigh() : intt2.rangeHigh();
-					return new IntType(low, high, null);
-				}
-				else
-					return null;
-			}
-			else if (tk1 == TypeKind.Any || tk2 == TypeKind.Any)
-			{
-				final AnyType freeVar = tk1 == TypeKind.Any ? (AnyType)type1 : (AnyType)type2;
-				final UlyssesType fixedType = tk1 == TypeKind.Any ? type2 : type1;
-				final UlyssesType newcover = freeVar.VariableIdentifier().type().kind() == TypeKind.Any
-						? fixedType : CoverType(fixedType, freeVar.VariableIdentifier().type());
-				freeVar.VariableIdentifier().SetType(newcover);
-				return newcover;
-			}
-			else if (tk1 == TypeKind.OoActionSystemType && tk2 == TypeKind.Null)
-			{
-				return type1;
-			}
-			else if (tk2 == TypeKind.OoActionSystemType && tk1 == TypeKind.Null)
-			{
-				return type2;
-			}
-
-			else
-				return null;
-		}
-		else
-		{
-			switch (tk1)
-			{
-				case Any:
-					return type1;
-
-				case IntType:
-					final IntType intt1 = (IntType)type1;
-					final IntType intt2 = (IntType)type2;
-					final int low = intt1.rangeLow() < intt2.rangeLow() ? intt1.rangeLow() : intt2.rangeLow();
-					final int high = intt1.rangeHigh() > intt2.rangeHigh() ? intt1.rangeHigh() : intt2.rangeHigh();
-					return new IntType(low, high, null);
-				case BoolType:
-					return type1;
-				case FloatType:
-					final FloatType floatt1 = (FloatType)type1;
-					final FloatType floatt2 = (FloatType)type2;
-					final double flow = floatt1.low() < floatt2.low() ? floatt1.low() : floatt2.low();
-					final double fhigh = floatt1.high() > floatt2.high() ? floatt1.high() : floatt2.high();
-					final double fprec = floatt1.precision() < floatt2.precision() ? floatt1.precision() : floatt2.precision();
-					return new FloatType(flow, fhigh, fprec, null);
-				case EnumeratedType:
-					return null;
-				case ListType:
-					final ListType listt1 = (ListType)type1;
-					final ListType listt2 = (ListType)type2;
-					int maxelems = listt1.maxNumberOfElements() > listt2.maxNumberOfElements() ?
-						listt1.maxNumberOfElements() : listt2.maxNumberOfElements();
-					// empty lists lack type, so take the other one
-					if ((listt1.innerType().kind() == TypeKind.Null) && (listt2.innerType().kind() != TypeKind.Null))
-						return listt2;
-					else if ((listt2.innerType().kind() == TypeKind.Null) && (listt1.innerType().kind() != TypeKind.Null))
-						return listt1;
-					else if (listt1.innerType().kind() == TypeKind.Null && listt2.innerType().kind() == TypeKind.Null)
-						return listt1;
-					else
-					{
-						final UlyssesType subtype = UlyssesType.CoverType(listt1.innerType(), listt2.innerType());
-						if (subtype != null)
-							return new ListType(subtype, maxelems, null);
-						else
-							return null;
-					}
-				case MapType:
-					final MapType mapt1 = (MapType)type1;
-					final MapType mapt2 = (MapType)type2;
-					// empty maps lack type, so take the other one.
-					if ((mapt1.fromType().kind() == TypeKind.Null && mapt1.toType().kind() == TypeKind.Null)
-					   && (mapt2.fromType().kind() != TypeKind.Null && mapt2.toType().kind() != TypeKind.Null))
-						return mapt2;
-					else if ((mapt2.fromType().kind() == TypeKind.Null && mapt2.toType().kind() == TypeKind.Null)
-					   && (mapt1.fromType().kind() != TypeKind.Null && mapt1.toType().kind() != TypeKind.Null))
-						return mapt1;
-					else if ((mapt2.fromType().kind() == TypeKind.Null && mapt2.toType().kind() == TypeKind.Null)
-					   && (mapt1.fromType().kind() == TypeKind.Null && mapt1.toType().kind() == TypeKind.Null))
-						return mapt1;
-					else
-					{
-						final UlyssesType sub1 = UlyssesType.CoverType(mapt1.fromType(), mapt2.fromType());
-						final UlyssesType sub2 = UlyssesType.CoverType(mapt2.toType(), mapt2.toType());
-						maxelems = mapt1.maxNumberOfElements() > mapt2.maxNumberOfElements() ?
-							mapt1.maxNumberOfElements() : mapt2.maxNumberOfElements();
-						if (sub1 != null && sub2 != null)
-							return new MapType(sub1, sub2, maxelems, null);
-						else
-							return null;
-					}
-				case QrType:
-					return null; /*if refs are equal, we do not reach this statement! see above..*/
-				case TupleType:
-					final TupleType tuplet1 = (TupleType)type1;
-					final TupleType tuplet2 = (TupleType)type2;
-					final TupleType result = new TupleType(null);
-					final Iterator<UlyssesType> innert1 = tuplet1.innerTypes().iterator();
-					final Iterator<UlyssesType> innert2 = tuplet2.innerTypes().iterator();
-					while (innert1.hasNext())
-					{
-						final UlyssesType newinner = UlyssesType.CoverType(innert1.next(), innert2.next());
-						if (newinner == null)
-							return null;
-						result.AddType(newinner);
-					}
-					return result;
-				case OoActionSystemType:
-					if (type1.kind() == TypeKind.Null && type2.kind() != TypeKind.Null)
-						return type2;
-					else if (type2.kind() == TypeKind.Null && type1.kind() != TypeKind.Null)
-						return type1;
-					else if (type1.kind() == TypeKind.Null && type2.kind() == TypeKind.Null)
-						return type2;
-					else if (type1 == type2) // ref equals!
-						return type1;
-					else
-						return ClassBaseType((OoActionSystemType)type1, (OoActionSystemType)type2);
-				case OpaqueType:
-					assert(false);
-					return null;
-				default:
-					throw new NotImplementedException();
-			}
-		}
-	}
-
-	private static UlyssesType ClassBaseType(OoActionSystemType type1, OoActionSystemType type2)
-	{
-		// this is rather inefficient.. should be done differently
-		final OoActionSystemType typea = type1;
-		final OoActionSystemType typeb = type2;
-		OoActionSystemType basea = type1;
-		OoActionSystemType baseb = type2;
-		while (basea != null)
-		{
-			if (basea == typeb)  // ref equals
-				return basea;
-			basea = basea.baseType();
-		}
-		while (baseb != null)
-		{
-			if (baseb == typea) // ref equals
-				return baseb;
-			baseb = baseb.baseType();
-		}
-		return null;
-	}
-
-	public static boolean FirstTypeLessRange(UlyssesType type1, UlyssesType type2)
-	{
-		final TypeKind tk1 = type1.kind();
-		final TypeKind tk2 = type2.kind();
-
-		if (tk1 != tk2)
-			throw new ArgumentException("Types need to be equal");
-
-		switch (tk1)
-		{
-			case Any:
-				return false;
-			case IntType:
-				final IntType Int1 = (IntType)type1;
-				final IntType Int2 = (IntType)type2;
-				return Int1.rangeLow() > Int2.rangeLow() ||
-					Int1.rangeHigh() < Int2.rangeHigh();
-			case BoolType:
-				return false;
-			case FloatType:
-				final FloatType Float1 = (FloatType)type1;
-				final FloatType Float2 = (FloatType)type2;
-				return Float1.low() > Float2.low()
-					|| Float1.high() < Float2.high()
-					|| Float1.precision() > Float2.precision();
-			case EnumeratedType:
-				return false;
-			case ListType:
-				final ListType listt1 = (ListType)type1;
-				final ListType listt2 = (ListType)type2;
-				return (listt1.maxNumberOfElements() < listt2.maxNumberOfElements()) ||
-					UlyssesType.FirstTypeLessRange(listt1.innerType(), listt2.innerType());
-			case MapType:
-				final MapType mapt1 = (MapType)type1;
-				final MapType mapt2 = (MapType)type2;
-				return (mapt1.maxNumberOfElements() < mapt2.maxNumberOfElements()) ||
-					UlyssesType.FirstTypeLessRange(mapt1.fromType(), mapt2.fromType()) ||
-					UlyssesType.FirstTypeLessRange(mapt1.toType(), mapt2.toType());
-			case QrType:
-				return false;
-			case TupleType:
-				final TupleType tuplet1 = (TupleType)type1;
-				final TupleType tuplet2 = (TupleType)type2;
-				if (tuplet1.innerTypes().size() != tuplet2.innerTypes().size())
-					return false;
-				final Iterator<UlyssesType> innert1 = tuplet1.innerTypes().iterator();
-				final Iterator<UlyssesType> innert2 = tuplet2.innerTypes().iterator();
-				while (innert1.hasNext())
-				{
-					if (UlyssesType.FirstTypeLessRange(innert1.next(), innert2.next()))
-						return true;
-				}
-				return false;
-			case OoActionSystemType:
-				return false;
-			case OpaqueType:
-				assert(false);
-				return false;
-			default:
-				throw new NotImplementedException();
-		}
-	}
-
-	public static boolean TypeEqualByKind(UlyssesType type1, UlyssesType type2)
-	{
-		if ((type1 == null) || (type2 == null))
-			return false;
-
-		final TypeKind tk1 = type1.kind();
-		final TypeKind tk2 = type2.kind();
-
-		// if of different kind, then return false..
-		if (tk1 != tk2)
-			return false;
-
-		// if same kind, make a rigorous check
-		switch (tk1)
-		{
-			case Any:
-				return true;
-
-			case IntType:
-			case BoolType:
-			case FloatType:
-				return true;
-			case EnumeratedType:
-				return type1 == type2; // ref equals
-			case ListType:
-				final ListType listt1 = (ListType)type1;
-				final ListType listt2 = (ListType)type2;
-				return UlyssesType.TypeEqualByKind(listt1.innerType(), listt2.innerType());
-			case MapType:
-				final MapType mapt1 = (MapType)type1;
-				final MapType mapt2 = (MapType)type2;
-				return UlyssesType.TypeEqualByKind(mapt1.fromType(), mapt2.fromType()) &&
-					UlyssesType.TypeEqualByKind(mapt1.toType(), mapt2.toType());
-			case QrType:
-				final QrType qr1 = (QrType)type1;
-				final QrType qr2 = (QrType)type2;
-				return qr1 == qr2; // ref equals
-			case TupleType:
-				final TupleType tuplet1 = (TupleType)type1;
-				final TupleType tuplet2 = (TupleType)type2;
-				if (tuplet1.innerTypes().size() != tuplet2.innerTypes().size())
-					return false;
-				final Iterator<UlyssesType> innert1 = tuplet1.innerTypes().iterator();
-				final Iterator<UlyssesType> innert2 = tuplet2.innerTypes().iterator();
-				while (innert1.hasNext())
-				{
-					if (!UlyssesType.TypeEqualByKind(innert1.next(), innert2.next()))
-						return false;
-				}
-				return true;
-			case OoActionSystemType:
-				return type1 == type2; // ref equ.
-			case OpaqueType:
-				assert(false);
-				return false;
-			default:
-				throw new NotImplementedException();
-		}
-	}
-
-
-	public static boolean TypeEqual(UlyssesType type1, UlyssesType type2)
-	{
-		// this will also work with opaque types...
-		while (type1 instanceof OpaqueType)
-			type1 = ((OpaqueType)type1).resolvedType();
-		while (type2 instanceof OpaqueType)
-			type2 = ((OpaqueType)type2).resolvedType();
-
-		if ((type1 == null) || (type2 == null))
-			return false;
-
-		final TypeKind tk1 = type1.kind();
-		final TypeKind tk2 = type2.kind();
-
-		// if of different kind, then return false..
-		if (tk1 != tk2)
-			return false;
-
-		// if same kind, make a rigorous check
-		switch (tk1)
-		{
-			case IntType:
-				final IntType intt1 = (IntType)type1;
-				final IntType intt2 = (IntType)type2;
-				return intt1.rangeLow() == intt2.rangeLow() &&
-					intt1.rangeHigh() == intt2.rangeHigh();
-			case BoolType:
-				return true;
-			case FloatType:
-				final FloatType floatt1 = (FloatType)type1;
-				final FloatType floatt2 = (FloatType)type2;
-				return floatt1.low() == floatt2.low() &&
-					floatt1.high() == floatt2.high() &&
-					floatt1.precision() == floatt2.precision();
-			case EnumeratedType:
-				return type1 == type2; // ref equ
-			case ListType:
-				final ListType listt1 = (ListType)type1;
-				final ListType listt2 = (ListType)type2;
-				// an empty list can be of any type..
-				/*if ((listt1.innerType.kind == TypeKind.Null) || (listt2.innerType.kind == TypeKind.Null))
-					return true;
-				else*/
-				return UlyssesType.TypeEqual(listt1.innerType(), listt2.innerType()) &&
-						listt1.maxNumberOfElements() == listt2.maxNumberOfElements(); // need this because of covertype
-			case MapType:
-				final MapType mapt1 = (MapType)type1;
-				final MapType mapt2 = (MapType)type2;
-				return UlyssesType.TypeEqual(mapt1.fromType(), mapt2.fromType()) &&
-					UlyssesType.TypeEqual(mapt1.toType(), mapt2.toType()) &&
-					mapt1.maxNumberOfElements() == mapt2.maxNumberOfElements(); // need this because of covertype
-			case QrType:
-				final QrType qr1 = (QrType)type1;
-				final QrType qr2 = (QrType)type2;
-				return qr1 == qr2; // ref equ.
-			case TupleType:
-				final TupleType tuplet1 = (TupleType)type1;
-				final TupleType tuplet2 = (TupleType)type2;
-				if (tuplet1.innerTypes().size() != tuplet2.innerTypes().size())
-					return false;
-				final Iterator<UlyssesType> innert1 = tuplet1.innerTypes().iterator();
-				final Iterator<UlyssesType> innert2 = tuplet2.innerTypes().iterator();
-				while (innert1.hasNext())
-				{
-					if (!UlyssesType.TypeEqual(innert1.next(), innert2.next()))
-						return false;
-				}
-				return true;
-			case OoActionSystemType:
-				return type1 == type2; // ref equ. // || Covariance((OoActionSystemType)type1, (OoActionSystemType)type2);
-			case OpaqueType:
-				assert(false);
-				return false;
-			case Null:
-			case Any:
-				return true;
-			default:
-				throw new NotImplementedException();
-		}
-	}
-
-	/// <summary>
-	/// checks if type 2 is a desc. of type 1
-	/// </summary>
-	public static boolean Covariance(OoActionSystemType ooActionSystemType, OoActionSystemType ooActionSystemType_2)
-	{
-		// check if type 2 is a desc. of type 1
-		while (ooActionSystemType != ooActionSystemType_2 && ooActionSystemType_2.baseType() != null) // ref equ.
-			ooActionSystemType_2 = ooActionSystemType_2.baseType();
-
-		return ooActionSystemType == ooActionSystemType_2; // ref equ.
-	}
-}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/QrType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/QrType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/QrType.java	(nonexistent)
@@ -1,85 +0,0 @@
-/**
-  *
-  *                      OOAS Compiler
-  *
-  *       Copyright 2015, AIT Austrian Institute of Technology.
-  * This code is based on the C# Version of the OOAS Compiler, which is
-  * copyright 2015 by the Institute of Software Technology, Graz University
-  * of Technology with portions copyright by the AIT Austrian Institute of
-  * Technology. All rights reserved.
-  *
-  * SEE THE "LICENSE" FILE FOR THE TERMS UNDER WHICH THIS FILE IS PROVIDED.
-  *
-  * If you modify the file please update the list of contributors below to in-
-  * clude your name. Please also stick to the coding convention of using TABs
-  * to do the basic (block-level) indentation and spaces for anything after
-  * that. (Enable the display of special chars and it should be pretty obvious
-  * what this means.) Also, remove all trailing whitespace.
-  *
-  * Contributors:
-  *               Willibald Krenn (AIT)
-  *               Stephan Zimmerer (AIT)
-  *               Markus Demetz (AIT)
-  *               Christoph Czurda (AIT)
-  *
-  */
-
-
-package org.momut.ooas.ast.types;
-
-import java.util.ArrayList;
-
-import org.momut.ooas.ast.IAstVisitor;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
-import org.momut.ooas.ast.identifiers.TypeIdentifier;
-import org.momut.ooas.parser.SymbolTable;
-import org.momut.ooas.utils.exceptions.SymbolAlreadyDefinedException;
-
-///////////////////////////////////////////////
-///  Complex Type: QrType
-///  behaves somewhat similar to an enumerated type..
-///
-public final class QrType extends UlyssesType
-{
-	private final SymbolTable m_qspaceSymbols;
-	private final ArrayList<LandmarkIdentifier> m_listOfQspaceSymbols;
-
-	public SymbolTable symbolTable() { return m_qspaceSymbols; }
-	public ArrayList<LandmarkIdentifier> landmarks() { return m_listOfQspaceSymbols; }
-
-	public QrType(TypeIdentifier anIdentifier)
-	{
-		super(TypeKind.QrType, anIdentifier);
-		m_listOfQspaceSymbols = new ArrayList<LandmarkIdentifier>();
-		m_qspaceSymbols = new SymbolTable();
-	}
-
-	public void AddLandmark(LandmarkIdentifier aLandmark)
-	{
-		if (m_qspaceSymbols.Defined(aLandmark.tokenText()))
-			throw new SymbolAlreadyDefinedException(aLandmark.tokenText());
-
-		m_qspaceSymbols.AddIdentifier(aLandmark);
-		m_listOfQspaceSymbols.add(aLandmark);
-	}
-
-	@Override
-	public void Accept(IAstVisitor visitor)
-	{
-		visitor.visit(this);
-	}
-
-	@Override
-	public /*override*/ String AnonymousName()
-	{
-		StringBuilder result = new StringBuilder();
-		result.append("qr_");
-		for (LandmarkIdentifier sym: m_listOfQspaceSymbols)
-		{
-			result.append(sym.tokenText());
-			result.append("_");
-		}
-		return result.toString();
-	}
-
-}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/AstBuilder.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/AstBuilder.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/AstBuilder.java	(revision 9)
@@ -66,7 +66,7 @@
 import org.momut.ooas.ast.types.ListType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserError;
 import org.momut.ooas.parser.ParserState;
 
@@ -110,7 +110,7 @@
 
 
 	public static AttributeIdentifier createObjectAttribute(String varName, Identifier aClass, boolean doInstantiate, Identifier root){
-		final UlyssesType aType = aClass.type();
+		final Type aType = aClass.type();
 		aType.SetupAnonymousName(); //not sure if necessary
 		Expression anExpr;
 		if (doInstantiate){
@@ -130,7 +130,7 @@
 		return new ValueExpression<Boolean>(b, 0, 0, Boolean.class);
 	}
 
-	public static ListType createListType(UlyssesType elemType, int max, TypeIdentifier anIdentifier){
+	public static ListType createListType(Type elemType, int max, TypeIdentifier anIdentifier){
 		final ListType result = new ListType(elemType, max, null);
 		result.SetupAnonymousName();
 		result.SetTypeIdentifier(anIdentifier);
@@ -155,7 +155,7 @@
 	}
 
 
-	public static UlyssesType createIntType(int low, int high){
+	public static Type createIntType(int low, int high){
 		return new IntType(low, high, null);
 	}
 
@@ -179,7 +179,7 @@
 
 	public static AttributeIdentifier createBoolAttribute(String varname, boolean isStatic, boolean init, Identifier root){
 		final Expression anExpr = new ValueExpression<Boolean>(init, 0, 0, Boolean.class);
-		final UlyssesType aType = new BoolType(null);
+		final Type aType = new BoolType(null);
 		aType.SetupAnonymousName();
 		final AttributeIdentifier attributeIdentifier = new AttributeIdentifier(varname, aType, ((IScope)(root).type()), anExpr, isStatic, false, false );
 		((IScope)(root).type()).AddIdentifier(attributeIdentifier, null);
@@ -187,7 +187,7 @@
 		return attributeIdentifier;
 	}
 
-	public static AttributeIdentifier createAttribute(String varname, boolean isStatic, UlyssesType aType, Expression anExpr, IScope scope){
+	public static AttributeIdentifier createAttribute(String varname, boolean isStatic, Type aType, Expression anExpr, IScope scope){
 		final AttributeIdentifier attributeIdentifier = new AttributeIdentifier(varname, aType, scope, anExpr, isStatic, false, false );
 		scope.AddIdentifier(attributeIdentifier, null);
 
@@ -197,11 +197,11 @@
 	public static MethodIdentifier createMethod(
 			String name,
 			LinkedList<ParameterIdentifier> params,
-			UlyssesType returnType,
+			Type returnType,
 			Identifier as,
 			Statement body
 			) {
-		final LinkedList<UlyssesType> parameterTypes = new LinkedList<UlyssesType>();
+		final LinkedList<Type> parameterTypes = new LinkedList<Type>();
 		for (final ParameterIdentifier param : params) {
 			parameterTypes.add(param.type());
 		}
@@ -224,7 +224,7 @@
 	public static NamedActionIdentifier createActionWithoutBody(
 			FunctionType.FunctionTypeEnum functionType,
 			String name,
-			LinkedList<UlyssesType> parameters,
+			LinkedList<Type> parameters,
 			Identifier as)
 	{
 		final FunctionType actionType = new FunctionType(functionType, parameters, null);
@@ -237,7 +237,7 @@
 	public static Identifier createAction(
 			FunctionType.FunctionTypeEnum functionType,
 			String name,
-			LinkedList<UlyssesType> parameters,
+			LinkedList<Type> parameters,
 			Identifier as,
 			Statement body)
 	{
@@ -297,7 +297,7 @@
 		// -- define the (implicitly declared type of the action) --lBlock
 		final FunctionType helloWorldActionType = new FunctionType(  // this type is anonymous and doesn't have a name!
 				FunctionTypeEnum.Observable,   // This is observable, hence an action
-				new LinkedList<UlyssesType>(), // no parameters
+				new LinkedList<Type>(), // no parameters
 				null                           // void return
 		);
 		helloWorldActionType.SetupAnonymousName(); // need to be called before setting the type identifier
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/TupleType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/TupleType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/TupleType.java	(revision 9)
@@ -37,19 +37,19 @@
 ///////////////////////////////////////////////
 ///  Complex Type: TupleType
 ///
-public final class TupleType extends UlyssesType
+public final class TupleType extends Type
 {
-	private final LinkedList<UlyssesType> m_innerTypes;
+	private final LinkedList<Type> m_innerTypes;
 
-	public LinkedList<UlyssesType> innerTypes() { return m_innerTypes; }
+	public LinkedList<Type> innerTypes() { return m_innerTypes; }
 
 	public TupleType(TypeIdentifier anIdentifier)
 	{
 		super(TypeKind.TupleType, anIdentifier);
-		m_innerTypes = new LinkedList<UlyssesType>();
+		m_innerTypes = new LinkedList<Type>();
 	}
 
-	public void AddType(UlyssesType aType)
+	public void AddType(Type aType)
 	{
 		m_innerTypes.addLast(aType);
 	}
@@ -65,7 +65,7 @@
 	{
 		StringBuilder result = new StringBuilder();
 		result.append("tuple_");
-		for (UlyssesType inner: m_innerTypes)
+		for (Type inner: m_innerTypes)
 		{
 			result.append(inner.toString());
 			result.append("_");
@@ -76,7 +76,7 @@
 	@Override
 	public int valueCount() {
 		int result = 1;
-		for (final UlyssesType inner: m_innerTypes)
+		for (final Type inner: m_innerTypes)
 			result *= inner.valueCount();
 		return result;
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/EnumType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/EnumType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/EnumType.java	(revision 9)
@@ -40,7 +40,7 @@
 ///////////////////////////////////////////////
 ///  Simple Type: Enumeration
 ///
-public class EnumType extends UlyssesType
+public class EnumType extends Type
 {
 	protected SymbolTable m_enumSymbols;
 	protected ArrayList<EnumIdentifier> m_listOfEnumSymbols;
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/IAstVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/IAstVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/IAstVisitor.java	(revision 9)
@@ -36,7 +36,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
 import org.momut.ooas.ast.expressions.TupleConstructor;
@@ -49,7 +48,6 @@
 import org.momut.ooas.ast.identifiers.ConstantIdentifier;
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.ExpressionVariableIdentifier;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
@@ -70,7 +68,6 @@
 import org.momut.ooas.ast.statements.KillStatement;
 import org.momut.ooas.ast.statements.NondetBlock;
 import org.momut.ooas.ast.statements.PrioBlock;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.SkipStatement;
 import org.momut.ooas.ast.types.AnyType;
@@ -85,7 +82,6 @@
 import org.momut.ooas.ast.types.NullType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 
 /*Notice: The visitor must implement the traversal!*/
@@ -96,7 +92,6 @@
 
 	/*Identifiers*/
 	void visit(EnumIdentifier enumIdentifier);
-	void visit(LandmarkIdentifier landmarkIdentifier);
 	void visit(AttributeIdentifier attributeIdentifier);
 	void visit(ExpressionVariableIdentifier expressionVariableIdentifier);
 	void visit(ParameterIdentifier parameterIdentifier);
@@ -124,7 +119,6 @@
 	void visit(SkipStatement skipStatement);
 	void visit(AbortStatement abortStatement);
 	void visit(KillStatement killStatement);
-	void visit(QualitativeConstraintStatement qalitativeConstraintStatement);
 
 
 	/*Expressions*/
@@ -136,7 +130,6 @@
 	void visit(MapConstructor mapConstructor);
 	void visit(TupleConstructor tupleConstructor);
 	void visit(ObjectConstructor objectConstructor);
-	void visit(QValConstructor qValConstructor);
 	void visit(AccessExpression accessExpression);
 	void visit(BinaryOperator binaryOperator);
 	void visit(TernaryOperator ternaryOperator);
@@ -155,7 +148,6 @@
 	void visit(EnumType enumType);
 	void visit(ListType listType);
 	void visit(MapType mapType);
-	void visit(QrType qrType);
 	void visit(TupleType tupleType);
 	void visit(FunctionType functionType);
 	void visit(OoActionSystemType ooActionSystemType);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/FunctionType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/FunctionType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/FunctionType.java	(revision 9)
@@ -34,7 +34,7 @@
 ///////////////////////////////////////////////
 ///  Complex Type: Function
 ///
-public final class FunctionType extends UlyssesType
+public final class FunctionType extends Type
 {
 	public enum FunctionTypeEnum {
 		Observable (0),
@@ -52,23 +52,23 @@
 
 	private Boolean m_miracleSafe = null;
 	private boolean m_pure;
-	private LinkedList<UlyssesType> m_parameter;
-	private UlyssesType m_returnType;
+	private LinkedList<Type> m_parameter;
+	private Type m_returnType;
 	private final FunctionTypeEnum m_functionType;
 
 	public Boolean isMiracleSafe() { return m_miracleSafe; }
 	public boolean isPureFunction() { return m_pure; }
-	public LinkedList<UlyssesType> parameter() { return m_parameter; }
-	public UlyssesType returnType() { return m_returnType; }
+	public LinkedList<Type> parameter() { return m_parameter; }
+	public Type returnType() { return m_returnType; }
 	public FunctionTypeEnum functionType() { return m_functionType; }
 
-	public FunctionType(FunctionTypeEnum functionType, LinkedList<UlyssesType> parameter, UlyssesType returnType)
+	public FunctionType(FunctionTypeEnum functionType, LinkedList<Type> parameter, Type returnType)
 	{
 		super (TypeKind.FunctionType, null);
 		if (parameter != null)
 			m_parameter = parameter;
 		else
-			m_parameter = new LinkedList<UlyssesType>();
+			m_parameter = new LinkedList<Type>();
 		m_returnType = returnType;
 		m_functionType = functionType;
 		m_miracleSafe = null;
@@ -76,12 +76,12 @@
 	}
 
 
-	public void AddParameterType(UlyssesType aType)
+	public void AddParameterType(Type aType)
 	{
 		m_parameter.addLast(aType);
 	}
 
-	public void SetReturnType(UlyssesType aType)
+	public void SetReturnType(Type aType)
 	{
 		m_returnType = aType;
 	}
@@ -109,7 +109,7 @@
 		result.append("fun_");
 		result.append(m_functionType.toString());
 		result.append("_");
-		for (final UlyssesType sym: m_parameter)
+		for (final Type sym: m_parameter)
 		{
 			result.append(sym.toString());
 			result.append("_");
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpExpression.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpExpression.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpExpression.java	(revision 9)
@@ -61,10 +61,9 @@
 import org.momut.ooas.ast.types.MapType;
 import org.momut.ooas.ast.types.OoActionSystemInstance;
 import org.momut.ooas.ast.types.OoActionSystemType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.parser.SymbolTable;
 import org.momut.ooas.visitors.OoaExpressionVisitor;
@@ -486,7 +485,7 @@
 		m_emitter = tmp;
 
 		// treat cases of MyTuple(a,b..) = <expr>
-		final Iterator<UlyssesType> elem = ((TupleType)tupleConstructor.type()).innerTypes().iterator();
+		final Iterator<Type> elem = ((TupleType)tupleConstructor.type()).innerTypes().iterator();
 		int i = 0;
 		m_emitter.Append("(");
 		while (elem.hasNext())
@@ -594,7 +593,7 @@
 
 		CadpType.EmitType(binaryOperator.type());
 		final ListType alist = (ListType)binaryOperator.type();
-		final UlyssesType innerType = alist.innerType();
+		final Type innerType = alist.innerType();
 		final String resultTypeName = CadpIdentifier.GetIdentifierString(binaryOperator.type().identifier());
 
 		m_helperCode.AppendLine(String.format("%4$s %3$s(%1$s listA, %2$s listB){", childATypeName, childBTypeName, result, resultTypeName));
@@ -695,7 +694,7 @@
 
 		CadpType.EmitType(binaryOperator.type());
 		final ListType alist = (ListType)binaryOperator.type();
-		final UlyssesType innerType = alist.innerType();
+		final Type innerType = alist.innerType();
 		final String resultTypeName = CadpIdentifier.GetIdentifierString(binaryOperator.type().identifier());
 
 		m_helperCode.AppendLine(String.format("%4$s %3$s(%1$s listA, %2$s listB){", childATypeName, childBTypeName, result, resultTypeName));
@@ -755,10 +754,10 @@
 
 			final FunctionType fun = (FunctionType)leftcall.child().type();
 			final FunctionIdentifier funid = (FunctionIdentifier) fun.identifier();
-			final Iterator<UlyssesType> node = fun.parameter().iterator();
+			final Iterator<Type> node = fun.parameter().iterator();
 			for (int i = 0; i < fun.parameter().size() - 2; i++)
 			{
-				final UlyssesType nodeValue = node.next();
+				final Type nodeValue = node.next();
 				paramtypes.add(CadpType.DumpType(nodeValue));
 				final CadpIdentifier paramid = new CadpIdentifier(m_procInfo.stateVariableString);
 				funid.parameter().get(i).Accept(paramid);
@@ -1107,7 +1106,7 @@
 	/* The cast support in this target instanceof limited: We can not cast differently sized types!
 	 * Hence list and map lengths must be equal.
 	 * */
-	private boolean CADPCastEquivalent(UlyssesType type1, UlyssesType type2)
+	private boolean CADPCastEquivalent(Type type1, Type type2)
 	{
 		if ((type1 == null) || (type2 == null))
 			return false;
@@ -1141,21 +1140,17 @@
 			return CADPCastEquivalent(mapt1.fromType(), mapt2.fromType()) &&
 					CADPCastEquivalent(mapt1.toType(), mapt2.toType()) &&
 					mapt1.maxNumberOfElements() == mapt2.maxNumberOfElements();
-		case QrType:
-			final QrType qr1 = (QrType)type1;
-			final QrType qr2 = (QrType)type2;
-			return qr1 == qr2; // ref eq.
 		case TupleType:
 			final TupleType tuplet1 = (TupleType)type1;
 			final TupleType tuplet2 = (TupleType)type2;
 			if (tuplet1.innerTypes().size() != tuplet2.innerTypes().size())
 				return false;
-			final Iterator<UlyssesType> innert1 = tuplet1.innerTypes().iterator();
-			final Iterator<UlyssesType> innert2 = tuplet2.innerTypes().iterator();
+			final Iterator<Type> innert1 = tuplet1.innerTypes().iterator();
+			final Iterator<Type> innert2 = tuplet2.innerTypes().iterator();
 			while (innert1.hasNext())
 			{
-				final UlyssesType innert1Value = innert1.next();
-				final UlyssesType innert2Value = innert2.next();
+				final Type innert1Value = innert1.next();
+				final Type innert2Value = innert2.next();
 
 				if (!CADPCastEquivalent(innert1Value, innert2Value))
 					return false;
@@ -1163,7 +1158,7 @@
 			return true;
 		case OoActionSystemType:
 			return type1 == type2 /*ref. eq.*/ ||
-					UlyssesType.Covariance((OoActionSystemType)type2, (OoActionSystemType)type1);
+					Type.Covariance((OoActionSystemType)type2, (OoActionSystemType)type1);
 		case OpaqueType:
 			throw new IllegalArgumentException();
 		case Null:
@@ -1291,7 +1286,7 @@
 					unaryOperator.type().Accept(targetType);
 					final CadpType sourceType = new CadpType();
 					unaryOperator.child().type().Accept(sourceType);
-					if (!(UlyssesType.Covariance((OoActionSystemType)unaryOperator.child().type(), (OoActionSystemType)unaryOperator.type())))
+					if (!(Type.Covariance((OoActionSystemType)unaryOperator.child().type(), (OoActionSystemType)unaryOperator.type())))
 					{
 						// cast result type (unaryOperator.type) not a sub-type of unaryOperator.child.type
 						return String.format("/* up-cast: %1$s as %2$s */ *(%2$s*)&", sourceType.ToString(), targetType.ToString());
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/runtime/QualitativeValue.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/runtime/QualitativeValue.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/runtime/QualitativeValue.java	(nonexistent)
@@ -1,42 +0,0 @@
-/**
-  *
-  *                      OOAS Compiler
-  *
-  *       Copyright 2015, AIT Austrian Institute of Technology.
-  * This code is based on the C# Version of the OOAS Compiler, which is
-  * copyright 2015 by the Institute of Software Technology, Graz University
-  * of Technology with portions copyright by the AIT Austrian Institute of
-  * Technology. All rights reserved.
-  *
-  * SEE THE "LICENSE" FILE FOR THE TERMS UNDER WHICH THIS FILE IS PROVIDED.
-  *
-  * If you modify the file please update the list of contributors below to in-
-  * clude your name. Please also stick to the coding convention of using TABs
-  * to do the basic (block-level) indentation and spaces for anything after
-  * that. (Enable the display of special chars and it should be pretty obvious
-  * what this means.) Also, remove all trailing whitespace.
-  *
-  * Contributors:
-  *               Willibald Krenn (AIT)
-  *               Stephan Zimmerer (AIT)
-  *               Markus Demetz (AIT)
-  *               Christoph Czurda (AIT)
-  *
-  */
-
-
-package org.momut.ooas.codegen.java.runtime;
-
-public class QualitativeValue
-{
-	public Integer intervalLow;
-	public Integer intervalHigh;
-	public Integer derivation;
-
-	public QualitativeValue(Integer lowval, Integer highval, Integer deriv)
-	{
-		intervalLow = lowval;
-		intervalHigh = highval;
-		derivation = deriv;
-	}
-}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpType.java	(revision 9)
@@ -51,10 +51,9 @@
 import org.momut.ooas.ast.types.OoActionSystemInstance;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.parser.SymbolTable;
@@ -154,11 +153,6 @@
 	{
 		throw new UnsupportedOperationException();
 	}
-	@Override
-	public  void visit(QrType qrType)
-	{
-		throw new UnsupportedOperationException();
-	}
 
 	@Override
 	public  void visit(FunctionType functionType)
@@ -189,7 +183,7 @@
 		super(null);
 	}
 
-	public static String DumpType(UlyssesType atype)
+	public static String DumpType(Type atype)
 	{
 		final CadpType newtype = new CadpType();
 		atype.Accept(newtype);
@@ -199,7 +193,7 @@
 
 	private static HashSet<String> emittedTypes = new HashSet<String>();
 
-	private static void EmitType(UlyssesType aType, OoasCodeEmitter emitter)
+	private static void EmitType(Type aType, OoasCodeEmitter emitter)
 	{
 		final String typename = CadpIdentifier.GetIdentifierString(aType.identifier());
 		if (!emittedTypes.contains(typename))
@@ -559,7 +553,7 @@
 		emitter.AppendLine("#endif");
 		emitter.AppendLineIncIndent(String.format("struct struct_%1$s {", typeName));
 		int i = 0;
-		for (final UlyssesType it: atupleType.innerTypes())
+		for (final Type it: atupleType.innerTypes())
 		{
 			EmitType(it);
 			emitter.AppendLine(String.format("%1$s elem_%2$s;", DumpType(it), i));
@@ -575,7 +569,7 @@
 		emitter.AppendLine(String.format("/*%1$s%2$s*/", constructorString, typeName));
 		emitter.Append(String.format("%1$s %2$s%1$s (", typeName, constructorString));
 		i = 0;
-		for (final UlyssesType it: atupleType.innerTypes())
+		for (final Type it: atupleType.innerTypes())
 		{
 			if (!emittedTypes.contains(CadpIdentifier.GetIdentifierString(it.identifier())))
 				EmitType(it, result);
@@ -587,7 +581,7 @@
 		emitter.AppendLineIncIndent(") {");
 		emitter.AppendLine(String.format("%1$s result;", typeName));
 		i = 0;
-		for (final UlyssesType it:  atupleType.innerTypes())
+		for (final Type it:  atupleType.innerTypes())
 		{
 			emitter.AppendLine(String.format("result.elem_%1$s = arg_%1$s;", i));
 			/*do range checking on ints and floats*/
@@ -623,7 +617,7 @@
 		emitter.AppendLine(String.format("/*%1$s%2$s*/", highString, typeName));
 		emitter.Append(String.format("long long int %2$s%1$s (void) { return ", typeName, highString));
 		i = 0;
-		for (final UlyssesType x : atupleType.innerTypes())
+		for (final Type x : atupleType.innerTypes())
 		{
 			if (i != 0)
 				emitter.Append(" * ");
@@ -640,7 +634,7 @@
 		emitter.Append(String.format("return %2$s%1$s (", typeName, constructorString));
 		i = 0;
 		final StringBuilder divisor = new StringBuilder("value");
-		for (final UlyssesType it: atupleType.innerTypes())
+		for (final Type it: atupleType.innerTypes())
 		{
 			if (i != 0)
 				emitter.Append(",");
@@ -656,7 +650,7 @@
 		emitter.AppendLine(String.format("void %1$s%2$s (CAESAR_TYPE_FILE CAESAR_FILE, %2$s A_VALUE)", printString, typeName));
 		emitter.AppendLine("{");
 		emitter.AppendLine(String.format("  fprintf(CAESAR_FILE,\" (\");"));
-		final Iterator<UlyssesType> iter = atupleType.innerTypes().iterator();
+		final Iterator<Type> iter = atupleType.innerTypes().iterator();
 		for (i = 0; i < atupleType.innerTypes().size(); i++)
 		{
 			if (i != 0)
@@ -831,21 +825,21 @@
 
 
 
-	public static String GetMaxVal(UlyssesType atype)
+	public static String GetMaxVal(Type atype)
 	{
 		return String.format(" (%2$s%1$s() - 1) ", GetIdentifierString(atype.identifier()), highString);
 	}
 
-	public static String GetMinVal(UlyssesType atype)
+	public static String GetMinVal(Type atype)
 	{
 		return String.format(" %2$s%1$s() ", GetIdentifierString(atype.identifier()), lowString);
 	}
 
-	public static String GetEnumVal(UlyssesType atype, String indexvar)
+	public static String GetEnumVal(Type atype, String indexvar)
 	{
 		return String.format(" %2$s%1$s(%3$s)", GetIdentifierString(atype.identifier()), enumString, indexvar);
 	}
-	public static String GetEnumVal(UlyssesType atype)
+	public static String GetEnumVal(Type atype)
 	{
 		return String.format(" %2$s%1$s", GetIdentifierString(atype.identifier()), enumString);
 	}
@@ -856,7 +850,7 @@
 	private static OoasCodeEmitter m_classTypeDefinitions = new OoasCodeEmitter();
 	private static OoasCodeEmitter m_typeDefinitions = new OoasCodeEmitter();
 
-	public static void EmitType(UlyssesType aType)
+	public static void EmitType(Type aType)
 	{
 		EmitType(aType, m_typeDefinitions);
 	}
@@ -875,7 +869,7 @@
 		return result.toString();
 	}
 
-	public static boolean IsNumeric(UlyssesType ulyssesType)
+	public static boolean IsNumeric(Type ulyssesType)
 	{
 		switch (ulyssesType.kind())
 		{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaInitVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaInitVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaInitVisitor.java	(revision 9)
@@ -43,7 +43,7 @@
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.parser.ParserError;
 import org.momut.ooas.parser.ParserMessage;
@@ -54,7 +54,7 @@
 {
 	private final String SimulationNameSpace = "org.momut.ooas.codegen.java.simulation";
 	private final OoasCodeEmitter emitter;
-	private final ArrayList<UlyssesType> hiddenTypesStillToEmit = new ArrayList<UlyssesType>();
+	private final ArrayList<Type> hiddenTypesStillToEmit = new ArrayList<Type>();
 	private final Scratchbook scratchbook = new Scratchbook();
 	private StringBuilder helpers = new StringBuilder();
 
@@ -115,7 +115,7 @@
 			? actionSystemClass.parent.objectInstance
 			: null;
 
-		final HashSet<UlyssesType> seenTypes = new HashSet<UlyssesType>();
+		final HashSet<Type> seenTypes = new HashSet<Type>();
 		final StringBuilder instantiationPath = new StringBuilder();
 		if (aParentInstance != null)
 		{
@@ -128,7 +128,7 @@
 			}
 		}
 
-		UlyssesType tmpType = atype;
+		Type tmpType = atype;
 		while (tmpType != null)
 		{
 			if (seenTypes.contains(tmpType))
@@ -169,7 +169,7 @@
 		if (ConstrNum >= 0)
 			scratchbook.constructors().get(ConstrNum).AddInstance(actionSystemClass.objectInstance);
 	}
-	private String GetCSharpType(UlyssesType aType)
+	private String GetCSharpType(Type aType)
 	{
 		if (aType.isAnonymousType())
 			hiddenTypesStillToEmit.add(aType);
@@ -266,7 +266,7 @@
 	{
 		emitter.AppendLineIncIndent(String.format("public static class %s {", GetIdentifierString(atupleType.identifier().tokenText())));
 		int i = 0;
-		for (final UlyssesType it: atupleType.innerTypes())
+		for (final Type it: atupleType.innerTypes())
 		{
 			emitter.AppendLine(String.format("public %s elem_%s;", GetCSharpType(it), Integer.toString(i)));
 			i++;
@@ -275,7 +275,7 @@
 		emitter.AppendLine(" /*constr*/ ");
 		emitter.Append(String.format("public %s (", GetIdentifierString(atupleType.identifier().tokenText())));
 		i = 0;
-		for (final UlyssesType it: atupleType.innerTypes())
+		for (final Type it: atupleType.innerTypes())
 		{
 			if (i != 0)
 				emitter.Append(",");
@@ -313,7 +313,7 @@
 	protected void VisitAstElement(IAst element, IAst parent)
 	{
 		if (element.nodeType() == AstNodeTypeEnum.type &&
-				((UlyssesType)element).kind() == TypeKind.OoActionSystemType)
+				((Type)element).kind() == TypeKind.OoActionSystemType)
 		{
 			/*OoActionSystemType asystem = (OoActionSystemType)element;
 			if (asystem.autoConstruction)
@@ -321,12 +321,12 @@
 			Emit((OoActionSystemType)element);
 		}
 		else if (element.nodeType() == AstNodeTypeEnum.type &&
-				((UlyssesType)element).kind() == TypeKind.TupleType)
+				((Type)element).kind() == TypeKind.TupleType)
 		{
 			Emit((TupleType)element);
 		}
 		else if (element.nodeType() == AstNodeTypeEnum.type &&
-				((UlyssesType)element).kind() == TypeKind.EnumeratedType)
+				((Type)element).kind() == TypeKind.EnumeratedType)
 		{
 			Emit((EnumType)element);
 		}
@@ -348,7 +348,7 @@
 		super.visit(mainModule);
 
 		emitter.AppendLine(" /* == anonymous types == */ ");
-		for (final UlyssesType x: hiddenTypesStillToEmit)
+		for (final Type x: hiddenTypesStillToEmit)
 		{
 			// we only need to define tuples and enums..
 			if (x.kind() == TypeKind.TupleType)
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/ListType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/ListType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/ListType.java	(revision 9)
@@ -34,15 +34,15 @@
 ///////////////////////////////////////////////
 ///  Complex Type: List
 ///
-public final class ListType extends UlyssesType
+public final class ListType extends Type
 {
-	private UlyssesType m_innerType;
+	private Type m_innerType;
 	private final int m_maxNumberOfElements;
 
-	public UlyssesType innerType() { return m_innerType; }
+	public Type innerType() { return m_innerType; }
 	public int maxNumberOfElements() { return m_maxNumberOfElements; }
 
-	public ListType(UlyssesType elemType, int max, TypeIdentifier anIdentifier)
+	public ListType(Type elemType, int max, TypeIdentifier anIdentifier)
 	{
 		super(TypeKind.ListType, anIdentifier);
 		m_innerType = elemType;
@@ -55,7 +55,7 @@
 		visitor.visit(this);
 	}
 
-	public void SetInnerType(UlyssesType newType)
+	public void SetInnerType(Type newType)
 	{
 		if (newType == null)
 			throw new ArgumentException();
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/NullType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/NullType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/NullType.java	(revision 9)
@@ -32,7 +32,7 @@
 ///////////////////////////////////////////////
 ///  Special type: null
 ///
-public final class NullType extends UlyssesType
+public final class NullType extends Type
 {
 	public NullType()
 	{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/OpaqueType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/OpaqueType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/OpaqueType.java	(revision 9)
@@ -33,11 +33,11 @@
 ///////////////////////////////////////////////
 ///  Opaque Type..
 ///
-public class OpaqueType extends UlyssesType
+public class OpaqueType extends Type
 {
-	private UlyssesType m_resolvedType;
+	private Type m_resolvedType;
 
-	public UlyssesType resolvedType() { return m_resolvedType; }
+	public Type resolvedType() { return m_resolvedType; }
 
 	public OpaqueType(TypeIdentifier reference)
 	{
@@ -44,7 +44,7 @@
 		super(TypeKind.OpaqueType, reference);
 	}
 
-	public void SetResolvedType(UlyssesType aType)
+	public void SetResolvedType(Type aType)
 	{
 		m_resolvedType = aType;
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/ast/OoaAstEmitter.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/ast/OoaAstEmitter.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/ast/OoaAstEmitter.java	(revision 9)
@@ -44,7 +44,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.Quantifier;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
@@ -62,7 +61,6 @@
 import org.momut.ooas.ast.identifiers.Identifier;
 import org.momut.ooas.ast.identifiers.IdentifierKind;
 import org.momut.ooas.ast.identifiers.IdentifierList;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
@@ -83,7 +81,6 @@
 import org.momut.ooas.ast.statements.KillStatement;
 import org.momut.ooas.ast.statements.NondetBlock;
 import org.momut.ooas.ast.statements.PrioBlock;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.SkipStatement;
 import org.momut.ooas.ast.statements.Statement;
@@ -100,10 +97,9 @@
 import org.momut.ooas.ast.types.OoActionSystemInstance;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
@@ -116,7 +112,7 @@
 	final ParserState m_state;
 	protected HashSet<Object> m_visited = new HashSet<Object>();
 	final IdentityHashMap<Identifier,T> m_convertedIdentifiers;
-	final IdentityHashMap<UlyssesType,T> m_convertedTypes;
+	final IdentityHashMap<Type,T> m_convertedTypes;
 	final IdentityHashMap<Expression,T> m_convertedExpressions;
 	final IdentityHashMap<Statement,T> m_convertedStatements;
 	final IdentityHashMap<IScope,T> m_convertedScopes;
@@ -173,7 +169,7 @@
 		return result;
 	}
 
-	private final T createType(UlyssesType type) {
+	private final T createType(Type type) {
 		TypeKind kind = type.kind();
 		if (type instanceof ValuedEnumType)
 			kind = TypeKind.ValuedEnumeratedType;
@@ -657,11 +653,11 @@
 
 		final Identifier id = tupleType.identifier();
 		VisitSub(id, tupleType);
-		for (final UlyssesType t: tupleType.innerTypes())
+		for (final Type t: tupleType.innerTypes())
 			VisitSub(t, tupleType);
 
 		final T list = m_copier.createTypeList();
-		for (final UlyssesType t: tupleType.innerTypes())
+		for (final Type t: tupleType.innerTypes())
 			m_copier.addTypeToList(list, m_convertedTypes.get(t));
 
 		m_copier.initTupleType(
@@ -678,13 +674,13 @@
 
 		final Identifier id = functionType.identifier();
 		VisitSub(id, functionType);
-		for (final UlyssesType a: functionType.parameter())
+		for (final Type a: functionType.parameter())
 			VisitSub(a, functionType);
 		VisitSub(functionType.returnType(), functionType);
 
 
 		final T list = m_copier.createTypeList();
-		for (final UlyssesType t: functionType.parameter())
+		for (final Type t: functionType.parameter())
 			m_copier.addTypeToList(list, m_convertedTypes.get(t));
 
 		m_copier.initFunctionType(
@@ -1449,32 +1445,4 @@
 		// maps are not supported right now
 		throw new NotImplementedException();
 	}
-
-	@Override
-	public  void visit(QrType qrType)
-	{
-		// QR is never going to be supported again.
-		throw new NotImplementedException();
-	}
-
-	@Override
-	public void visit(QValConstructor qValConstructor)
-	{
-		// we do not support qualitative systems anymore
-		throw new NotImplementedException();
-	}
-
-	@Override
-	public void visit(QualitativeConstraintStatement qalitativeConstraintStatement)
-	{
-		// we do not support qualitative systems anymore
-		throw new NotImplementedException();
-	}
-
-	@Override
-	public void visit(LandmarkIdentifier landmarkIdentifier)
-	{
-		// we do not support qualitative systems anymore
-		throw new NotImplementedException();
-	}
 }
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpStatement.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpStatement.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpStatement.java	(revision 9)
@@ -53,7 +53,7 @@
 import org.momut.ooas.ast.types.FunctionType;
 import org.momut.ooas.ast.types.IntType;
 import org.momut.ooas.ast.types.ListType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.visitors.OoaPrintVisitor;
 import org.momut.ooas.visitors.OoaStatementVisitor;
@@ -317,7 +317,7 @@
 		m_emitter.AppendLineIncIndent("{");
 		m_emitter.AppendLine("oldState = (CAESAR_TYPE_STATE) elems->aState;");
 
-		final ArrayList<SimpleEntry<String, UlyssesType>> nondetEnumerators = new ArrayList<>();
+		final ArrayList<SimpleEntry<String, Type>> nondetEnumerators = new ArrayList<>();
 		if (assignment.symbols().symbolList().size() > 0)
 		{
 			for (final Identifier sym : assignment.symbols().symbolList())
@@ -327,16 +327,16 @@
 				sym.type().Accept(typevis);
 				sym.Accept(idvis);
 				m_emitter.AppendLine(String.format("%1$s %2$s; /* unbound in expression */", typevis.ToString(), idvis.toString()));
-				nondetEnumerators.add(new SimpleEntry<String, UlyssesType>(idvis.toString(), sym.type()));
+				nondetEnumerators.add(new SimpleEntry<String, Type>(idvis.toString(), sym.type()));
 			}
 		}
 
 		if (assignment.nondetExpression() != null)
 		{
-			for (final SimpleEntry<String, UlyssesType> key : nondetEnumerators)
+			for (final SimpleEntry<String, Type> key : nondetEnumerators)
 			{
 				m_emitter.AppendLine(String.format("for (%1$s = %2$s; %1$s <= %3$s; %1$s++) ",
-						key.getKey(), UlyssesType.Low(key.getValue()), UlyssesType.High(key.getValue())));
+						key.getKey(), Type.Low(key.getValue()), Type.High(key.getValue())));
 				m_emitter.AppendLineIncIndent("{");
 			}
 
@@ -406,7 +406,7 @@
 		m_emitter.AppendLine(String.format("LIST_INSERT_SINGLELIST(%1$s,newListElem);", m_procInfo.doneListString));
 		m_emitter.AppendLine("}");
 		if (assignment.nondetExpression() != null)
-			for (@SuppressWarnings("unused") final SimpleEntry<String, UlyssesType> key : nondetEnumerators)
+			for (@SuppressWarnings("unused") final SimpleEntry<String, Type> key : nondetEnumerators)
 				m_emitter.AppendLine("} /* closing nondet assignment for loop */");
 
 		m_emitter.AppendLine("elems = elems->next;");
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaExpression.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaExpression.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaExpression.java	(revision 9)
@@ -39,7 +39,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
 import org.momut.ooas.ast.expressions.TupleConstructor;
@@ -48,14 +47,11 @@
 import org.momut.ooas.ast.expressions.UnaryOperator;
 import org.momut.ooas.ast.expressions.UnresolvedIdentifierExpression;
 import org.momut.ooas.ast.expressions.ValueExpression;
-import org.momut.ooas.ast.expressions.QValConstructor.QValDeriv;
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
 import org.momut.ooas.ast.identifiers.IdentifierKind;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.utils.UnsignedHelper;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
@@ -176,14 +172,6 @@
 	@Override
 	public void visit(IdentifierExpression identifierExpression)
 	{
-		if (identifierExpression.identifier().kind() == IdentifierKind.LandmarkIdentifier)
-		{
-			final LandmarkIdentifier lmid = (LandmarkIdentifier)identifierExpression.identifier();
-			final QrType qr = (QrType)lmid.type();
-			m_emitter.Append(qr.landmarks().indexOf(lmid));
-			return;
-		}
-
 		if (identifierExpression.identifier().kind() == IdentifierKind.EnumIdentifier)
 		{
 			m_emitter.Append(GetIdentifierString(((EnumIdentifier)identifierExpression.identifier()).type().identifier().tokenText()));
@@ -241,9 +229,9 @@
 					helperEmitter.AppendLine(String.format("for (%s %s = %s; %s <= %s; %s++) {",
 							atype.toString(),
 							JavaIdentifier.GetIdentifierString(sym.tokenText()),
-							UlyssesType.Low(sym.type()),
+							Type.Low(sym.type()),
 							JavaIdentifier.GetIdentifierString(sym.tokenText()),
-							UlyssesType.High(sym.type()),
+							Type.High(sym.type()),
 							JavaIdentifier.GetIdentifierString(sym.tokenText())));
 				else
 					throw new NotImplementedException();
@@ -326,36 +314,6 @@
 	}
 
 	@Override
-	public void visit(QValConstructor qValConstructor)
-	{
-		final StringBuilder helpers = new StringBuilder();
-
-		String landmarkOne = "null";
-		if (qValConstructor.value().length >= 1 && qValConstructor.value()[0] != null)
-		{
-			final JavaExpression lndmrk1 = new JavaExpression(helpers, m_data);
-			qValConstructor.value()[0].Accept(lndmrk1);
-			landmarkOne = lndmrk1.toString();
-		}
-		String landmarkTwo = "null";
-		if (qValConstructor.value().length >= 2 && qValConstructor.value()[1] != null)
-		{
-			final JavaExpression lndmrk = new JavaExpression(helpers, m_data);
-			qValConstructor.value()[1].Accept(lndmrk);
-			landmarkTwo = lndmrk.toString();
-		}
-		String derivation = "null";
-		if (qValConstructor.valueDeriv() != QValDeriv.DonTCare)
-		{
-			derivation = Integer.toString(qValConstructor.valueDeriv().ordinal());
-			//derivation = Enum.Format(typeof(QValDeriv), qValConstructor.valueDeriv, "d");
-		}
-
-		m_helpers.append(helpers.toString());
-		m_emitter.Append(String.format("new QualitativeValue(%s,%s,%s)", landmarkOne, landmarkTwo, derivation));
-	}
-
-	@Override
 	public void visit(AccessExpression accessExpression)
 	{
 		if (accessExpression.left().type().kind() != TypeKind.QrType &&
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/Expression.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/Expression.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/Expression.java	(revision 9)
@@ -40,7 +40,7 @@
 import org.momut.ooas.ast.types.FloatType;
 import org.momut.ooas.ast.types.IntType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.math.AbstractOperations;
 import org.momut.ooas.math.AbstractRange;
@@ -81,7 +81,7 @@
 public abstract class Expression extends AstNode implements IAst
 {
 	protected ExpressionKind m_kind;
-	protected UlyssesType m_type;
+	protected Type m_type;
 	protected int m_line;
 	protected int m_pos;
 	protected SymbolTable m_freeVariables;
@@ -88,7 +88,7 @@
 	protected ArrayList<FunctionIdentifier> m_callTargets;
 
 	public ExpressionKind kind() { return m_kind; }
-	public UlyssesType type() { return m_type; }
+	public Type type() { return m_type; }
 	public int line() { return m_line; }
 	public int pos() { return m_pos; }
 	public SymbolTable freeVariables() { return m_freeVariables; }
@@ -117,7 +117,7 @@
 		throw new NotImplementedException();
 	}
 
-	public void SetType(UlyssesType aType)
+	public void SetType(Type aType)
 	{
 		if (aType == null)
 			throw new ArgumentException();
@@ -158,7 +158,7 @@
 	/// This is different from the cover-method defined at the type level.
 	/// Note: We do saturating operations on the type boundaries.
 	/// </summary>
-	public static UlyssesType ArithmeticCover(UlyssesType type1, UlyssesType type2, ExpressionKind op)
+	public static Type ArithmeticCover(Type type1, Type type2, ExpressionKind op)
 	{
 		if (!type1.IsNumeric() || (type2 != null && !type2.IsNumeric()))
 			throw new ArgumentException();
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ExpressionKind.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ExpressionKind.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ExpressionKind.java	(revision 9)
@@ -52,7 +52,8 @@
 	/*unary quantors*/
 	forall(47), exists(48),
 	/*Constructors*/
-	ListConstr(49), SetConstr(50), MapConstr(51), TupleConstr(52), ObjectConstr(53), QValConstr(54),
+	ListConstr(49), SetConstr(50), MapConstr(51), TupleConstr(52), ObjectConstr(53),
+	// QValConstr(54), -- no longer supported
 	/* identifier */
 	Identifier(55), UnresolvedIdentifier(56), Type(57),
 	/* tuple access and method call */
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ObjectConstructor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ObjectConstructor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ObjectConstructor.java	(revision 9)
@@ -33,7 +33,7 @@
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.types.OoActionSystemInstance;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 public final class ObjectConstructor extends TypeConstructionExpression
 {
@@ -71,7 +71,7 @@
 		m_fixedObjectName = cleanup(aName);
 	}
 
-	public ObjectConstructor(UlyssesType aType, String aName, int line, int pos)
+	public ObjectConstructor(Type aType, String aName, int line, int pos)
 	{
 		super (ExpressionKind.ObjectConstr, line, pos);
 		SetType(aType);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/TypeExpression.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/TypeExpression.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/TypeExpression.java	(revision 9)
@@ -28,7 +28,7 @@
 package org.momut.ooas.ast.expressions;
 
 import org.momut.ooas.ast.IAstVisitor;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 ///////////////////////////////////////////////
 ///  Some identifier
@@ -35,7 +35,7 @@
 ///
 public class TypeExpression extends LeafExpression
 {
-	public TypeExpression(UlyssesType atype, int line, int pos)
+	public TypeExpression(Type atype, int line, int pos)
 	{
 		super (LeafTypeEnum.type, ExpressionKind.Type, line, pos);
 		m_type = atype;
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/UnaryOperator.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/UnaryOperator.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/UnaryOperator.java	(revision 9)
@@ -28,7 +28,7 @@
 package org.momut.ooas.ast.expressions;
 
 import org.momut.ooas.ast.IAstVisitor;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.utils.exceptions.ArgumentException;
 
 
@@ -70,7 +70,7 @@
 		visitor.visit(this);
 	}
 
-	public static Expression CoerceUp(Expression anExpr, UlyssesType target)
+	public static Expression CoerceUp(Expression anExpr, Type target)
 	{
 		if (target == null)
 			throw new ArgumentException();
@@ -77,7 +77,7 @@
 
 		if (anExpr.kind() == ExpressionKind.Value
 				&& anExpr.type().kind() == target.kind()
-				&& UlyssesType.TypeEqual(UlyssesType.CoverType(anExpr.type(), target),target))
+				&& Type.TypeEqual(Type.CoverType(anExpr.type(), target),target))
 		{
 			// if we are widening the range of a type assigned to a value, then just set the
 			// new type and skip constructing a new node.
@@ -92,9 +92,9 @@
 		}
 	}
 
-	public static Expression TryCoerceUp(Expression anExpr, UlyssesType target)
+	public static Expression TryCoerceUp(Expression anExpr, Type target)
 	{
-		if (!UlyssesType.TypeEqual(anExpr.type(), target))
+		if (!Type.TypeEqual(anExpr.type(), target))
 		{
 			return CoerceUp(anExpr, target);
 		}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ValueExpression.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ValueExpression.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/expressions/ValueExpression.java	(revision 9)
@@ -28,7 +28,6 @@
 package org.momut.ooas.ast.expressions;
 
 import org.momut.ooas.ast.IAstVisitor;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.utils.exceptions.ArgumentException;
 
 ///////////////////////////////////////////////
@@ -54,8 +53,6 @@
 			m_valueType = LeafTypeEnum.real;
 		else if (Character.class.isAssignableFrom(clazz))
 			m_valueType = LeafTypeEnum.chr;
-		else if (QrType.class.isAssignableFrom(clazz))
-			m_valueType = LeafTypeEnum.qval;
 		else if (Object.class.isAssignableFrom(clazz))
 			m_valueType = LeafTypeEnum.reference;
 		else
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/AttributeIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/AttributeIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/AttributeIdentifier.java	(revision 9)
@@ -32,7 +32,7 @@
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
 import org.momut.ooas.ast.expressions.Expression;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.utils.exceptions.ArgumentException;
 
 public final class AttributeIdentifier extends ValueReferenceIdentifier
@@ -48,7 +48,7 @@
 	public boolean isControllable() { return m_isControllable; }
 
 	public AttributeIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope,
 			Expression anInitializer,
 			boolean isStatic,
@@ -63,7 +63,7 @@
 	}
 
 	public AttributeIdentifier(String name,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope,
 			Expression anInitializer,
 			boolean isStatic,
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ExpressionVariableIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ExpressionVariableIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ExpressionVariableIdentifier.java	(revision 9)
@@ -30,7 +30,7 @@
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 public final class ExpressionVariableIdentifier extends LocalVariableIdentifier
 {
@@ -39,7 +39,7 @@
 	public boolean initialized() { return m_isInitialized; }
 
 	public ExpressionVariableIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aToken, aType, aDefiningScope);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/FunctionIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/FunctionIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/FunctionIdentifier.java	(revision 9)
@@ -34,7 +34,7 @@
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IScope;
 import org.momut.ooas.ast.statements.Statement;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.utils.exceptions.InternalCompilerException;
 
 public abstract class FunctionIdentifier extends Scope
@@ -47,7 +47,7 @@
 
 
 	public FunctionIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
@@ -63,7 +63,7 @@
 
 	public FunctionIdentifier(
 			String name,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/Identifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/Identifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/Identifier.java	(revision 9)
@@ -33,7 +33,7 @@
 import org.momut.ooas.ast.IAst;
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.utils.exceptions.ArgumentException;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
 
@@ -46,11 +46,11 @@
 	protected IScope m_definingScope;
 	protected IdentifierKind m_identifierKind;
 	protected String m_tokenText;
-	protected UlyssesType m_Type;
+	protected Type m_Type;
 
 	// basic attributes of an Identifier
 	public final IdentifierKind kind() { return m_identifierKind; } // kind of identifier
-	public final UlyssesType type() { return m_Type; }   // type of identifier
+	public final Type type() { return m_Type; }   // type of identifier
 	public final IScope definingScope() { return m_definingScope; } // scope where it's defined
 
 	// from lexer
@@ -63,7 +63,7 @@
 
 
 	public Identifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
@@ -75,7 +75,7 @@
 		m_definingScope = aDefiningScope;
 	}
 
-	public Identifier(String name, UlyssesType aType, IdentifierKind aKind, IScope aDefiningScope)
+	public Identifier(String name, Type aType, IdentifierKind aKind, IScope aDefiningScope)
 	{
 		m_tokenText = name;
 		m_line = 0;
@@ -107,7 +107,7 @@
 		throw new NotImplementedException();
 	}
 
-	public final void SetType(UlyssesType aType)
+	public final void SetType(Type aType)
 	{
 		if (aType == null)
 			throw new ArgumentException("New type can not be null.");
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/IdentifierKind.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/IdentifierKind.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/IdentifierKind.java	(revision 9)
@@ -31,7 +31,7 @@
 {
 	TypeIdentifier(0),               // some named type
 	EnumIdentifier(1),               // identifier of enumerated type
-	LandmarkIdentifier(2),           // landmark
+//	LandmarkIdentifier(2),           // landmark -- originally used for QR types, no longer supported.
 	AttributeIdentifier(3),          // global attribute
 	LocalVariableIdentifier(4),      // local variable
 	ParameterIdentifier(5),          // method/named action argument
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/LocalVariableIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/LocalVariableIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/LocalVariableIdentifier.java	(revision 9)
@@ -31,13 +31,13 @@
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 
 public class LocalVariableIdentifier extends ValueReferenceIdentifier
 {
 	public LocalVariableIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aToken, aType, IdentifierKind.LocalVariableIdentifier, aDefiningScope);
@@ -44,7 +44,7 @@
 	}
 
 	public LocalVariableIdentifier(String name,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (name, aType, IdentifierKind.LocalVariableIdentifier, aDefiningScope);
@@ -61,7 +61,7 @@
 		return new LocalVariableIdentifier(this);
 	}
 
-	public LocalVariableIdentifier(String name, UlyssesType aType, IdentifierKind aKind, IScope aDefiningScope)
+	public LocalVariableIdentifier(String name, Type aType, IdentifierKind aKind, IScope aDefiningScope)
 	{
 		super (name, aType, aKind, aDefiningScope);
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/MethodIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/MethodIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/MethodIdentifier.java	(revision 9)
@@ -31,12 +31,12 @@
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 public final class MethodIdentifier extends FunctionIdentifier
 {
 	public MethodIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aToken, aType, IdentifierKind.MethodIdentifier, aDefiningScope);
@@ -43,7 +43,7 @@
 	}
 
 	public MethodIdentifier(String aName,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aName, aType, IdentifierKind.MethodIdentifier, aDefiningScope);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/NamedActionIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/NamedActionIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/NamedActionIdentifier.java	(revision 9)
@@ -31,12 +31,12 @@
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 public final class NamedActionIdentifier extends FunctionIdentifier
 {
 	public NamedActionIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aToken, aType, IdentifierKind.NamedActionIdentifier, aDefiningScope);
@@ -43,7 +43,7 @@
 	}
 
 	public NamedActionIdentifier(String aName,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aName, aType, IdentifierKind.NamedActionIdentifier, aDefiningScope);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ParameterIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ParameterIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ParameterIdentifier.java	(revision 9)
@@ -30,12 +30,12 @@
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 public final class ParameterIdentifier extends LocalVariableIdentifier
 {
 	public ParameterIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super(aToken, aType, aDefiningScope);
@@ -42,7 +42,7 @@
 		m_identifierKind = IdentifierKind.ParameterIdentifier;
 	}
 
-	public ParameterIdentifier(String name, UlyssesType aType, IScope aDefiningScope)
+	public ParameterIdentifier(String name, Type aType, IScope aDefiningScope)
 	{
 		super (name, aType, IdentifierKind.ParameterIdentifier, aDefiningScope);
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologIdentifier.java	(revision 9)
@@ -31,7 +31,6 @@
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.ExpressionVariableIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
 import org.momut.ooas.ast.identifiers.NamedActionIdentifier;
@@ -53,11 +52,6 @@
 
 	OoasCodeEmitter m_emitter;
 
-	private void AddTokenText(Identifier anId)
-	{
-		m_emitter.Append(anId.tokenText());
-	}
-
 	private String getUniquePostFix(Identifier id) {
 		return (id.line() > 0) && (id.column()>0)
 				? String.format("%s_%s", id.line(), id.column())
@@ -65,7 +59,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(EnumIdentifier enumIdentifier)
+	public void visit(EnumIdentifier enumIdentifier)
 	{
 		assert(false); // handled in visit(IdentifierExpression identifierExpression)
 		//AddTokenText(enumIdentifier);
@@ -72,27 +66,20 @@
 	}
 
 	@Override
-	public /*override*/ void visit(LandmarkIdentifier landmarkIdentifier)
+	public void visit(AttributeIdentifier attributeIdentifier)
 	{
-		AddTokenText(landmarkIdentifier);
-	}
-
-	@Override
-	public /*override*/ void visit(AttributeIdentifier attributeIdentifier)
-	{
 		m_emitter.Append(String.format("attr_%s_%s", attributeIdentifier.tokenText(), getUniquePostFix(attributeIdentifier)));
 	}
 
 	@Override
-	public /*override*/ void visit(ExpressionVariableIdentifier expressionVariableIdentifier)
+	public void visit(ExpressionVariableIdentifier expressionVariableIdentifier)
 	{
 		m_emitter.Append(String.format("ExprVar_%s_%s", expressionVariableIdentifier, getUniquePostFix(expressionVariableIdentifier)));
 	}
 
 	@Override
-	public /*override*/ void visit(ParameterIdentifier parameterIdentifier)
+	public void visit(ParameterIdentifier parameterIdentifier)
 	{
-		//m_emitter.Append(parameterIdentifier.tokenText().ToUpper());
 		if (parameterIdentifier.tokenText().equals("result"))
 			m_emitter.Append("RESULT"); // methods are transformed into their own predicates, so they have their own scope..
 		else
@@ -100,7 +87,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(LocalVariableIdentifier localVariableIdentifier)
+	public void visit(LocalVariableIdentifier localVariableIdentifier)
 	{
 		m_emitter.Append(String.format("_%s_%s",
 				localVariableIdentifier.tokenText(), getUniquePostFix(localVariableIdentifier)));
@@ -107,7 +94,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(TypeIdentifier typeIdentifier)
+	public void visit(TypeIdentifier typeIdentifier)
 	{
 		switch (typeIdentifier.type().kind())
 		{
@@ -161,13 +148,13 @@
 	}
 
 	@Override
-	public /*override*/ void visit(MethodIdentifier methodIdentifier)
+	public void visit(MethodIdentifier methodIdentifier)
 	{
 		m_emitter.Append(String.format("'%s'", methodIdentifier.tokenText()));
 	}
 
 	@Override
-	public /*override*/ void visit(NamedActionIdentifier namedActionIdentifier)
+	public void visit(NamedActionIdentifier namedActionIdentifier)
 	{
 		m_emitter.Append(String.format("'%s'", namedActionIdentifier.tokenText()));
 	}
@@ -174,7 +161,7 @@
 
 
 	@Override
-	public /*override*/ String toString()
+	public String toString()
 	{
 		return m_emitter.toString();
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologExpression.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologExpression.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologExpression.java	(revision 9)
@@ -40,7 +40,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
 import org.momut.ooas.ast.expressions.TupleConstructor;
@@ -52,11 +51,10 @@
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
 import org.momut.ooas.ast.identifiers.IdentifierKind;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.types.EnumType;
 import org.momut.ooas.ast.types.FunctionType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.utils.exceptions.ArgumentException;
@@ -106,7 +104,7 @@
 
 	// call of method that returns a value..
 	@Override
-	public /*override*/ void visit(CallExpression callExpression)
+	public void visit(CallExpression callExpression)
 	{
 		// we handle only function calls within expressions here (must have non-void return!)
 		final FunctionType funtype = (FunctionType)callExpression.child().type();
@@ -141,7 +139,7 @@
 
 
 	// we need to map all other things to Prolog constructs
-	private String OperatorString(Expression expression, UlyssesType resultingType)
+	private String OperatorString(Expression expression, Type resultingType)
 	{
 		switch (expression.kind())
 		{
@@ -232,7 +230,7 @@
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public /*override*/ <T> void visit(ValueExpression<T> valueExpression)
+	public <T> void visit(ValueExpression<T> valueExpression)
 	{
 		assert(m_tmpVars.size() == 0);
 		final String tmpVar = NewTempVariable();
@@ -255,19 +253,10 @@
 	}
 
 	@Override
-	public /*override*/ void visit(IdentifierExpression identifierExpression)
+	public void visit(IdentifierExpression identifierExpression)
 	{
-		if (identifierExpression.identifier().kind() == IdentifierKind.LandmarkIdentifier)
+		if (identifierExpression.identifier().kind() == IdentifierKind.EnumIdentifier)
 		{
-			final LandmarkIdentifier lmid = (LandmarkIdentifier)identifierExpression.identifier();
-			final OoaPrologIdentifier pid = createIdentifierVisitor();
-			lmid.Accept(pid);
-			//m_emitter.Append(pid.ToString());
-			m_tmpVars.add(pid.toString());
-			return;
-		}
-		else if (identifierExpression.identifier().kind() == IdentifierKind.EnumIdentifier)
-		{
 			final EnumIdentifier enumid = (EnumIdentifier)identifierExpression.identifier();
 			final EnumType enumType = (EnumType)enumid.type();
 			//m_emitter.Append(enumType.listOfEnumSymbols.IndexOf(enumid));
@@ -281,9 +270,9 @@
 			m_emitter.AppendLine(String.format("%s = %s,", NewTempVariable(), GetIdentifierString(identifierExpression.identifier())));
 		}
 		/*else if (identifierExpression.identifier.kind == IdentifierKind.AttributeIdentifier)
-        {
-            m_emitter.AppendLine(String.format("getVal(%s,%s,_),", GetIdentifierString(identifierExpression.identifier), NewTempVariable(), ));
-        }*/
+		{
+			m_emitter.AppendLine(String.format("getVal(%s,%s,_),", GetIdentifierString(identifierExpression.identifier), NewTempVariable(), ));
+		}*/
 		else
 		{
 			m_tmpVars.add(GetIdentifierString(identifierExpression.identifier()));
@@ -291,7 +280,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(TypeExpression typeExpression)
+	public void visit(TypeExpression typeExpression)
 	{
 		if (typeExpression.type().kind() != TypeKind.QrType &&
 				typeExpression.type().kind() != TypeKind.EnumeratedType)
@@ -302,7 +291,7 @@
 
 
 	@Override
-	public /*override*/ void visit(ObjectConstructor objectConstructor)
+	public void visit(ObjectConstructor objectConstructor)
 	{
 		if (objectConstructor.instances().size() > 1)
 			throw new NotImplementedException();
@@ -313,7 +302,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(ListConstructor listConstructor)
+	public void visit(ListConstructor listConstructor)
 	{
 		if (listConstructor.hasComprehension())
 		{
@@ -363,7 +352,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(SetConstructor setConstructor)
+	public void visit(SetConstructor setConstructor)
 	{
 		m_emitter.AppendLine("% make set");
 		// our resulting set.
@@ -385,13 +374,13 @@
 	}
 
 	@Override
-	public /*override*/ void visit(MapConstructor mapConstructor)
+	public void visit(MapConstructor mapConstructor)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(TupleConstructor tupleConstructor)
+	public void visit(TupleConstructor tupleConstructor)
 	{
 		if (tupleConstructor.isMatcher())
 		{
@@ -421,50 +410,8 @@
 	}
 
 	@Override
-	public /*override*/ void visit(QValConstructor qValConstructor)
+	public void visit(AccessExpression accessExpression)
 	{
-		final OoaPrologIdentifier pident = createIdentifierVisitor();
-		qValConstructor.type().identifier().Accept(pident);
-		final StringBuilder qVal = new StringBuilder();
-		if (qValConstructor.value() != null || qValConstructor.value().length != 0)
-		{
-			final OoaPrologExpression landmark1 = createExpressionVisitor();
-			qValConstructor.value()[0].Accept(landmark1);
-			qVal.append(landmark1.toString());
-
-			if (qValConstructor.value().length > 1)
-			{
-				final OoaPrologExpression landmark2 = createExpressionVisitor();
-				qValConstructor.value()[1].Accept(landmark2);
-				qVal.append("..");
-				qVal.append(landmark2.toString());
-			}
-		}
-		else
-			qVal.append("_");
-
-		String deriv = "_";
-		switch (qValConstructor.valueDeriv())
-		{
-		case Dec:
-			deriv = "dec";
-			break;
-		case Inc:
-			deriv = "inc";
-			break;
-		case Steady:
-			deriv = "std";
-			break;
-		default:
-			throw new NotImplementedException();
-		}
-		final String tmpVar = NewTempVariable();
-		m_emitter.AppendLine(String.format("%s = (%s:%s/%s),", tmpVar, pident.toString(), qVal.toString(), deriv));
-	}
-
-	@Override
-	public /*override*/ void visit(AccessExpression accessExpression)
-	{
 		if (accessExpression.left().type().kind() != TypeKind.QrType &&
 				accessExpression.left().type().kind() != TypeKind.EnumeratedType &&
 				!(accessExpression.right().kind() == ExpressionKind.Identifier &&
@@ -485,7 +432,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(BinaryOperator binaryOperator)
+	public void visit(BinaryOperator binaryOperator)
 	{
 		final OoasCodeEmitter origEmitter = m_emitter;
 
@@ -610,7 +557,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(TernaryOperator ternaryOperator)
+	public void visit(TernaryOperator ternaryOperator)
 	{
 		if (ternaryOperator.kind() == ExpressionKind.conditional)
 		{
@@ -666,7 +613,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(TupleMapAccessExpression tupleMapAccessExpression)
+	public void visit(TupleMapAccessExpression tupleMapAccessExpression)
 	{
 		assert(m_tmpVars.size() == 0);
 		VisitSub(tupleMapAccessExpression.child(), tupleMapAccessExpression);
@@ -734,7 +681,7 @@
 
 
 	@Override
-	public /*override*/ void visit(ForallQuantifier quantifier)
+	public void visit(ForallQuantifier quantifier)
 	{
 		final OoaPrologExpression pExpr = createExpressionVisitor();
 		quantifier.child().Accept(pExpr);
@@ -764,7 +711,7 @@
 
 
 	@Override
-	public /*override*/ void visit(ExistsQuantifier quantifier)
+	public void visit(ExistsQuantifier quantifier)
 	{
 		final OoaPrologExpression pExpr = createExpressionVisitor();
 		quantifier.child().Accept(pExpr);
@@ -791,7 +738,7 @@
 				NewTempVariable(), Generator.toString(), nullGuard.toString(), pExpr.toString(), pExpr.tmpVariables().get(0)));
 	}
 	@Override
-	public /*override*/ void visit(UnaryOperator unaryOperator)
+	public void visit(UnaryOperator unaryOperator)
 	{
 		assert(m_tmpVars.size() == 0);
 		VisitSub(unaryOperator.child(), unaryOperator);
@@ -849,7 +796,7 @@
 	}
 
 	@Override
-	public /*override*/ String toString()
+	public String toString()
 	{
 		return m_emitter.toString();
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/Scope.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/Scope.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/Scope.java	(revision 9)
@@ -29,7 +29,7 @@
 
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.SymbolTable;
 
 ///////////////////////////////////////////////
@@ -40,7 +40,7 @@
 	protected SymbolTable m_symbolTable;
 
 	public Scope(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
@@ -50,7 +50,7 @@
 
 
 	public Scope(String aName,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/SelfTypeIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/SelfTypeIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/SelfTypeIdentifier.java	(revision 9)
@@ -29,12 +29,12 @@
 
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 public final class SelfTypeIdentifier extends TypeIdentifier
 {
 	public SelfTypeIdentifier(String aName,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aName, aType, aDefiningScope);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/TypeIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/TypeIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/TypeIdentifier.java	(revision 9)
@@ -30,7 +30,7 @@
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IAstVisitor;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 ///////////////////////////////////////////////
 ///  Type Identifier
@@ -41,7 +41,7 @@
 	public String prefix = "";
 
 	protected TypeIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind someKind,
 			IScope aDefiningScope)
 	{
@@ -49,7 +49,7 @@
 	}
 
 	protected TypeIdentifier(String aToken,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind someKind,
 			IScope aDefiningScope)
 	{
@@ -58,7 +58,7 @@
 
 
 	public TypeIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aToken, aType, IdentifierKind.TypeIdentifier, aDefiningScope);
@@ -66,7 +66,7 @@
 
 
 	public TypeIdentifier(String aName,
-			UlyssesType aType,
+			Type aType,
 			IScope aDefiningScope)
 	{
 		super (aName, aType, IdentifierKind.TypeIdentifier, aDefiningScope);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ValueIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ValueIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ValueIdentifier.java	(revision 9)
@@ -30,7 +30,7 @@
 
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 ///////////////////////////////////////////////
 ///  Value Identifiers
@@ -37,7 +37,7 @@
 ///
 public abstract class ValueIdentifier extends Identifier {
 	public ValueIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
@@ -45,7 +45,7 @@
 	}
 
 	public ValueIdentifier(String name,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ValueReferenceIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ValueReferenceIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/identifiers/ValueReferenceIdentifier.java	(revision 9)
@@ -29,7 +29,7 @@
 
 import org.antlr.runtime.Token;
 import org.momut.ooas.ast.IScope;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 ///////////////////////////////////////////////
 ///  Variable Identifiers
@@ -38,7 +38,7 @@
 public abstract class ValueReferenceIdentifier extends Identifier
 {
 	public ValueReferenceIdentifier(Token aToken,
-			UlyssesType aType,
+			Type aType,
 			IdentifierKind aKind,
 			IScope aDefiningScope)
 	{
@@ -50,7 +50,7 @@
 		super(toCopy);
 	}
 
-	public ValueReferenceIdentifier(String name, UlyssesType aType, IdentifierKind aKind, IScope aDefiningScope)
+	public ValueReferenceIdentifier(String name, Type aType, IdentifierKind aKind, IScope aDefiningScope)
 	{
 		super(name, aType, aKind, aDefiningScope);
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/statements/StatementKind.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/statements/StatementKind.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/statements/StatementKind.java	(revision 9)
@@ -38,7 +38,7 @@
 	Skip(6),
 	Abort(7),
 	Kill(8),
-	QualConstraint(9),
+//	QualConstraint(9),  // no longer supported
 	Break (10);
 
 	public final int integerValue; // do not change, this is needed by the backends! i.e. public API
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/AnyType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/AnyType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/AnyType.java	(revision 9)
@@ -33,7 +33,7 @@
 ///////////////////////////////////////////////
 ///  Special type: any  (used for free variables)
 ///
-public final class AnyType extends UlyssesType
+public final class AnyType extends Type
 {
 	private final ExpressionVariableIdentifier m_variableIdentifier;
 
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/BoolType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/BoolType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/BoolType.java	(revision 9)
@@ -33,7 +33,7 @@
 ///////////////////////////////////////////////
 ///  Simple Type: Bool
 ///
-public final class BoolType extends UlyssesType
+public final class BoolType extends Type
 {
 	public BoolType(TypeIdentifier anIdentifier)
 	{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/FloatType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/FloatType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/FloatType.java	(revision 9)
@@ -33,7 +33,7 @@
 ///////////////////////////////////////////////
 ///  Simple Type: Float (fixed point)
 ///
-public final class FloatType extends UlyssesType
+public final class FloatType extends Type
 {
 	private final double m_low;
 	private final double m_high;
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/IntType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/IntType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/IntType.java	(revision 9)
@@ -33,7 +33,7 @@
 ///////////////////////////////////////////////
 ///  Simple Type: Int
 ///
-public class IntType extends UlyssesType
+public class IntType extends Type
 {
 	protected int m_low;
 	protected int m_high;
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/MapType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/MapType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/MapType.java	(revision 9)
@@ -34,17 +34,17 @@
 ///////////////////////////////////////////////
 ///  Complex Type: Map
 ///
-public final class MapType extends UlyssesType
+public final class MapType extends Type
 {
-	private UlyssesType m_fromType;
-	private UlyssesType m_toType;
+	private Type m_fromType;
+	private Type m_toType;
 	private final int m_maxNumberOfElements;
 
-	public UlyssesType fromType() { return m_fromType; }
-	public UlyssesType toType() { return m_toType; }
+	public Type fromType() { return m_fromType; }
+	public Type toType() { return m_toType; }
 	public int maxNumberOfElements() { return m_maxNumberOfElements; }
 
-	public MapType(UlyssesType from, UlyssesType to, int max, TypeIdentifier anIdentifier)
+	public MapType(Type from, Type to, int max, TypeIdentifier anIdentifier)
 	{
 		super(TypeKind.MapType, anIdentifier);
 		m_fromType = from;
@@ -58,7 +58,7 @@
 		visitor.visit(this);
 	}
 
-	public void SetFromType(UlyssesType newType)
+	public void SetFromType(Type newType)
 	{
 		if (newType == null)
 			throw new ArgumentException();
@@ -65,7 +65,7 @@
 		m_fromType = newType;
 	}
 
-	public void SetToType(UlyssesType newType)
+	public void SetToType(Type newType)
 	{
 		if (newType == null)
 			throw new ArgumentException();
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/OoActionSystemType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/OoActionSystemType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/OoActionSystemType.java	(revision 9)
@@ -38,7 +38,7 @@
 import org.momut.ooas.utils.exceptions.ArgumentException;
 import org.momut.ooas.utils.exceptions.InternalCompilerException;
 
-public class OoActionSystemType extends UlyssesType implements IScope
+public class OoActionSystemType extends Type implements IScope
 {
 	private final boolean m_autoCons;
 	private OoActionSystemType m_baseType;
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/Type.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/Type.java	(nonexistent)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/ast/types/Type.java	(revision 9)
@@ -0,0 +1,586 @@
+/**
+  *
+  *                      OOAS Compiler
+  *
+  *       Copyright 2015, AIT Austrian Institute of Technology.
+  * This code is based on the C# Version of the OOAS Compiler, which is
+  * copyright 2015 by the Institute of Software Technology, Graz University
+  * of Technology with portions copyright by the AIT Austrian Institute of
+  * Technology. All rights reserved.
+  *
+  * SEE THE "LICENSE" FILE FOR THE TERMS UNDER WHICH THIS FILE IS PROVIDED.
+  *
+  * If you modify the file please update the list of contributors below to in-
+  * clude your name. Please also stick to the coding convention of using TABs
+  * to do the basic (block-level) indentation and spaces for anything after
+  * that. (Enable the display of special chars and it should be pretty obvious
+  * what this means.) Also, remove all trailing whitespace.
+  *
+  * Contributors:
+  *               Willibald Krenn (AIT)
+  *               Stephan Zimmerer (AIT)
+  *               Markus Demetz (AIT)
+  *               Christoph Czurda (AIT)
+  *
+  */
+
+
+package org.momut.ooas.ast.types;
+
+import java.util.Iterator;
+
+import org.momut.ooas.ast.AstNode;
+import org.momut.ooas.ast.AstNodeTypeEnum;
+import org.momut.ooas.ast.IAst;
+import org.momut.ooas.ast.IAstVisitor;
+import org.momut.ooas.ast.identifiers.TypeIdentifier;
+import org.momut.ooas.utils.exceptions.ArgumentException;
+import org.momut.ooas.utils.exceptions.NotImplementedException;
+import org.momut.ooas.utils.exceptions.OoasCompilerRuntimeException;
+
+public abstract class Type extends AstNode implements IAst
+{
+	private String m_origAnonName;
+	protected TypeKind m_kind;
+	protected TypeIdentifier m_identifier;
+	protected int m_hash;
+	//    protected long TimeStamp = DateTime.Now.Ticks;
+
+
+	public TypeKind kind() { return m_kind; }
+
+	public TypeIdentifier identifier() {
+		synchronized(this) {
+			if (m_identifier == null)
+				SetupAnonymousName();
+		}
+		return m_identifier;
+	}
+
+	public boolean isAnonymousType() {
+		final String anonName = AnonymousName();
+		if (!m_origAnonName.equals(anonName))
+			throw new OoasCompilerRuntimeException("Internal Error: Anonymous Name changed from '%s' to '%s'.", m_origAnonName, anonName);
+		return anonName.equals(m_identifier.tokenText());
+	}
+
+	protected Type(TypeKind aKind, TypeIdentifier anIdentifier)
+	{
+		m_kind = aKind;
+		m_identifier = anIdentifier;
+		m_hash = aKind.toString().hashCode(); //Enum.GetName(typeof(TypeKind), aKind).GetHashCode();
+	}
+
+	@Override
+	public String toString()
+	{
+		return identifier().tokenText();
+	}
+
+	public /*virtual*/ String AnonymousName()
+	{
+		throw new NotImplementedException();
+	}
+
+
+	public void SetTypeIdentifier(TypeIdentifier anId)
+	{
+		m_identifier = anId;
+	}
+
+	public void SetupAnonymousName()
+	{
+		if (m_identifier == null)
+		{
+			final String anonymousName = this.AnonymousName();
+			m_identifier = new TypeIdentifier(anonymousName, this, null);
+			m_origAnonName = anonymousName;
+		}
+	}
+
+
+	@Override
+	public AstNodeTypeEnum nodeType() { return AstNodeTypeEnum.type; }
+
+	@Override
+	public void Accept(IAstVisitor visitor)
+	{
+		throw new NotImplementedException();
+	}
+
+
+
+	public boolean IsNumeric()
+	{
+		final Object o = this;
+		return (m_kind == TypeKind.IntType) ||
+				(m_kind == TypeKind.FloatType) ||
+				(m_kind == TypeKind.EnumeratedType && o instanceof ValuedEnumType);
+	}
+
+	public boolean IsQualitative()
+	{
+		return (m_kind == TypeKind.QrType);
+	}
+
+	/**
+	 * returns the number of unique values of the type (2 for bool, etc..)
+	 */
+	public int valueCount() {
+		throw new NotImplementedException(); // must be overridden by child
+	}
+
+	public static String High(Type atype)
+	{
+		switch (atype.kind())
+		{
+			case BoolType:
+				return "1";
+			case EnumeratedType:
+				return Integer.toString((((EnumType)atype).listOfEnumSymbols().size() - 1));
+			case IntType:
+				return Integer.toString(((IntType)atype).rangeHigh());
+			case FloatType:
+				return Double.toString(((FloatType)atype).high());
+			default:
+				throw new NotImplementedException();
+		}
+	}
+
+	public static String Low(Type atype)
+	{
+		switch (atype.kind())
+		{
+			case BoolType:
+				return "0";
+			case EnumeratedType:
+				return "0";
+			case IntType:
+				return Integer.toString(((IntType)atype).rangeLow());
+			case FloatType:
+				return Double.toString(((FloatType)atype).low());
+//			case TypeKind.QrType:
+//				return "0";
+			default:
+				throw new NotImplementedException();
+		}
+	}
+
+
+	/// <summary>
+	///  Returns a cover for two types (if possible).
+	///  note the cover type for two ints, floats, etc. will have max/min values
+	///  that reflect the maximum of the two operands.
+	/// </summary>
+
+	public static Type CoverType(Type type1, Type type2)
+	{
+		/*first some sanity checks*/
+		if (type1 == null)
+			throw new ArgumentException("type1 null");
+		if (type2 == null)
+			throw new ArgumentException("type2 null");
+
+		if (type1.kind() == TypeKind.OpaqueType)
+			throw new ArgumentException("type1 opaque type");
+		if (type2.kind() == TypeKind.OpaqueType)
+			throw new ArgumentException("type2 opaque type");
+
+		if (type1 == type2)
+			return type1;
+		if (Type.TypeEqual(type1, type2))
+			return type1;
+
+		final TypeKind tk1 = type1.kind();
+		final TypeKind tk2 = type2.kind();
+
+
+
+		if (tk1 != tk2)
+		{
+			// the only notion we support here is int->float and valenum -> int
+			if ((tk1 == TypeKind.IntType || tk2 == TypeKind.IntType)
+					&& (tk1 == TypeKind.FloatType || tk2 == TypeKind.FloatType))
+			{
+				final IntType aInt = tk1 == TypeKind.IntType ? (IntType)type1 : (IntType)type2;
+				final FloatType aFloat = tk1 == TypeKind.IntType ? (FloatType)type2 : (FloatType)type1;
+
+				final double low = aInt.rangeLow() < aFloat.low() ? (double)aInt.rangeLow() : aFloat.low();
+				final double high = aInt.rangeHigh() < aFloat.high() ? aFloat.high() : (double)aInt.rangeHigh();
+				final double precision = aFloat.precision() > 1 ? 1.0 : aFloat.precision();
+
+				return new FloatType(low, high, precision, null);
+
+			}
+			else if ((tk1 == TypeKind.IntType || tk2 == TypeKind.IntType)
+					&& (tk1 == TypeKind.EnumeratedType || tk2 == TypeKind.EnumeratedType))
+			{
+				final IntType intt1 = tk1 == TypeKind.IntType ? (IntType)type1 : (IntType)type2;
+				final EnumType anEnum = tk1 == TypeKind.IntType ? (EnumType)type2 : (EnumType)type1;
+
+				if (anEnum instanceof ValuedEnumType)
+				{
+					final IntType intt2 = ((ValuedEnumType)anEnum).getIntType();
+					final int low = intt1.rangeLow() < intt2.rangeLow() ? intt1.rangeLow() : intt2.rangeLow();
+					final int high = intt1.rangeHigh() > intt2.rangeHigh() ? intt1.rangeHigh() : intt2.rangeHigh();
+					return new IntType(low, high, null);
+				}
+				else
+					return null;
+			}
+			else if (tk1 == TypeKind.Any || tk2 == TypeKind.Any)
+			{
+				final AnyType freeVar = tk1 == TypeKind.Any ? (AnyType)type1 : (AnyType)type2;
+				final Type fixedType = tk1 == TypeKind.Any ? type2 : type1;
+				final Type newcover = freeVar.VariableIdentifier().type().kind() == TypeKind.Any
+						? fixedType : CoverType(fixedType, freeVar.VariableIdentifier().type());
+				freeVar.VariableIdentifier().SetType(newcover);
+				return newcover;
+			}
+			else if (tk1 == TypeKind.OoActionSystemType && tk2 == TypeKind.Null)
+			{
+				return type1;
+			}
+			else if (tk2 == TypeKind.OoActionSystemType && tk1 == TypeKind.Null)
+			{
+				return type2;
+			}
+
+			else
+				return null;
+		}
+		else
+		{
+			switch (tk1)
+			{
+				case Any:
+					return type1;
+
+				case IntType:
+					final IntType intt1 = (IntType)type1;
+					final IntType intt2 = (IntType)type2;
+					final int low = intt1.rangeLow() < intt2.rangeLow() ? intt1.rangeLow() : intt2.rangeLow();
+					final int high = intt1.rangeHigh() > intt2.rangeHigh() ? intt1.rangeHigh() : intt2.rangeHigh();
+					return new IntType(low, high, null);
+				case BoolType:
+					return type1;
+				case FloatType:
+					final FloatType floatt1 = (FloatType)type1;
+					final FloatType floatt2 = (FloatType)type2;
+					final double flow = floatt1.low() < floatt2.low() ? floatt1.low() : floatt2.low();
+					final double fhigh = floatt1.high() > floatt2.high() ? floatt1.high() : floatt2.high();
+					final double fprec = floatt1.precision() < floatt2.precision() ? floatt1.precision() : floatt2.precision();
+					return new FloatType(flow, fhigh, fprec, null);
+				case EnumeratedType:
+					return null;
+				case ListType:
+					final ListType listt1 = (ListType)type1;
+					final ListType listt2 = (ListType)type2;
+					int maxelems = listt1.maxNumberOfElements() > listt2.maxNumberOfElements() ?
+						listt1.maxNumberOfElements() : listt2.maxNumberOfElements();
+					// empty lists lack type, so take the other one
+					if ((listt1.innerType().kind() == TypeKind.Null) && (listt2.innerType().kind() != TypeKind.Null))
+						return listt2;
+					else if ((listt2.innerType().kind() == TypeKind.Null) && (listt1.innerType().kind() != TypeKind.Null))
+						return listt1;
+					else if (listt1.innerType().kind() == TypeKind.Null && listt2.innerType().kind() == TypeKind.Null)
+						return listt1;
+					else
+					{
+						final Type subtype = Type.CoverType(listt1.innerType(), listt2.innerType());
+						if (subtype != null)
+							return new ListType(subtype, maxelems, null);
+						else
+							return null;
+					}
+				case MapType:
+					final MapType mapt1 = (MapType)type1;
+					final MapType mapt2 = (MapType)type2;
+					// empty maps lack type, so take the other one.
+					if ((mapt1.fromType().kind() == TypeKind.Null && mapt1.toType().kind() == TypeKind.Null)
+					   && (mapt2.fromType().kind() != TypeKind.Null && mapt2.toType().kind() != TypeKind.Null))
+						return mapt2;
+					else if ((mapt2.fromType().kind() == TypeKind.Null && mapt2.toType().kind() == TypeKind.Null)
+					   && (mapt1.fromType().kind() != TypeKind.Null && mapt1.toType().kind() != TypeKind.Null))
+						return mapt1;
+					else if ((mapt2.fromType().kind() == TypeKind.Null && mapt2.toType().kind() == TypeKind.Null)
+					   && (mapt1.fromType().kind() == TypeKind.Null && mapt1.toType().kind() == TypeKind.Null))
+						return mapt1;
+					else
+					{
+						final Type sub1 = Type.CoverType(mapt1.fromType(), mapt2.fromType());
+						final Type sub2 = Type.CoverType(mapt2.toType(), mapt2.toType());
+						maxelems = mapt1.maxNumberOfElements() > mapt2.maxNumberOfElements() ?
+							mapt1.maxNumberOfElements() : mapt2.maxNumberOfElements();
+						if (sub1 != null && sub2 != null)
+							return new MapType(sub1, sub2, maxelems, null);
+						else
+							return null;
+					}
+				case QrType:
+					return null; /*if refs are equal, we do not reach this statement! see above..*/
+				case TupleType:
+					final TupleType tuplet1 = (TupleType)type1;
+					final TupleType tuplet2 = (TupleType)type2;
+					final TupleType result = new TupleType(null);
+					final Iterator<Type> innert1 = tuplet1.innerTypes().iterator();
+					final Iterator<Type> innert2 = tuplet2.innerTypes().iterator();
+					while (innert1.hasNext())
+					{
+						final Type newinner = Type.CoverType(innert1.next(), innert2.next());
+						if (newinner == null)
+							return null;
+						result.AddType(newinner);
+					}
+					return result;
+				case OoActionSystemType:
+					if (type1.kind() == TypeKind.Null && type2.kind() != TypeKind.Null)
+						return type2;
+					else if (type2.kind() == TypeKind.Null && type1.kind() != TypeKind.Null)
+						return type1;
+					else if (type1.kind() == TypeKind.Null && type2.kind() == TypeKind.Null)
+						return type2;
+					else if (type1 == type2) // ref equals!
+						return type1;
+					else
+						return ClassBaseType((OoActionSystemType)type1, (OoActionSystemType)type2);
+				case OpaqueType:
+					assert(false);
+					return null;
+				default:
+					throw new NotImplementedException();
+			}
+		}
+	}
+
+	private static Type ClassBaseType(OoActionSystemType type1, OoActionSystemType type2)
+	{
+		// this is rather inefficient.. should be done differently
+		final OoActionSystemType typea = type1;
+		final OoActionSystemType typeb = type2;
+		OoActionSystemType basea = type1;
+		OoActionSystemType baseb = type2;
+		while (basea != null)
+		{
+			if (basea == typeb)  // ref equals
+				return basea;
+			basea = basea.baseType();
+		}
+		while (baseb != null)
+		{
+			if (baseb == typea) // ref equals
+				return baseb;
+			baseb = baseb.baseType();
+		}
+		return null;
+	}
+
+	public static boolean FirstTypeLessRange(Type type1, Type type2)
+	{
+		final TypeKind tk1 = type1.kind();
+		final TypeKind tk2 = type2.kind();
+
+		if (tk1 != tk2)
+			throw new ArgumentException("Types need to be equal");
+
+		switch (tk1)
+		{
+			case Any:
+				return false;
+			case IntType:
+				final IntType Int1 = (IntType)type1;
+				final IntType Int2 = (IntType)type2;
+				return Int1.rangeLow() > Int2.rangeLow() ||
+					Int1.rangeHigh() < Int2.rangeHigh();
+			case BoolType:
+				return false;
+			case FloatType:
+				final FloatType Float1 = (FloatType)type1;
+				final FloatType Float2 = (FloatType)type2;
+				return Float1.low() > Float2.low()
+					|| Float1.high() < Float2.high()
+					|| Float1.precision() > Float2.precision();
+			case EnumeratedType:
+				return false;
+			case ListType:
+				final ListType listt1 = (ListType)type1;
+				final ListType listt2 = (ListType)type2;
+				return (listt1.maxNumberOfElements() < listt2.maxNumberOfElements()) ||
+					Type.FirstTypeLessRange(listt1.innerType(), listt2.innerType());
+			case MapType:
+				final MapType mapt1 = (MapType)type1;
+				final MapType mapt2 = (MapType)type2;
+				return (mapt1.maxNumberOfElements() < mapt2.maxNumberOfElements()) ||
+					Type.FirstTypeLessRange(mapt1.fromType(), mapt2.fromType()) ||
+					Type.FirstTypeLessRange(mapt1.toType(), mapt2.toType());
+			case QrType:
+				return false;
+			case TupleType:
+				final TupleType tuplet1 = (TupleType)type1;
+				final TupleType tuplet2 = (TupleType)type2;
+				if (tuplet1.innerTypes().size() != tuplet2.innerTypes().size())
+					return false;
+				final Iterator<Type> innert1 = tuplet1.innerTypes().iterator();
+				final Iterator<Type> innert2 = tuplet2.innerTypes().iterator();
+				while (innert1.hasNext())
+				{
+					if (Type.FirstTypeLessRange(innert1.next(), innert2.next()))
+						return true;
+				}
+				return false;
+			case OoActionSystemType:
+				return false;
+			case OpaqueType:
+				assert(false);
+				return false;
+			default:
+				throw new NotImplementedException();
+		}
+	}
+
+	public static boolean TypeEqualByKind(Type type1, Type type2)
+	{
+		if ((type1 == null) || (type2 == null))
+			return false;
+
+		final TypeKind tk1 = type1.kind();
+		final TypeKind tk2 = type2.kind();
+
+		// if of different kind, then return false..
+		if (tk1 != tk2)
+			return false;
+
+		// if same kind, make a rigorous check
+		switch (tk1)
+		{
+			case Any:
+				return true;
+
+			case IntType:
+			case BoolType:
+			case FloatType:
+				return true;
+			case EnumeratedType:
+				return type1 == type2; // ref equals
+			case ListType:
+				final ListType listt1 = (ListType)type1;
+				final ListType listt2 = (ListType)type2;
+				return Type.TypeEqualByKind(listt1.innerType(), listt2.innerType());
+			case MapType:
+				final MapType mapt1 = (MapType)type1;
+				final MapType mapt2 = (MapType)type2;
+				return Type.TypeEqualByKind(mapt1.fromType(), mapt2.fromType()) &&
+					Type.TypeEqualByKind(mapt1.toType(), mapt2.toType());
+			case TupleType:
+				final TupleType tuplet1 = (TupleType)type1;
+				final TupleType tuplet2 = (TupleType)type2;
+				if (tuplet1.innerTypes().size() != tuplet2.innerTypes().size())
+					return false;
+				final Iterator<Type> innert1 = tuplet1.innerTypes().iterator();
+				final Iterator<Type> innert2 = tuplet2.innerTypes().iterator();
+				while (innert1.hasNext())
+				{
+					if (!Type.TypeEqualByKind(innert1.next(), innert2.next()))
+						return false;
+				}
+				return true;
+			case OoActionSystemType:
+				return type1 == type2; // ref equ.
+			case OpaqueType:
+				assert(false);
+				return false;
+			default:
+				throw new NotImplementedException();
+		}
+	}
+
+
+	public static boolean TypeEqual(Type type1, Type type2)
+	{
+		// this will also work with opaque types...
+		while (type1 instanceof OpaqueType)
+			type1 = ((OpaqueType)type1).resolvedType();
+		while (type2 instanceof OpaqueType)
+			type2 = ((OpaqueType)type2).resolvedType();
+
+		if ((type1 == null) || (type2 == null))
+			return false;
+
+		final TypeKind tk1 = type1.kind();
+		final TypeKind tk2 = type2.kind();
+
+		// if of different kind, then return false..
+		if (tk1 != tk2)
+			return false;
+
+		// if same kind, make a rigorous check
+		switch (tk1)
+		{
+			case IntType:
+				final IntType intt1 = (IntType)type1;
+				final IntType intt2 = (IntType)type2;
+				return intt1.rangeLow() == intt2.rangeLow() &&
+					intt1.rangeHigh() == intt2.rangeHigh();
+			case BoolType:
+				return true;
+			case FloatType:
+				final FloatType floatt1 = (FloatType)type1;
+				final FloatType floatt2 = (FloatType)type2;
+				return floatt1.low() == floatt2.low() &&
+					floatt1.high() == floatt2.high() &&
+					floatt1.precision() == floatt2.precision();
+			case EnumeratedType:
+				return type1 == type2; // ref equ
+			case ListType:
+				final ListType listt1 = (ListType)type1;
+				final ListType listt2 = (ListType)type2;
+				// an empty list can be of any type..
+				/*if ((listt1.innerType.kind == TypeKind.Null) || (listt2.innerType.kind == TypeKind.Null))
+					return true;
+				else*/
+				return Type.TypeEqual(listt1.innerType(), listt2.innerType()) &&
+						listt1.maxNumberOfElements() == listt2.maxNumberOfElements(); // need this because of covertype
+			case MapType:
+				final MapType mapt1 = (MapType)type1;
+				final MapType mapt2 = (MapType)type2;
+				return Type.TypeEqual(mapt1.fromType(), mapt2.fromType()) &&
+					Type.TypeEqual(mapt1.toType(), mapt2.toType()) &&
+					mapt1.maxNumberOfElements() == mapt2.maxNumberOfElements(); // need this because of covertype
+			case TupleType:
+				final TupleType tuplet1 = (TupleType)type1;
+				final TupleType tuplet2 = (TupleType)type2;
+				if (tuplet1.innerTypes().size() != tuplet2.innerTypes().size())
+					return false;
+				final Iterator<Type> innert1 = tuplet1.innerTypes().iterator();
+				final Iterator<Type> innert2 = tuplet2.innerTypes().iterator();
+				while (innert1.hasNext())
+				{
+					if (!Type.TypeEqual(innert1.next(), innert2.next()))
+						return false;
+				}
+				return true;
+			case OoActionSystemType:
+				return type1 == type2; // ref equ. // || Covariance((OoActionSystemType)type1, (OoActionSystemType)type2);
+			case OpaqueType:
+				assert(false);
+				return false;
+			case Null:
+			case Any:
+				return true;
+			default:
+				throw new NotImplementedException();
+		}
+	}
+
+	/// <summary>
+	/// checks if type 2 is a desc. of type 1
+	/// </summary>
+	public static boolean Covariance(OoActionSystemType ooActionSystemType, OoActionSystemType ooActionSystemType_2)
+	{
+		// check if type 2 is a desc. of type 1
+		while (ooActionSystemType != ooActionSystemType_2 && ooActionSystemType_2.baseType() != null) // ref equ.
+			ooActionSystemType_2 = ooActionSystemType_2.baseType();
+
+		return ooActionSystemType == ooActionSystemType_2; // ref equ.
+	}
+}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpIdentifier.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpIdentifier.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/CadpIdentifier.java	(revision 9)
@@ -33,7 +33,6 @@
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.ExpressionVariableIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
@@ -50,7 +49,7 @@
 import org.momut.ooas.ast.types.FunctionType;
 import org.momut.ooas.ast.types.ListType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.visitors.OoaCompleteAstTraversalVisitor;
 
@@ -85,12 +84,8 @@
 			m_emitter.Append(" */ ");
 		}
 	}
+
 	@Override
-	public  void visit(LandmarkIdentifier landmarkIdentifier)
-	{
-		throw new UnsupportedOperationException();
-	}
-	@Override
 	public  void visit(AttributeIdentifier attributeIdentifier)
 	{
 		if (m_stateVariablePrefix != null && !m_stateVariablePrefix.equals(""))
@@ -139,7 +134,7 @@
 		{
 			final FunctionType funType = (FunctionType) typeIdentifier.type();
 			m_emitter.Append(typeIdentifier.tokenText());
-			for (final UlyssesType x : funType.parameter())
+			for (final Type x : funType.parameter())
 			{
 				m_emitter.Append("_");
 				m_emitter.Append(x.toString());
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/OoaCADPVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/OoaCADPVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/cadp/OoaCADPVisitor.java	(revision 9)
@@ -44,7 +44,7 @@
 import org.momut.ooas.ast.statements.Block;
 import org.momut.ooas.ast.types.FunctionType;
 import org.momut.ooas.ast.types.OoActionSystemType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.FunctionType.FunctionTypeEnum;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.parser.ParserState;
@@ -484,7 +484,7 @@
 	}
 
 
-	public static String DumpType(UlyssesType atype)
+	public static String DumpType(Type atype)
 	{
 		final CadpType newtype = new CadpType();
 		atype.Accept(newtype);
@@ -768,7 +768,7 @@
 				{
 					param.append("    struct {"); param.append(System.lineSeparator());
 					int parnum = 0;
-					for (final UlyssesType parameter: ((FunctionType)namedAction.type()).parameter())
+					for (final Type parameter: ((FunctionType)namedAction.type()).parameter())
 					{
 						param.append(String.format("        %1$s PARAM_%2$s;", DumpType(parameter), parnum));
 						param.append(System.lineSeparator());
@@ -977,7 +977,7 @@
 				m_output.AppendLine(String.format("    case %1$s:", num));
 				m_output.Append("      return ");
 				int paramnr = 0;
-				for (final UlyssesType param: ((FunctionType)action.type()).parameter())
+				for (final Type param: ((FunctionType)action.type()).parameter())
 				{
 					if (paramnr != 0)
 						m_output.AppendLine(" && ");
@@ -1032,7 +1032,7 @@
 			{
 				m_output.AppendLine(String.format("    case %1$s:", num));
 //				int paramnr = 0;
-				for (@SuppressWarnings("unused") final UlyssesType param: ((FunctionType)action.type()).parameter())
+				for (@SuppressWarnings("unused") final Type param: ((FunctionType)action.type()).parameter())
 				{
 					m_output.AppendLine(
 							String.format("      CAESAR_SIZE = sizeof (CAESAR_L->CAESAR_UNION.CAESAR_PROFILE_%1$s);", num));
@@ -1129,7 +1129,7 @@
 				int paramnum = 0;
 				for (final ParameterIdentifier paramname : action.parameter())
 				{
-					final UlyssesType param = paramname.type();
+					final Type param = paramname.type();
 					CadpType.EmitType(param);
 					m_output.AppendLine(String.format("      fprintf(CAESAR_FILE,\"%1$s: \");", paramname.tokenText()));
 					m_output.AppendLine(String.format("      %1$s%4$s(CAESAR_FILE, CAESAR_L->CAESAR_UNION.CAESAR_PROFILE_%2$s.PARAM_%3$s);",
@@ -1201,7 +1201,7 @@
 	{
 		final StringBuilder paramStr = new StringBuilder("CAESAR_TYPE_STATE CAESAR_S1");
 		int i = 0;
-		for (final UlyssesType param : fun.parameter())
+		for (final Type param : fun.parameter())
 		{
 			//CadpType.EmitType(param);
 			paramStr.append(", ");
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/java/JavaType.java	(revision 9)
@@ -37,7 +37,6 @@
 import org.momut.ooas.ast.types.MapType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
@@ -97,11 +96,6 @@
 //		m_emitter.Append("UlyssesDictionary<Object,Object>");
 	}
 
-	@Override
-	public void visit(QrType qrType)
-	{
-		m_emitter.Append("QualitativeValue");
-	}
 
 	@Override
 	public void visit(TupleType tupleType)
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologType.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologType.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologType.java	(revision 9)
@@ -29,7 +29,6 @@
 
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.types.BoolType;
 import org.momut.ooas.ast.types.CharType;
 import org.momut.ooas.ast.types.EnumType;
@@ -41,9 +40,8 @@
 import org.momut.ooas.ast.types.OoActionSystemInstance;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
@@ -58,7 +56,7 @@
 
 	protected final Scratchbook m_scratchbook;
 
-	public static void EmitType(UlyssesType aType, OoaPrologIdentifier.Factory idFactory, Scratchbook scratchbook)
+	public static void EmitType(Type aType, OoaPrologIdentifier.Factory idFactory, Scratchbook scratchbook)
 	{
 		final OoaPrologType ptype = new OoaPrologType(idFactory, scratchbook);
 		final OoasCodeEmitter m_emitter = new OoasCodeEmitter();
@@ -176,7 +174,7 @@
 			m_emitter.Append("[");
 			first = true;
 
-			for (final UlyssesType type: tupleType.innerTypes())
+			for (final Type type: tupleType.innerTypes())
 			{
 				final OoaPrologType iType = new OoaPrologType(idFactory, scratchbook);
 				type.Accept(iType);
@@ -191,25 +189,6 @@
 			m_emitter.AppendLine("]).");
 			break;
 
-		case QrType:
-			aType.Accept(ptype);
-			final QrType qrtype = (QrType)aType;
-
-			final StringBuilder landmarks = new StringBuilder();
-			int cntr = 0;
-			for (final LandmarkIdentifier s: qrtype.landmarks())
-			{
-				if (cntr != 0)
-					landmarks.append(", ");
-				else
-					cntr++;
-
-				final OoaPrologIdentifier identifierVisitor = idFactory.create();
-				s.Accept(identifierVisitor);
-				landmarks.append(identifierVisitor.toString());
-			}
-			m_emitter.AppendLine(String.format("qspace( %s, [%s] ).", ptype.toString(), landmarks.toString()));
-			break;
 		default:
 			throw new NotImplementedException();
 		}
@@ -220,14 +199,14 @@
 	private final OoasCodeEmitter m_emitter = new OoasCodeEmitter();
 	private final OoaPrologIdentifier.Factory m_idFactory;
 
-	public /*override*/ @Override
-	void visit(CharType charType)
+	@Override
+	public void visit(CharType charType)
 	{
 		m_emitter.Append("char");
 	}
 
-	public /*override*/ @Override
-	void visit(IntType intType)
+	@Override
+	public void visit(IntType intType)
 	{
 		final OoaPrologIdentifier id = m_idFactory.create();
 		intType.identifier().Accept(id);
@@ -235,20 +214,20 @@
 		m_emitter.Append(id.toString());
 	}
 
-	public /*override*/ @Override
-	void visit(BoolType boolType)
+	@Override
+	public void visit(BoolType boolType)
 	{
 		m_emitter.Append("bool");
 	}
 
-	public /*override*/ @Override
-	void visit(FloatType floatType)
+	@Override
+	public void visit(FloatType floatType)
 	{
 		throw new NotImplementedException();
 	}
 
-	public /*override*/ @Override
-	void visit(EnumType enumType)
+	@Override
+	public void visit(EnumType enumType)
 	{
 		final OoaPrologIdentifier id = m_idFactory.create();
 		enumType.identifier().Accept(id);
@@ -256,8 +235,8 @@
 		m_emitter.Append(id.toString());
 	}
 
-	public /*override*/ @Override
-	void visit(ListType listType)
+	@Override
+	public void visit(ListType listType)
 	{
 		final OoaPrologIdentifier id = m_idFactory.create();
 		listType.identifier().Accept(id);
@@ -266,23 +245,15 @@
 
 	}
 
-	public /*override*/ @Override
-	void visit(MapType mapType)
+	@Override
+	public void visit(MapType mapType)
 	{
 		throw new NotImplementedException();
 	}
 
-	public /*override*/ @Override
-	void visit(QrType qrType)
-	{
-		final OoaPrologIdentifier id = m_idFactory.create();
-		qrType.identifier().Accept(id);
-		m_emitter.Append(id.toString());
-		// m_emitter.Append(qrType.identifier.tokenText.ToLower());
-	}
 
-	public /*override*/ @Override
-	void visit(TupleType tupleType)
+	@Override
+	public void visit(TupleType tupleType)
 	{
 		final OoaPrologIdentifier id = m_idFactory.create();
 		tupleType.identifier().Accept(id);
@@ -290,14 +261,14 @@
 		m_emitter.Append(id.toString());
 	}
 
-	public /*override*/ @Override
-	void visit(FunctionType functionType)
+	@Override
+	public void visit(FunctionType functionType)
 	{
 		throw new NotImplementedException();
 	}
 
-	public /*override*/ @Override
-	void visit(OoActionSystemType ooActionSystemType)
+	@Override
+	public void visit(OoActionSystemType ooActionSystemType)
 	{
 		final OoaPrologIdentifier id = m_idFactory.create();
 		ooActionSystemType.identifier().Accept(id);
@@ -304,8 +275,8 @@
 		m_emitter.Append(id.toString());
 	}
 
-	public /*override*/ @Override
-	void visit(OpaqueType opaqueType)
+	@Override
+	public void visit(OpaqueType opaqueType)
 	{
 		throw new NotImplementedException();
 	}
@@ -312,7 +283,7 @@
 
 
 	@Override
-	public /*override*/ String toString()
+	public String toString()
 	{
 		return m_emitter.toString();
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologStatement.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologStatement.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/OoaPrologStatement.java	(revision 9)
@@ -45,7 +45,6 @@
 import org.momut.ooas.ast.statements.KillStatement;
 import org.momut.ooas.ast.statements.NondetBlock;
 import org.momut.ooas.ast.statements.PrioBlock;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.SkipStatement;
 import org.momut.ooas.ast.statements.Statement;
@@ -74,10 +73,10 @@
 	protected OoasCodeEmitter m_emitter = new OoasCodeEmitter();
 
 	@Override
-	public /*override*/ void visit(NondetBlock nondetBlock)
+	public void visit(NondetBlock nondetBlock)
 	{
 		int y = 0;
-		for (Statement x: nondetBlock.statements())
+		for (final Statement x: nondetBlock.statements())
 		{
 			if (y != 0)
 				m_emitter.Append("; ");
@@ -90,13 +89,13 @@
 	}
 
 	@Override
-	public /*override*/ void visit(SeqBlock seqBlock)
+	public void visit(SeqBlock seqBlock)
 	{
 		int y = 0;
 		if (seqBlock.symbols().symbolList().size() > 0)
 		{
 			m_emitter.Append("([");
-			for (Identifier sym: seqBlock.symbols().symbolList())
+			for (final Identifier sym: seqBlock.symbols().symbolList())
 			{
 				if (y != 0)
 					m_emitter.AppendLine(", ");
@@ -103,9 +102,9 @@
 				else
 					y++;
 
-				OoaPrologType atype = createTypeVisitor();
+				final OoaPrologType atype = createTypeVisitor();
 				sym.type().Accept(atype);
-				OoaPrologIdentifier anIdent = createIdentifierVisitor();
+				final OoaPrologIdentifier anIdent = createIdentifierVisitor();
 				sym.Accept(anIdent);
 				m_emitter.Append(String.format("%s:%s", anIdent.toString(), atype.toString()));
 			}
@@ -113,7 +112,7 @@
 		}
 
 		y = 0;
-		for (Statement x: seqBlock.statements())
+		for (final Statement x: seqBlock.statements())
 		{
 			if (y != 0)
 				m_emitter.AppendLine(", ");
@@ -129,10 +128,10 @@
 	}
 
 	@Override
-	public /*override*/ void visit(PrioBlock prioBlock)
+	public void visit(PrioBlock prioBlock)
 	{
 		int y = 0;
-		for (Statement x: prioBlock.statements())
+		for (final Statement x: prioBlock.statements())
 		{
 			if (y != 0)
 				m_emitter.Append("// ");
@@ -145,9 +144,9 @@
 	}
 
 	@Override
-	public /*override*/ void visit(GuardedCommand guardedCommand)
+	public void visit(GuardedCommand guardedCommand)
 	{
-		OoaPrologExpression expr = createExpressionVisitor();
+		final OoaPrologExpression expr = createExpressionVisitor();
 		guardedCommand.guard().Accept(expr);
 
 		m_emitter.AppendLineIncIndent(String.format("(%s%s) %s ",
@@ -162,14 +161,14 @@
 	}
 
 	@Override
-	public /*override*/ void visit(Assignment assignment)
+	public void visit(Assignment assignment)
 	{
 		if (assignment.nondetExpression() != null)
 			throw new NotImplementedException();
 
-		Iterator<Expression> aPlaceIt = assignment.places().iterator();
-		Iterator<Expression> aValueIt = assignment.values().iterator();
-		ArrayList<String> assignments = new ArrayList<String>();
+		final Iterator<Expression> aPlaceIt = assignment.places().iterator();
+		final Iterator<Expression> aValueIt = assignment.values().iterator();
+		final ArrayList<String> assignments = new ArrayList<String>();
 
 		while (aPlaceIt.hasNext())
 		{
@@ -176,11 +175,11 @@
 			final Expression aPlace = aPlaceIt.next();
 			final Expression aValue = aValueIt.next();
 
-			OoaPrologExpression prologPlace = createExpressionVisitor(true);
+			final OoaPrologExpression prologPlace = createExpressionVisitor(true);
 			aPlace.Accept(prologPlace);
 			assert(prologPlace.tmpVariables().size() == 1);
 
-			OoaPrologExpression prologValue = createExpressionVisitor();
+			final OoaPrologExpression prologValue = createExpressionVisitor();
 			aValue.Accept(prologValue);
 			assert(prologValue.tmpVariables().size() == 1);
 
@@ -213,7 +212,7 @@
 		}
 
 		int pos = 0;
-		for (String s: assignments)
+		for (final String s: assignments)
 		{
 			if (pos != 0)
 				m_emitter.Append(",");
@@ -223,11 +222,11 @@
 	}
 
 	@Override
-	public /*override*/ void visit(Call call)
+	public void visit(Call call)
 	{
-		Expression ce = call.callExpression();
+		final Expression ce = call.callExpression();
 		String callstatement = "";
-		StringBuilder parameter = new StringBuilder();
+		final StringBuilder parameter = new StringBuilder();
 		boolean hideCall = false;
 
 		if (ce.kind() == ExpressionKind.Identifier)
@@ -234,9 +233,9 @@
 			callstatement = ((IdentifierExpression)ce).identifier().tokenText();
 		else if (ce.kind() == ExpressionKind.Call)
 		{
-			CallExpression parens = (CallExpression)ce;
+			final CallExpression parens = (CallExpression)ce;
 
-			OoaPrologExpression prologexpr = createExpressionVisitor();
+			final OoaPrologExpression prologexpr = createExpressionVisitor();
 			parens.child().Accept(prologexpr);
 
 			if (parens.child().kind() == ExpressionKind.Identifier &&
@@ -243,7 +242,7 @@
 					((IdentifierExpression)parens.child()).identifier().kind() == IdentifierKind.NamedActionIdentifier)
 			{
 				// we need to hide internal actions
-				NamedActionIdentifier namedactionid = (NamedActionIdentifier)((IdentifierExpression)parens.child()).identifier();
+				final NamedActionIdentifier namedactionid = (NamedActionIdentifier)((IdentifierExpression)parens.child()).identifier();
 				hideCall = ((FunctionType)namedactionid.type()).functionType() == FunctionTypeEnum.Internal;
 			}
 
@@ -250,13 +249,13 @@
 			m_emitter.Append(prologexpr.toString());
 			callstatement = prologexpr.tmpVariables().get(0);
 			int i = 0;
-			for (Expression arg: parens.arguments())
+			for (final Expression arg: parens.arguments())
 			{
 				if (i != 0)
 					parameter.append(", ");
 				else
 					i++;
-				OoaPrologExpression paramexpr = createExpressionVisitor();
+				final OoaPrologExpression paramexpr = createExpressionVisitor();
 				arg.Accept(paramexpr);
 				m_emitter.Append(paramexpr.toString());
 				parameter.append(paramexpr.tmpVariables().get(0));
@@ -275,79 +274,26 @@
 	}
 
 	@Override
-	public /*override*/ void visit(SkipStatement skipStatement)
+	public void visit(SkipStatement skipStatement)
 	{
 		m_emitter.Append("skip");
 	}
 
 	@Override
-	public /*override*/ void visit(AbortStatement abortStatement)
+	public void visit(AbortStatement abortStatement)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(KillStatement killStatement)
+	public void visit(KillStatement killStatement)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(QualitativeConstraintStatement qalitativeConstraintStatement)
+	public String toString()
 	{
-		if (qalitativeConstraintStatement.tag)
-		{
-			m_emitter.Append("% observable assignment in actionhead");
-			return;
-		}
-
-		OoaPrologIdentifier id1 = createIdentifierVisitor();
-		OoaPrologIdentifier id2 = createIdentifierVisitor();
-		OoaPrologIdentifier id3 = createIdentifierVisitor();
-
-
-		switch (qalitativeConstraintStatement.operation())
-		{
-		case Deriv:
-			qalitativeConstraintStatement.variable0().Accept(id1);
-			qalitativeConstraintStatement.variable1().Accept(id2);
-			m_emitter.Append(String.format("%s := dt %s", id1.toString(), id2.toString()));
-			break;
-		case Diff:
-			qalitativeConstraintStatement.variable0().Accept(id1);
-			qalitativeConstraintStatement.variable1().Accept(id2);
-			qalitativeConstraintStatement.variable2().Accept(id3);
-			m_emitter.Append(String.format("%s := %s - %s", id1.toString(), id2.toString(), id3.toString()));
-			break;
-		case Equal:
-			qalitativeConstraintStatement.variable0().Accept(id1);
-			qalitativeConstraintStatement.variable1().Accept(id2);
-			m_emitter.Append(String.format("%s := %s", id1.toString(), id2.toString()));
-			break;
-
-		case Prod:
-			qalitativeConstraintStatement.variable0().Accept(id1);
-			qalitativeConstraintStatement.variable1().Accept(id2);
-			qalitativeConstraintStatement.variable2().Accept(id3);
-			m_emitter.Append(String.format("%s := %s * %s", id1.toString(), id2.toString(), id3.toString()));
-			break;
-
-		case Sum:
-			qalitativeConstraintStatement.variable0().Accept(id1);
-			qalitativeConstraintStatement.variable1().Accept(id2);
-			qalitativeConstraintStatement.variable2().Accept(id3);
-			m_emitter.Append(String.format("%s := %s + %s", id1.toString(), id2.toString(), id3.toString()));
-			break;
-
-		default:
-			throw new NotImplementedException();
-		}
-	}
-
-
-	@Override
-	public /*override*/ String toString()
-	{
 		return m_emitter.toString();
 	}
 
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prologsymbolic/OoaPrologSymbolicExpression.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prologsymbolic/OoaPrologSymbolicExpression.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prologsymbolic/OoaPrologSymbolicExpression.java	(revision 9)
@@ -36,10 +36,9 @@
 import org.momut.ooas.ast.expressions.ValueExpression;
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.IdentifierKind;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.types.EnumType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.codegen.prolog.OoaPrologExpression;
@@ -80,7 +79,7 @@
 	}
 
 	// we need to map all other things to Prolog constructs
-	private String operatorString(Expression expression, UlyssesType resultingType)
+	private String operatorString(Expression expression, Type resultingType)
 	{
 		switch (expression.kind())
 		{
@@ -155,7 +154,7 @@
 
 	@SuppressWarnings("unchecked")
 	@Override
-	public /*override*/ <T> void visit(ValueExpression<T> valueExpression)
+	public <T> void visit(ValueExpression<T> valueExpression)
 	{
 		assert(m_tmpVars.size() == 0);
 		final String tmpVar = NewTempVariable();
@@ -178,19 +177,10 @@
 	}
 
 	@Override
-	public /*override*/ void visit(IdentifierExpression identifierExpression)
+	public void visit(IdentifierExpression identifierExpression)
 	{
-		if (identifierExpression.identifier().kind() == IdentifierKind.LandmarkIdentifier)
+		if (identifierExpression.identifier().kind() == IdentifierKind.EnumIdentifier)
 		{
-			final LandmarkIdentifier lmid = (LandmarkIdentifier)identifierExpression.identifier();
-			final OoaPrologIdentifier pid = createIdentifierVisitor();
-			lmid.Accept(pid);
-			//m_emitter.Append(pid.ToString());
-			m_tmpVars.add(pid.toString());
-			return;
-		}
-		else if (identifierExpression.identifier().kind() == IdentifierKind.EnumIdentifier)
-		{
 			final EnumIdentifier enumid = (EnumIdentifier)identifierExpression.identifier();
 			final EnumType enumType = (EnumType)enumid.type();
 			//m_emitter.Append(enumType.listOfEnumSymbols.IndexOf(enumid));
@@ -210,7 +200,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(UnaryOperator unaryOperator)
+	public void visit(UnaryOperator unaryOperator)
 	{
 		assert(m_tmpVars.size() == 0);
 		VisitSub(unaryOperator.child(), unaryOperator);
@@ -260,7 +250,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(BinaryOperator binaryOperator)
+	public void visit(BinaryOperator binaryOperator)
 	{
 		// eval stack must be empty
 		assert(m_tmpVars.size() == 0);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/Scratchbook.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/Scratchbook.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/codegen/prolog/Scratchbook.java	(revision 9)
@@ -29,11 +29,11 @@
 
 import java.util.HashSet;
 
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 
 public final class Scratchbook {
 	private int tmpVarCntr = 0;
-	final HashSet<UlyssesType> m_definedTypes = new HashSet<UlyssesType>();
+	final HashSet<Type> m_definedTypes = new HashSet<Type>();
 	final StringBuilder m_typeDefinitions = new StringBuilder();
 
 	public synchronized int getNewTmpVarCntrValue() {
@@ -40,6 +40,6 @@
 		tmpVarCntr++;
 		return tmpVarCntr;
 	}
-	public HashSet<UlyssesType> definedTypes() {return m_definedTypes;}
+	public HashSet<Type> definedTypes() {return m_definedTypes;}
 	public StringBuilder typeDefinitions() {return m_typeDefinitions;}
 }
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaLexer.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaLexer.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaLexer.java	(revision 9)
@@ -1,4 +1,4 @@
-// $ANTLR 3.4 C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g 2015-03-30 18:21:33
+// $ANTLR 3.4 /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g 2015-08-31 13:32:38
 
 /*
     Ulysses OO-Action System Parser
@@ -19,16 +19,12 @@
 @SuppressWarnings({"all", "warnings", "unchecked"})
 public class ooaLexer extends Lexer {
     public static final int EOF=-1;
+    public static final int T__116=116;
+    public static final int T__117=117;
     public static final int T__118=118;
     public static final int T__119=119;
     public static final int T__120=120;
     public static final int T__121=121;
-    public static final int T__122=122;
-    public static final int T__123=123;
-    public static final int T__124=124;
-    public static final int T__125=125;
-    public static final int T__126=126;
-    public static final int T__127=127;
     public static final int FLOAT_OR_INT_OR_RANGE=4;
     public static final int LINE_COMMENT=5;
     public static final int T_ABORT=6;
@@ -50,99 +46,97 @@
     public static final int T_COMMENT=22;
     public static final int T_CONC=23;
     public static final int T_CONSTS=24;
-    public static final int T_CONT=25;
-    public static final int T_CTRL=26;
-    public static final int T_DCONC=27;
-    public static final int T_DERIV=28;
-    public static final int T_DIFF=29;
-    public static final int T_DIGIT=30;
-    public static final int T_DINTER=31;
-    public static final int T_DIV=32;
-    public static final int T_DO=33;
-    public static final int T_DOM=34;
-    public static final int T_DOMRESBY=35;
-    public static final int T_DOMRESTO=36;
-    public static final int T_DUNION=37;
-    public static final int T_ELEMS=38;
-    public static final int T_ELSE=39;
-    public static final int T_END=40;
-    public static final int T_EQUAL=41;
-    public static final int T_EXISTS=42;
-    public static final int T_FALSE=43;
-    public static final int T_FLOAT=44;
-    public static final int T_FLOATNUMBER=45;
-    public static final int T_FOLDLR=46;
-    public static final int T_FOLDRL=47;
-    public static final int T_FORALL=48;
-    public static final int T_GREATER=49;
-    public static final int T_GREATEREQUAL=50;
-    public static final int T_HEAD=51;
-    public static final int T_IDENTIFIER=52;
-    public static final int T_IDIV=53;
-    public static final int T_IF=54;
-    public static final int T_IMPLIES=55;
-    public static final int T_IN=56;
-    public static final int T_INDS=57;
-    public static final int T_INFTY=58;
-    public static final int T_INT=59;
-    public static final int T_INTER=60;
-    public static final int T_INTNUMBER=61;
-    public static final int T_KILL=62;
-    public static final int T_LEN=63;
-    public static final int T_LESS=64;
-    public static final int T_LESSEQUAL=65;
-    public static final int T_LETTER=66;
-    public static final int T_LIST=67;
-    public static final int T_LPAREN=68;
-    public static final int T_LSQPAREN=69;
-    public static final int T_MAP=70;
-    public static final int T_MAPS=71;
-    public static final int T_MERGE=72;
-    public static final int T_METHODS=73;
-    public static final int T_MINUS=74;
-    public static final int T_MOD=75;
-    public static final int T_MUNION=76;
-    public static final int T_NEW=77;
-    public static final int T_NIL=78;
-    public static final int T_NONDET=79;
-    public static final int T_NOT=80;
-    public static final int T_NOTEQUAL=81;
-    public static final int T_OBS=82;
-    public static final int T_OD=83;
-    public static final int T_OF=84;
-    public static final int T_OR=85;
-    public static final int T_POINT=86;
-    public static final int T_POW=87;
-    public static final int T_PRIMED=88;
-    public static final int T_PRIO=89;
-    public static final int T_PROD=90;
-    public static final int T_QUANTITY=91;
-    public static final int T_RANGETO=92;
-    public static final int T_REQUIRES=93;
-    public static final int T_RNG=94;
-    public static final int T_RNGRESBY=95;
-    public static final int T_RNGRESTO=96;
-    public static final int T_RPAREN=97;
-    public static final int T_RSQPAREN=98;
-    public static final int T_SELF=99;
-    public static final int T_SEMICOLON=100;
-    public static final int T_SEQMOD_MAPOVERRIDE=101;
-    public static final int T_SET=102;
-    public static final int T_SKIP=103;
-    public static final int T_STATIC=104;
-    public static final int T_STRINGLITERAL=105;
-    public static final int T_SUBSET=106;
-    public static final int T_SUM=107;
-    public static final int T_SYSTEM=108;
-    public static final int T_TAIL=109;
-    public static final int T_THEN=110;
-    public static final int T_TO=111;
-    public static final int T_TRUE=112;
-    public static final int T_TYPES=113;
-    public static final int T_UNION=114;
-    public static final int T_VAR=115;
-    public static final int T_WITH=116;
-    public static final int T_WS=117;
+    public static final int T_CTRL=25;
+    public static final int T_DCONC=26;
+    public static final int T_DERIV=27;
+    public static final int T_DIFF=28;
+    public static final int T_DIGIT=29;
+    public static final int T_DINTER=30;
+    public static final int T_DIV=31;
+    public static final int T_DO=32;
+    public static final int T_DOM=33;
+    public static final int T_DOMRESBY=34;
+    public static final int T_DOMRESTO=35;
+    public static final int T_DUNION=36;
+    public static final int T_ELEMS=37;
+    public static final int T_ELSE=38;
+    public static final int T_END=39;
+    public static final int T_EQUAL=40;
+    public static final int T_EXISTS=41;
+    public static final int T_FALSE=42;
+    public static final int T_FLOAT=43;
+    public static final int T_FLOATNUMBER=44;
+    public static final int T_FOLDLR=45;
+    public static final int T_FOLDRL=46;
+    public static final int T_FORALL=47;
+    public static final int T_GREATER=48;
+    public static final int T_GREATEREQUAL=49;
+    public static final int T_HEAD=50;
+    public static final int T_IDENTIFIER=51;
+    public static final int T_IDIV=52;
+    public static final int T_IF=53;
+    public static final int T_IMPLIES=54;
+    public static final int T_IN=55;
+    public static final int T_INDS=56;
+    public static final int T_INFTY=57;
+    public static final int T_INT=58;
+    public static final int T_INTER=59;
+    public static final int T_INTNUMBER=60;
+    public static final int T_KILL=61;
+    public static final int T_LEN=62;
+    public static final int T_LESS=63;
+    public static final int T_LESSEQUAL=64;
+    public static final int T_LETTER=65;
+    public static final int T_LIST=66;
+    public static final int T_LPAREN=67;
+    public static final int T_LSQPAREN=68;
+    public static final int T_MAP=69;
+    public static final int T_MAPS=70;
+    public static final int T_MERGE=71;
+    public static final int T_METHODS=72;
+    public static final int T_MINUS=73;
+    public static final int T_MOD=74;
+    public static final int T_MUNION=75;
+    public static final int T_NEW=76;
+    public static final int T_NIL=77;
+    public static final int T_NONDET=78;
+    public static final int T_NOT=79;
+    public static final int T_NOTEQUAL=80;
+    public static final int T_OBS=81;
+    public static final int T_OD=82;
+    public static final int T_OF=83;
+    public static final int T_OR=84;
+    public static final int T_POINT=85;
+    public static final int T_POW=86;
+    public static final int T_PRIMED=87;
+    public static final int T_PRIO=88;
+    public static final int T_PROD=89;
+    public static final int T_RANGETO=90;
+    public static final int T_REQUIRES=91;
+    public static final int T_RNG=92;
+    public static final int T_RNGRESBY=93;
+    public static final int T_RNGRESTO=94;
+    public static final int T_RPAREN=95;
+    public static final int T_RSQPAREN=96;
+    public static final int T_SELF=97;
+    public static final int T_SEMICOLON=98;
+    public static final int T_SEQMOD_MAPOVERRIDE=99;
+    public static final int T_SET=100;
+    public static final int T_SKIP=101;
+    public static final int T_STATIC=102;
+    public static final int T_STRINGLITERAL=103;
+    public static final int T_SUBSET=104;
+    public static final int T_SUM=105;
+    public static final int T_SYSTEM=106;
+    public static final int T_TAIL=107;
+    public static final int T_THEN=108;
+    public static final int T_TO=109;
+    public static final int T_TRUE=110;
+    public static final int T_TYPES=111;
+    public static final int T_UNION=112;
+    public static final int T_VAR=113;
+    public static final int T_WITH=114;
+    public static final int T_WS=115;
 
     // delegates
     // delegators
@@ -157,15 +151,15 @@
     public ooaLexer(CharStream input, RecognizerSharedState state) {
         super(input,state);
     }
-    public String getGrammarFileName() { return "C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g"; }
+    public String getGrammarFileName() { return "/home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g"; }
 
-    // $ANTLR start "T__118"
-    public final void mT__118() throws RecognitionException {
+    // $ANTLR start "T__116"
+    public final void mT__116() throws RecognitionException {
         try {
-            int _type = T__118;
+            int _type = T__116;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:12:8: ( '&' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:12:10: '&'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:12:8: ( '&' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:12:10: '&'
             {
             match('&'); if (state.failed) return ;
 
@@ -178,15 +172,15 @@
         	// do for sure before leaving
         }
     }
-    // $ANTLR end "T__118"
+    // $ANTLR end "T__116"
 
-    // $ANTLR start "T__119"
-    public final void mT__119() throws RecognitionException {
+    // $ANTLR start "T__117"
+    public final void mT__117() throws RecognitionException {
         try {
-            int _type = T__119;
+            int _type = T__117;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:13:8: ( '::' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:13:10: '::'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:13:8: ( '::' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:13:10: '::'
             {
             match("::"); if (state.failed) return ;
 
@@ -201,15 +195,15 @@
         	// do for sure before leaving
         }
     }
-    // $ANTLR end "T__119"
+    // $ANTLR end "T__117"
 
-    // $ANTLR start "T__120"
-    public final void mT__120() throws RecognitionException {
+    // $ANTLR start "T__118"
+    public final void mT__118() throws RecognitionException {
         try {
-            int _type = T__120;
+            int _type = T__118;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:14:8: ( ']|' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:14:10: ']|'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:14:8: ( ']|' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:14:10: ']|'
             {
             match("]|"); if (state.failed) return ;
 
@@ -224,15 +218,15 @@
         	// do for sure before leaving
         }
     }
-    // $ANTLR end "T__120"
+    // $ANTLR end "T__118"
 
-    // $ANTLR start "T__121"
-    public final void mT__121() throws RecognitionException {
+    // $ANTLR start "T__119"
+    public final void mT__119() throws RecognitionException {
         try {
-            int _type = T__121;
+            int _type = T__119;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:15:8: ( 'as' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:15:10: 'as'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:15:8: ( 'as' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:15:10: 'as'
             {
             match("as"); if (state.failed) return ;
 
@@ -247,15 +241,15 @@
         	// do for sure before leaving
         }
     }
-    // $ANTLR end "T__121"
+    // $ANTLR end "T__119"
 
-    // $ANTLR start "T__122"
-    public final void mT__122() throws RecognitionException {
+    // $ANTLR start "T__120"
+    public final void mT__120() throws RecognitionException {
         try {
-            int _type = T__122;
+            int _type = T__120;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:16:8: ( 'begin' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:16:10: 'begin'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:16:8: ( 'begin' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:16:10: 'begin'
             {
             match("begin"); if (state.failed) return ;
 
@@ -270,108 +264,16 @@
         	// do for sure before leaving
         }
     }
-    // $ANTLR end "T__122"
+    // $ANTLR end "T__120"
 
-    // $ANTLR start "T__123"
-    public final void mT__123() throws RecognitionException {
+    // $ANTLR start "T__121"
+    public final void mT__121() throws RecognitionException {
         try {
-            int _type = T__123;
+            int _type = T__121;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:17:8: ( 'dec' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:17:10: 'dec'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:17:8: ( '|[' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:17:10: '|['
             {
-            match("dec"); if (state.failed) return ;
-
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        	// do for sure before leaving
-        }
-    }
-    // $ANTLR end "T__123"
-
-    // $ANTLR start "T__124"
-    public final void mT__124() throws RecognitionException {
-        try {
-            int _type = T__124;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:18:8: ( 'inc' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:18:10: 'inc'
-            {
-            match("inc"); if (state.failed) return ;
-
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        	// do for sure before leaving
-        }
-    }
-    // $ANTLR end "T__124"
-
-    // $ANTLR start "T__125"
-    public final void mT__125() throws RecognitionException {
-        try {
-            int _type = T__125;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:19:8: ( 'qval' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:19:10: 'qval'
-            {
-            match("qval"); if (state.failed) return ;
-
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        	// do for sure before leaving
-        }
-    }
-    // $ANTLR end "T__125"
-
-    // $ANTLR start "T__126"
-    public final void mT__126() throws RecognitionException {
-        try {
-            int _type = T__126;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:20:8: ( 'steady' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:20:10: 'steady'
-            {
-            match("steady"); if (state.failed) return ;
-
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        	// do for sure before leaving
-        }
-    }
-    // $ANTLR end "T__126"
-
-    // $ANTLR start "T__127"
-    public final void mT__127() throws RecognitionException {
-        try {
-            int _type = T__127;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:21:8: ( '|[' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:21:10: '|['
-            {
             match("|["); if (state.failed) return ;
 
 
@@ -385,7 +287,7 @@
         	// do for sure before leaving
         }
     }
-    // $ANTLR end "T__127"
+    // $ANTLR end "T__121"
 
     // $ANTLR start "T_WS"
     public final void mT_WS() throws RecognitionException {
@@ -392,8 +294,8 @@
         try {
             int _type = T_WS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1030:8: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1030:10: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:927:8: ( ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' ) )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:927:10: ( ' ' | '\\r' | '\\t' | '\\u000C' | '\\n' )
             {
             if ( (input.LA(1) >= '\t' && input.LA(1) <= '\n')||(input.LA(1) >= '\f' && input.LA(1) <= '\r')||input.LA(1)==' ' ) {
                 input.consume();
@@ -425,14 +327,14 @@
         try {
             int _type = T_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1034:6: ( '/*' ( . )* '*/' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1034:8: '/*' ( . )* '*/'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:931:6: ( '/*' ( . )* '*/' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:931:8: '/*' ( . )* '*/'
             {
             match("/*"); if (state.failed) return ;
 
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1034:13: ( . )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:931:13: ( . )*
             loop1:
             do {
                 int alt1=2;
@@ -457,7 +359,7 @@
 
                 switch (alt1) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1034:13: .
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:931:13: .
             	    {
             	    matchAny(); if (state.failed) return ;
 
@@ -492,12 +394,12 @@
         try {
             int _type = LINE_COMMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1038:6: ( '#' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1038:8: '#' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:935:6: ( '#' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:935:8: '#' (~ ( '\\n' | '\\r' ) )* ( '\\r' )? '\\n'
             {
             match('#'); if (state.failed) return ;
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1038:12: (~ ( '\\n' | '\\r' ) )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:935:12: (~ ( '\\n' | '\\r' ) )*
             loop2:
             do {
                 int alt2=2;
@@ -510,7 +412,7 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
             	    {
             	    if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '\t')||(input.LA(1) >= '\u000B' && input.LA(1) <= '\f')||(input.LA(1) >= '\u000E' && input.LA(1) <= '\uFFFF') ) {
             	        input.consume();
@@ -533,7 +435,7 @@
             } while (true);
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1038:26: ( '\\r' )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:935:26: ( '\\r' )?
             int alt3=2;
             int LA3_0 = input.LA(1);
 
@@ -542,7 +444,7 @@
             }
             switch (alt3) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1038:26: '\\r'
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:935:26: '\\r'
                     {
                     match('\r'); if (state.failed) return ;
 
@@ -572,8 +474,8 @@
         try {
             int _type = T_PRIMED;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1042:2: ( '\\'' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1042:4: '\\''
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:939:2: ( '\\'' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:939:4: '\\''
             {
             match('\''); if (state.failed) return ;
 
@@ -593,12 +495,12 @@
         try {
             int _type = T_STRINGLITERAL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1045:2: ( '\"' ( ( '\"' '\"' )=> '\"' |~ '\"' )* '\"' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1045:4: '\"' ( ( '\"' '\"' )=> '\"' |~ '\"' )* '\"'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:942:2: ( '\"' ( ( '\"' '\"' )=> '\"' |~ '\"' )* '\"' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:942:4: '\"' ( ( '\"' '\"' )=> '\"' |~ '\"' )* '\"'
             {
             match('\"'); if (state.failed) return ;
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1046:3: ( ( '\"' '\"' )=> '\"' |~ '\"' )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:943:3: ( ( '\"' '\"' )=> '\"' |~ '\"' )*
             loop4:
             do {
                 int alt4=3;
@@ -623,7 +525,7 @@
 
                 switch (alt4) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1047:9: ( '\"' '\"' )=> '\"'
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:944:9: ( '\"' '\"' )=> '\"'
             	    {
             	    match('\"'); if (state.failed) return ;
 
@@ -630,7 +532,7 @@
             	    }
             	    break;
             	case 2 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1048:13: ~ '\"'
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:945:13: ~ '\"'
             	    {
             	    if ( (input.LA(1) >= '\u0000' && input.LA(1) <= '!')||(input.LA(1) >= '#' && input.LA(1) <= '\uFFFF') ) {
             	        input.consume();
@@ -671,8 +573,8 @@
         try {
             int _type = T_ABORT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1054:9: ( 'abort' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1054:11: 'abort'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:951:9: ( 'abort' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:951:11: 'abort'
             {
             match("abort"); if (state.failed) return ;
 
@@ -694,8 +596,8 @@
         try {
             int _type = T_ACTIONS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1056:2: ( 'actions' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1056:4: 'actions'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:953:2: ( 'actions' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:953:4: 'actions'
             {
             match("actions"); if (state.failed) return ;
 
@@ -717,8 +619,8 @@
         try {
             int _type = T_ASSIGNMENT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1058:2: ( ':=' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1058:4: ':='
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:955:2: ( ':=' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:955:4: ':='
             {
             match(":="); if (state.failed) return ;
 
@@ -740,8 +642,8 @@
         try {
             int _type = T_AUTOCONS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1059:11: ( 'autocons' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1059:13: 'autocons'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:956:11: ( 'autocons' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:956:13: 'autocons'
             {
             match("autocons"); if (state.failed) return ;
 
@@ -763,8 +665,8 @@
         try {
             int _type = T_BAR;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1060:7: ( '|' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1060:9: '|'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:957:7: ( '|' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:957:9: '|'
             {
             match('|'); if (state.failed) return ;
 
@@ -784,8 +686,8 @@
         try {
             int _type = T_BOOL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1061:8: ( 'bool' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1061:10: 'bool'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:958:8: ( 'bool' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:958:10: 'bool'
             {
             match("bool"); if (state.failed) return ;
 
@@ -807,8 +709,8 @@
         try {
             int _type = T_CBRL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1062:8: ( '{' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1062:10: '{'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:959:8: ( '{' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:959:10: '{'
             {
             match('{'); if (state.failed) return ;
 
@@ -828,8 +730,8 @@
         try {
             int _type = T_CBRR;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1063:8: ( '}' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1063:10: '}'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:960:8: ( '}' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:960:10: '}'
             {
             match('}'); if (state.failed) return ;
 
@@ -849,8 +751,8 @@
         try {
             int _type = T_COLON;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1064:9: ( ':' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1064:11: ':'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:961:9: ( ':' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:961:11: ':'
             {
             match(':'); if (state.failed) return ;
 
@@ -870,8 +772,8 @@
         try {
             int _type = T_COMMA;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1065:9: ( ',' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1065:11: ','
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:962:9: ( ',' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:962:11: ','
             {
             match(','); if (state.failed) return ;
 
@@ -886,36 +788,13 @@
     }
     // $ANTLR end "T_COMMA"
 
-    // $ANTLR start "T_CONT"
-    public final void mT_CONT() throws RecognitionException {
-        try {
-            int _type = T_CONT;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1066:8: ( 'qual' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1066:10: 'qual'
-            {
-            match("qual"); if (state.failed) return ;
-
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        	// do for sure before leaving
-        }
-    }
-    // $ANTLR end "T_CONT"
-
     // $ANTLR start "T_CHAR"
     public final void mT_CHAR() throws RecognitionException {
         try {
             int _type = T_CHAR;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1067:8: ( 'char' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1067:10: 'char'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:964:8: ( 'char' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:964:10: 'char'
             {
             match("char"); if (state.failed) return ;
 
@@ -937,8 +816,8 @@
         try {
             int _type = T_CTRL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1068:9: ( 'ctr' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1068:11: 'ctr'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:965:9: ( 'ctr' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:965:11: 'ctr'
             {
             match("ctr"); if (state.failed) return ;
 
@@ -960,8 +839,8 @@
         try {
             int _type = T_SYSTEM;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1070:2: ( 'system' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1070:4: 'system'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:967:2: ( 'system' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:967:4: 'system'
             {
             match("system"); if (state.failed) return ;
 
@@ -983,8 +862,8 @@
         try {
             int _type = T_DO;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1071:6: ( 'do' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1071:8: 'do'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:968:6: ( 'do' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:968:8: 'do'
             {
             match("do"); if (state.failed) return ;
 
@@ -1006,8 +885,8 @@
         try {
             int _type = T_ELSE;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1072:8: ( 'else' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1072:10: 'else'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:969:8: ( 'else' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:969:10: 'else'
             {
             match("else"); if (state.failed) return ;
 
@@ -1029,8 +908,8 @@
         try {
             int _type = T_END;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1073:7: ( 'end' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1073:9: 'end'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:970:7: ( 'end' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:970:9: 'end'
             {
             match("end"); if (state.failed) return ;
 
@@ -1052,8 +931,8 @@
         try {
             int _type = T_EQUAL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1074:9: ( '=' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1074:11: '='
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:971:9: ( '=' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:971:11: '='
             {
             match('='); if (state.failed) return ;
 
@@ -1073,8 +952,8 @@
         try {
             int _type = T_EXISTS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1075:9: ( 'exists' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1075:11: 'exists'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:972:10: ( 'exists' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:972:12: 'exists'
             {
             match("exists"); if (state.failed) return ;
 
@@ -1096,8 +975,8 @@
         try {
             int _type = T_FLOAT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1076:9: ( 'float' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1076:11: 'float'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:973:9: ( 'float' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:973:11: 'float'
             {
             match("float"); if (state.failed) return ;
 
@@ -1119,8 +998,8 @@
         try {
             int _type = T_FORALL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1077:9: ( 'forall' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1077:11: 'forall'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:974:10: ( 'forall' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:974:12: 'forall'
             {
             match("forall"); if (state.failed) return ;
 
@@ -1142,8 +1021,8 @@
         try {
             int _type = T_FALSE;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1078:9: ( 'false' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1078:11: 'false'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:975:10: ( 'false' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:975:12: 'false'
             {
             match("false"); if (state.failed) return ;
 
@@ -1165,8 +1044,8 @@
         try {
             int _type = T_IF;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1079:6: ( 'if' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1079:8: 'if'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:976:6: ( 'if' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:976:8: 'if'
             {
             match("if"); if (state.failed) return ;
 
@@ -1188,8 +1067,8 @@
         try {
             int _type = T_IN;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1080:6: ( 'in' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1080:8: 'in'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:977:6: ( 'in' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:977:8: 'in'
             {
             match("in"); if (state.failed) return ;
 
@@ -1211,8 +1090,8 @@
         try {
             int _type = T_INT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1081:7: ( 'int' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1081:9: 'int'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:978:7: ( 'int' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:978:9: 'int'
             {
             match("int"); if (state.failed) return ;
 
@@ -1234,8 +1113,8 @@
         try {
             int _type = T_KILL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1082:8: ( 'kill' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1082:10: 'kill'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:979:8: ( 'kill' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:979:10: 'kill'
             {
             match("kill"); if (state.failed) return ;
 
@@ -1257,8 +1136,8 @@
         try {
             int _type = T_LIST;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1083:8: ( 'list' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1083:10: 'list'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:980:8: ( 'list' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:980:10: 'list'
             {
             match("list"); if (state.failed) return ;
 
@@ -1280,8 +1159,8 @@
         try {
             int _type = T_LPAREN;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1084:9: ( '(' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1084:11: '('
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:981:10: ( '(' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:981:12: '('
             {
             match('('); if (state.failed) return ;
 
@@ -1301,8 +1180,8 @@
         try {
             int _type = T_LSQPAREN;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1085:11: ( '[' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1085:13: '['
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:982:11: ( '[' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:982:13: '['
             {
             match('['); if (state.failed) return ;
 
@@ -1322,8 +1201,8 @@
         try {
             int _type = T_MAP;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1086:7: ( 'map' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1086:9: 'map'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:983:7: ( 'map' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:983:9: 'map'
             {
             match("map"); if (state.failed) return ;
 
@@ -1345,8 +1224,8 @@
         try {
             int _type = T_MAPS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1087:8: ( '->' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1087:10: '->'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:984:8: ( '->' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:984:10: '->'
             {
             match("->"); if (state.failed) return ;
 
@@ -1368,8 +1247,8 @@
         try {
             int _type = T_METHODS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1089:2: ( 'methods' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1089:4: 'methods'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:986:2: ( 'methods' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:986:4: 'methods'
             {
             match("methods"); if (state.failed) return ;
 
@@ -1391,8 +1270,8 @@
         try {
             int _type = T_NEW;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1090:7: ( 'new' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1090:9: 'new'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:987:7: ( 'new' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:987:9: 'new'
             {
             match("new"); if (state.failed) return ;
 
@@ -1414,8 +1293,8 @@
         try {
             int _type = T_NIL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1091:7: ( 'nil' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1091:9: 'nil'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:988:7: ( 'nil' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:988:9: 'nil'
             {
             match("nil"); if (state.failed) return ;
 
@@ -1437,8 +1316,8 @@
         try {
             int _type = T_NONDET;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1092:9: ( '[]' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1092:11: '[]'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:989:10: ( '[]' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:989:12: '[]'
             {
             match("[]"); if (state.failed) return ;
 
@@ -1460,8 +1339,8 @@
         try {
             int _type = T_OBS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1093:7: ( 'obs' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1093:9: 'obs'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:990:7: ( 'obs' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:990:9: 'obs'
             {
             match("obs"); if (state.failed) return ;
 
@@ -1483,8 +1362,8 @@
         try {
             int _type = T_OD;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1094:6: ( 'od' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1094:8: 'od'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:991:6: ( 'od' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:991:8: 'od'
             {
             match("od"); if (state.failed) return ;
 
@@ -1506,8 +1385,8 @@
         try {
             int _type = T_OF;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1095:6: ( 'of' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1095:8: 'of'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:992:6: ( 'of' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:992:8: 'of'
             {
             match("of"); if (state.failed) return ;
 
@@ -1529,8 +1408,8 @@
         try {
             int _type = T_PRIO;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1096:8: ( '//' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1096:10: '//'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:993:8: ( '//' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:993:10: '//'
             {
             match("//"); if (state.failed) return ;
 
@@ -1552,8 +1431,8 @@
         try {
             int _type = T_REQUIRES;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1098:2: ( 'requires' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1098:4: 'requires'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:995:2: ( 'requires' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:995:4: 'requires'
             {
             match("requires"); if (state.failed) return ;
 
@@ -1575,8 +1454,8 @@
         try {
             int _type = T_RPAREN;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1099:9: ( ')' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1099:11: ')'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:996:10: ( ')' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:996:12: ')'
             {
             match(')'); if (state.failed) return ;
 
@@ -1596,8 +1475,8 @@
         try {
             int _type = T_RSQPAREN;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1100:11: ( ']' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1100:13: ']'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:997:11: ( ']' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:997:13: ']'
             {
             match(']'); if (state.failed) return ;
 
@@ -1612,36 +1491,13 @@
     }
     // $ANTLR end "T_RSQPAREN"
 
-    // $ANTLR start "T_QUANTITY"
-    public final void mT_QUANTITY() throws RecognitionException {
-        try {
-            int _type = T_QUANTITY;
-            int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1102:2: ( 'qspace' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1102:4: 'qspace'
-            {
-            match("qspace"); if (state.failed) return ;
-
-
-
-            }
-
-            state.type = _type;
-            state.channel = _channel;
-        }
-        finally {
-        	// do for sure before leaving
-        }
-    }
-    // $ANTLR end "T_QUANTITY"
-
     // $ANTLR start "T_SELF"
     public final void mT_SELF() throws RecognitionException {
         try {
             int _type = T_SELF;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1103:8: ( 'self' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1103:10: 'self'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:998:8: ( 'self' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:998:10: 'self'
             {
             match("self"); if (state.failed) return ;
 
@@ -1663,8 +1519,8 @@
         try {
             int _type = T_SET;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1104:8: ( 'set' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1104:10: 'set'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:999:8: ( 'set' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:999:10: 'set'
             {
             match("set"); if (state.failed) return ;
 
@@ -1686,8 +1542,8 @@
         try {
             int _type = T_SEMICOLON;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1106:2: ( ';' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1106:4: ';'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1001:2: ( ';' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1001:4: ';'
             {
             match(';'); if (state.failed) return ;
 
@@ -1707,8 +1563,8 @@
         try {
             int _type = T_STATIC;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1107:9: ( 'static' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1107:11: 'static'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1002:10: ( 'static' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1002:12: 'static'
             {
             match("static"); if (state.failed) return ;
 
@@ -1730,8 +1586,8 @@
         try {
             int _type = T_SKIP;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1108:8: ( 'skip' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1108:10: 'skip'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1003:8: ( 'skip' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1003:10: 'skip'
             {
             match("skip"); if (state.failed) return ;
 
@@ -1753,8 +1609,8 @@
         try {
             int _type = T_BREAK;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1109:9: ( 'break' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1109:11: 'break'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1004:9: ( 'break' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1004:11: 'break'
             {
             match("break"); if (state.failed) return ;
 
@@ -1776,8 +1632,8 @@
         try {
             int _type = T_THEN;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1110:8: ( 'then' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1110:10: 'then'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1005:8: ( 'then' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1005:10: 'then'
             {
             match("then"); if (state.failed) return ;
 
@@ -1799,8 +1655,8 @@
         try {
             int _type = T_TRUE;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1111:9: ( 'true' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1111:11: 'true'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1006:10: ( 'true' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1006:12: 'true'
             {
             match("true"); if (state.failed) return ;
 
@@ -1822,8 +1678,8 @@
         try {
             int _type = T_TO;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1112:6: ( 'to' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1112:8: 'to'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1007:6: ( 'to' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1007:8: 'to'
             {
             match("to"); if (state.failed) return ;
 
@@ -1845,8 +1701,8 @@
         try {
             int _type = T_TYPES;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1113:9: ( 'types' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1113:11: 'types'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1008:9: ( 'types' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1008:11: 'types'
             {
             match("types"); if (state.failed) return ;
 
@@ -1868,8 +1724,8 @@
         try {
             int _type = T_VAR;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1114:7: ( 'var' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1114:9: 'var'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1009:7: ( 'var' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1009:9: 'var'
             {
             match("var"); if (state.failed) return ;
 
@@ -1891,8 +1747,8 @@
         try {
             int _type = T_WITH;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1115:8: ( 'with' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1115:10: 'with'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1010:8: ( 'with' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1010:10: 'with'
             {
             match("with"); if (state.failed) return ;
 
@@ -1914,8 +1770,8 @@
         try {
             int _type = T_AND;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1121:7: ( 'and' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1121:9: 'and'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1016:7: ( 'and' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1016:9: 'and'
             {
             match("and"); if (state.failed) return ;
 
@@ -1937,8 +1793,8 @@
         try {
             int _type = T_BIIMPLIES;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1123:2: ( '<=>' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1123:4: '<=>'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1018:2: ( '<=>' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1018:4: '<=>'
             {
             match("<=>"); if (state.failed) return ;
 
@@ -1960,8 +1816,8 @@
         try {
             int _type = T_IMPLIES;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1125:2: ( '=>' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1125:4: '=>'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1020:2: ( '=>' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1020:4: '=>'
             {
             match("=>"); if (state.failed) return ;
 
@@ -1983,8 +1839,8 @@
         try {
             int _type = T_NOT;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1126:7: ( 'not' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1126:9: 'not'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1021:7: ( 'not' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1021:9: 'not'
             {
             match("not"); if (state.failed) return ;
 
@@ -2006,8 +1862,8 @@
         try {
             int _type = T_NOTEQUAL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1127:11: ( '<>' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1127:13: '<>'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1022:11: ( '<>' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1022:13: '<>'
             {
             match("<>"); if (state.failed) return ;
 
@@ -2029,8 +1885,8 @@
         try {
             int _type = T_OR;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1128:6: ( 'or' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1128:8: 'or'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1023:6: ( 'or' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1023:8: 'or'
             {
             match("or"); if (state.failed) return ;
 
@@ -2052,8 +1908,8 @@
         try {
             int _type = T_ABS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1131:7: ( 'abs' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1131:9: 'abs'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1026:7: ( 'abs' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1026:9: 'abs'
             {
             match("abs"); if (state.failed) return ;
 
@@ -2075,8 +1931,8 @@
         try {
             int _type = T_DIV;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1132:7: ( '/' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1132:9: '/'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1027:7: ( '/' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1027:9: '/'
             {
             match('/'); if (state.failed) return ;
 
@@ -2096,8 +1952,8 @@
         try {
             int _type = T_GREATER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1134:2: ( '>' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1134:4: '>'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1029:2: ( '>' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1029:4: '>'
             {
             match('>'); if (state.failed) return ;
 
@@ -2117,8 +1973,8 @@
         try {
             int _type = T_GREATEREQUAL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1136:2: ( '>=' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1136:4: '>='
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1031:2: ( '>=' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1031:4: '>='
             {
             match(">="); if (state.failed) return ;
 
@@ -2140,8 +1996,8 @@
         try {
             int _type = T_IDIV;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1137:8: ( 'div' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1137:10: 'div'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1032:8: ( 'div' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1032:10: 'div'
             {
             match("div"); if (state.failed) return ;
 
@@ -2163,8 +2019,8 @@
         try {
             int _type = T_LESS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1138:8: ( '<' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1138:10: '<'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1033:8: ( '<' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1033:10: '<'
             {
             match('<'); if (state.failed) return ;
 
@@ -2184,8 +2040,8 @@
         try {
             int _type = T_LESSEQUAL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1140:2: ( '<=' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1140:4: '<='
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1035:2: ( '<=' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1035:4: '<='
             {
             match("<="); if (state.failed) return ;
 
@@ -2207,8 +2063,8 @@
         try {
             int _type = T_MOD;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1141:7: ( 'mod' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1141:9: 'mod'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1036:7: ( 'mod' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1036:9: 'mod'
             {
             match("mod"); if (state.failed) return ;
 
@@ -2230,8 +2086,8 @@
         try {
             int _type = T_POW;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1142:7: ( '**' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1142:9: '**'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1037:7: ( '**' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1037:9: '**'
             {
             match("**"); if (state.failed) return ;
 
@@ -2253,8 +2109,8 @@
         try {
             int _type = T_PROD;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1143:8: ( '*' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1143:10: '*'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1038:8: ( '*' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1038:10: '*'
             {
             match('*'); if (state.failed) return ;
 
@@ -2274,8 +2130,8 @@
         try {
             int _type = T_DERIV;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1144:9: ( 'dt' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1144:11: 'dt'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1039:9: ( 'dt' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1039:11: 'dt'
             {
             match("dt"); if (state.failed) return ;
 
@@ -2297,8 +2153,8 @@
         try {
             int _type = T_CARD;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1147:8: ( 'card' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1147:10: 'card'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1042:8: ( 'card' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1042:10: 'card'
             {
             match("card"); if (state.failed) return ;
 
@@ -2320,8 +2176,8 @@
         try {
             int _type = T_CONC;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1148:8: ( '^' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1148:10: '^'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1043:8: ( '^' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1043:10: '^'
             {
             match('^'); if (state.failed) return ;
 
@@ -2341,8 +2197,8 @@
         try {
             int _type = T_DCONC;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1149:9: ( 'conc' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1149:11: 'conc'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1044:9: ( 'conc' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1044:11: 'conc'
             {
             match("conc"); if (state.failed) return ;
 
@@ -2364,8 +2220,8 @@
         try {
             int _type = T_DIFF;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1150:8: ( '\\\\' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1150:10: '\\\\'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1045:8: ( '\\\\' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1045:10: '\\\\'
             {
             match('\\'); if (state.failed) return ;
 
@@ -2385,8 +2241,8 @@
         try {
             int _type = T_DINTER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1151:9: ( 'dinter' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1151:11: 'dinter'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1046:10: ( 'dinter' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1046:12: 'dinter'
             {
             match("dinter"); if (state.failed) return ;
 
@@ -2408,8 +2264,8 @@
         try {
             int _type = T_DUNION;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1152:9: ( 'dunion' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1152:11: 'dunion'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1047:10: ( 'dunion' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1047:12: 'dunion'
             {
             match("dunion"); if (state.failed) return ;
 
@@ -2431,8 +2287,8 @@
         try {
             int _type = T_ELEMS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1153:9: ( 'elems' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1153:11: 'elems'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1048:9: ( 'elems' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1048:11: 'elems'
             {
             match("elems"); if (state.failed) return ;
 
@@ -2454,8 +2310,8 @@
         try {
             int _type = T_HEAD;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1154:8: ( 'hd' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1154:10: 'hd'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1049:8: ( 'hd' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1049:10: 'hd'
             {
             match("hd"); if (state.failed) return ;
 
@@ -2477,8 +2333,8 @@
         try {
             int _type = T_INDS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1155:8: ( 'inds' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1155:10: 'inds'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1050:8: ( 'inds' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1050:10: 'inds'
             {
             match("inds"); if (state.failed) return ;
 
@@ -2500,8 +2356,8 @@
         try {
             int _type = T_INTER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1156:9: ( 'inter' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1156:11: 'inter'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1051:9: ( 'inter' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1051:11: 'inter'
             {
             match("inter"); if (state.failed) return ;
 
@@ -2523,8 +2379,8 @@
         try {
             int _type = T_LEN;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1157:7: ( 'len' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1157:9: 'len'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1052:7: ( 'len' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1052:9: 'len'
             {
             match("len"); if (state.failed) return ;
 
@@ -2546,8 +2402,8 @@
         try {
             int _type = T_SEQMOD_MAPOVERRIDE;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1159:2: ( '++' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1159:4: '++'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1054:2: ( '++' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1054:4: '++'
             {
             match("++"); if (state.failed) return ;
 
@@ -2569,8 +2425,8 @@
         try {
             int _type = T_SUBSET;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1160:9: ( 'subset' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1160:11: 'subset'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1055:10: ( 'subset' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1055:12: 'subset'
             {
             match("subset"); if (state.failed) return ;
 
@@ -2592,8 +2448,8 @@
         try {
             int _type = T_TAIL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1161:8: ( 'tl' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1161:10: 'tl'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1056:8: ( 'tl' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1056:10: 'tl'
             {
             match("tl"); if (state.failed) return ;
 
@@ -2615,8 +2471,8 @@
         try {
             int _type = T_UNION;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1162:9: ( 'union' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1162:11: 'union'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1057:9: ( 'union' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1057:11: 'union'
             {
             match("union"); if (state.failed) return ;
 
@@ -2638,8 +2494,8 @@
         try {
             int _type = T_FOLDLR;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1164:2: ( ':>:' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1164:4: ':>:'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1059:2: ( ':>:' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1059:4: ':>:'
             {
             match(":>:"); if (state.failed) return ;
 
@@ -2661,8 +2517,8 @@
         try {
             int _type = T_FOLDRL;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1166:2: ( ':<:' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1166:4: ':<:'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1061:2: ( ':<:' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1061:4: ':<:'
             {
             match(":<:"); if (state.failed) return ;
 
@@ -2684,8 +2540,8 @@
         try {
             int _type = T_DOM;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1170:7: ( 'dom' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1170:9: 'dom'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1065:7: ( 'dom' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1065:9: 'dom'
             {
             match("dom"); if (state.failed) return ;
 
@@ -2707,8 +2563,8 @@
         try {
             int _type = T_DOMRESBY;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1172:2: ( '<-:' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1172:4: '<-:'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1067:2: ( '<-:' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1067:4: '<-:'
             {
             match("<-:"); if (state.failed) return ;
 
@@ -2730,8 +2586,8 @@
         try {
             int _type = T_DOMRESTO;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1174:2: ( '<:' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1174:4: '<:'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1069:2: ( '<:' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1069:4: '<:'
             {
             match("<:"); if (state.failed) return ;
 
@@ -2753,8 +2609,8 @@
         try {
             int _type = T_RNG;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1175:7: ( 'rng' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1175:9: 'rng'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1070:7: ( 'rng' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1070:9: 'rng'
             {
             match("rng"); if (state.failed) return ;
 
@@ -2776,8 +2632,8 @@
         try {
             int _type = T_RNGRESBY;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1177:2: ( ':->' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1177:4: ':->'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1072:2: ( ':->' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1072:4: ':->'
             {
             match(":->"); if (state.failed) return ;
 
@@ -2799,8 +2655,8 @@
         try {
             int _type = T_RNGRESTO;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1179:2: ( ':>' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1179:4: ':>'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1074:2: ( ':>' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1074:4: ':>'
             {
             match(":>"); if (state.failed) return ;
 
@@ -2822,8 +2678,8 @@
         try {
             int _type = T_MERGE;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1180:9: ( 'merge' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1180:11: 'merge'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1075:9: ( 'merge' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1075:11: 'merge'
             {
             match("merge"); if (state.failed) return ;
 
@@ -2845,8 +2701,8 @@
         try {
             int _type = T_MUNION;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1181:9: ( 'munion' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1181:11: 'munion'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1076:10: ( 'munion' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1076:12: 'munion'
             {
             match("munion"); if (state.failed) return ;
 
@@ -2868,8 +2724,8 @@
         try {
             int _type = T_CONSTS;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1183:9: ( 'consts' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1183:11: 'consts'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1078:10: ( 'consts' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1078:12: 'consts'
             {
             match("consts"); if (state.failed) return ;
 
@@ -2891,10 +2747,10 @@
         try {
             int _type = T_INFTY;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1187:9: ( ( T_MINUS | T_SUM )? 'inf' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1187:11: ( T_MINUS | T_SUM )? 'inf'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1082:9: ( ( T_MINUS | T_SUM )? 'inf' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1082:11: ( T_MINUS | T_SUM )? 'inf'
             {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1187:11: ( T_MINUS | T_SUM )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1082:11: ( T_MINUS | T_SUM )?
             int alt5=2;
             int LA5_0 = input.LA(1);
 
@@ -2903,7 +2759,7 @@
             }
             switch (alt5) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
                     {
                     if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
                         input.consume();
@@ -2941,8 +2797,8 @@
     // $ANTLR start "T_INTNUMBER"
     public final void mT_INTNUMBER() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1194:2: ()
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1194:4: 
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1089:2: ()
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1089:4: 
             {
             }
 
@@ -2957,8 +2813,8 @@
     // $ANTLR start "T_FLOATNUMBER"
     public final void mT_FLOATNUMBER() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1196:2: ()
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1196:4: 
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1091:2: ()
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1091:4: 
             {
             }
 
@@ -2973,8 +2829,8 @@
     // $ANTLR start "T_RANGETO"
     public final void mT_RANGETO() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1198:2: ()
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1198:4: 
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1093:2: ()
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1093:4: 
             {
             }
 
@@ -2991,7 +2847,7 @@
         try {
             int _type = FLOAT_OR_INT_OR_RANGE;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1201:2: ( ( T_MINUS | T_SUM )? ( T_DIGIT )+ ( ( T_POINT T_POINT )=>| ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )? |) | T_POINT ( T_POINT |) | T_MINUS | T_SUM )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1096:2: ( ( T_MINUS | T_SUM )? ( T_DIGIT )+ ( ( T_POINT T_POINT )=>| ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )? |) | T_POINT ( T_POINT |) | T_MINUS | T_SUM )
             int alt14=4;
             switch ( input.LA(1) ) {
             case '-':
@@ -3048,9 +2904,9 @@
 
             switch (alt14) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1201:5: ( T_MINUS | T_SUM )? ( T_DIGIT )+ ( ( T_POINT T_POINT )=>| ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )? |)
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1096:5: ( T_MINUS | T_SUM )? ( T_DIGIT )+ ( ( T_POINT T_POINT )=>| ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )? |)
                     {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1201:5: ( T_MINUS | T_SUM )?
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1096:5: ( T_MINUS | T_SUM )?
                     int alt6=2;
                     int LA6_0 = input.LA(1);
 
@@ -3059,7 +2915,7 @@
                     }
                     switch (alt6) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
                             {
                             if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
                                 input.consume();
@@ -3079,7 +2935,7 @@
                     }
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1201:22: ( T_DIGIT )+
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1096:22: ( T_DIGIT )+
                     int cnt7=0;
                     loop7:
                     do {
@@ -3093,7 +2949,7 @@
 
                         switch (alt7) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
                     	    {
                     	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
                     	        input.consume();
@@ -3121,7 +2977,7 @@
                     } while (true);
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1202:3: ( ( T_POINT T_POINT )=>| ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )? |)
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1097:3: ( ( T_POINT T_POINT )=>| ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )? |)
                     int alt12=3;
                     int LA12_0 = input.LA(1);
 
@@ -3144,7 +3000,7 @@
                     }
                     switch (alt12) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1203:5: ( T_POINT T_POINT )=>
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1098:5: ( T_POINT T_POINT )=>
                             {
                             if ( state.backtracking==0 ) {_type=T_INTNUMBER;}
 
@@ -3151,12 +3007,12 @@
                             }
                             break;
                         case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:6: ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )?
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:6: ( T_POINT T_DIGIT )=> T_POINT ( T_DIGIT )+ ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )?
                             {
                             mT_POINT(); if (state.failed) return ;
 
 
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:35: ( T_DIGIT )+
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:35: ( T_DIGIT )+
                             int cnt8=0;
                             loop8:
                             do {
@@ -3170,7 +3026,7 @@
 
                                 switch (alt8) {
                             	case 1 :
-                            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+                            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
                             	    {
                             	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
                             	        input.consume();
@@ -3198,7 +3054,7 @@
                             } while (true);
 
 
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:44: ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )?
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:44: ( ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+ )?
                             int alt11=2;
                             int LA11_0 = input.LA(1);
 
@@ -3207,7 +3063,7 @@
                             }
                             switch (alt11) {
                                 case 1 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:45: ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:45: ( 'e' | 'E' ) ( T_MINUS | T_SUM )? ( T_DIGIT )+
                                     {
                                     if ( input.LA(1)=='E'||input.LA(1)=='e' ) {
                                         input.consume();
@@ -3221,7 +3077,7 @@
                                     }
 
 
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:55: ( T_MINUS | T_SUM )?
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:55: ( T_MINUS | T_SUM )?
                                     int alt9=2;
                                     int LA9_0 = input.LA(1);
 
@@ -3230,7 +3086,7 @@
                                     }
                                     switch (alt9) {
                                         case 1 :
-                                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+                                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
                                             {
                                             if ( input.LA(1)=='+'||input.LA(1)=='-' ) {
                                                 input.consume();
@@ -3250,7 +3106,7 @@
                                     }
 
 
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:72: ( T_DIGIT )+
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:72: ( T_DIGIT )+
                                     int cnt10=0;
                                     loop10:
                                     do {
@@ -3264,7 +3120,7 @@
 
                                         switch (alt10) {
                                     	case 1 :
-                                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+                                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
                                     	    {
                                     	    if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
                                     	        input.consume();
@@ -3303,7 +3159,7 @@
                             }
                             break;
                         case 3 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1205:6: 
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1100:6: 
                             {
                             if ( state.backtracking==0 ) {_type=T_INTNUMBER;}
 
@@ -3316,12 +3172,12 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1207:4: T_POINT ( T_POINT |)
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1102:4: T_POINT ( T_POINT |)
                     {
                     mT_POINT(); if (state.failed) return ;
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1208:3: ( T_POINT |)
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1103:3: ( T_POINT |)
                     int alt13=2;
                     int LA13_0 = input.LA(1);
 
@@ -3333,7 +3189,7 @@
                     }
                     switch (alt13) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1209:5: T_POINT
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1104:5: T_POINT
                             {
                             mT_POINT(); if (state.failed) return ;
 
@@ -3343,7 +3199,7 @@
                             }
                             break;
                         case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1210:13: 
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1105:13: 
                             {
                             if ( state.backtracking==0 ) {_type=T_POINT;}
 
@@ -3356,7 +3212,7 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1212:4: T_MINUS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1107:4: T_MINUS
                     {
                     mT_MINUS(); if (state.failed) return ;
 
@@ -3366,7 +3222,7 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1213:4: T_SUM
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1108:4: T_SUM
                     {
                     mT_SUM(); if (state.failed) return ;
 
@@ -3389,8 +3245,8 @@
     // $ANTLR start "T_MINUS"
     public final void mT_MINUS() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1218:17: ( '-' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1218:19: '-'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1113:17: ( '-' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1113:19: '-'
             {
             match('-'); if (state.failed) return ;
 
@@ -3407,8 +3263,8 @@
     // $ANTLR start "T_SUM"
     public final void mT_SUM() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1219:16: ( '+' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1219:18: '+'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1114:16: ( '+' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1114:18: '+'
             {
             match('+'); if (state.failed) return ;
 
@@ -3425,8 +3281,8 @@
     // $ANTLR start "T_POINT"
     public final void mT_POINT() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1220:17: ( '.' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1220:19: '.'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1115:17: ( '.' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1115:19: '.'
             {
             match('.'); if (state.failed) return ;
 
@@ -3445,13 +3301,13 @@
         try {
             int _type = T_IDENTIFIER;
             int _channel = DEFAULT_TOKEN_CHANNEL;
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1226:2: ( T_LETTER ( T_LETTER | T_DIGIT )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1226:4: T_LETTER ( T_LETTER | T_DIGIT )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1121:2: ( T_LETTER ( T_LETTER | T_DIGIT )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1121:4: T_LETTER ( T_LETTER | T_DIGIT )*
             {
             mT_LETTER(); if (state.failed) return ;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1226:13: ( T_LETTER | T_DIGIT )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1121:13: ( T_LETTER | T_DIGIT )*
             loop15:
             do {
                 int alt15=2;
@@ -3464,7 +3320,7 @@
 
                 switch (alt15) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
             	    {
             	    if ( input.LA(1)=='$'||(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.consume();
@@ -3501,8 +3357,8 @@
     // $ANTLR start "T_LETTER"
     public final void mT_LETTER() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1235:2: ( '$' | 'A' .. 'Z' | 'a' .. 'z' | '_' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1130:2: ( '$' | 'A' .. 'Z' | 'a' .. 'z' | '_' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
             {
             if ( input.LA(1)=='$'||(input.LA(1) >= 'A' && input.LA(1) <= 'Z')||input.LA(1)=='_'||(input.LA(1) >= 'a' && input.LA(1) <= 'z') ) {
                 input.consume();
@@ -3529,8 +3385,8 @@
     // $ANTLR start "T_DIGIT"
     public final void mT_DIGIT() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1242:8: ( '0' .. '9' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1137:8: ( '0' .. '9' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:
             {
             if ( (input.LA(1) >= '0' && input.LA(1) <= '9') ) {
                 input.consume();
@@ -3555,933 +3411,885 @@
     // $ANTLR end "T_DIGIT"
 
     public void mTokens() throws RecognitionException {
-        // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:8: ( T__118 | T__119 | T__120 | T__121 | T__122 | T__123 | T__124 | T__125 | T__126 | T__127 | T_WS | T_COMMENT | LINE_COMMENT | T_PRIMED | T_STRINGLITERAL | T_ABORT | T_ACTIONS | T_ASSIGNMENT | T_AUTOCONS | T_BAR | T_BOOL | T_CBRL | T_CBRR | T_COLON | T_COMMA | T_CONT | T_CHAR | T_CTRL | T_SYSTEM | T_DO | T_ELSE | T_END | T_EQUAL | T_EXISTS | T_FLOAT | T_FORALL | T_FALSE | T_IF | T_IN | T_INT | T_KILL | T_LIST | T_LPAREN | T_LSQPAREN | T_MAP | T_MAPS | T_METHODS | T_NEW | T_NIL | T_NONDET | T_OBS | T_OD | T_OF | T_PRIO | T_REQUIRES | T_RPAREN | T_RSQPAREN | T_QUANTITY | T_SELF | T_SET | T_SEMICOLON | T_STATIC | T_SKIP | T_BREAK | T_THEN | T_TRUE | T_TO | T_TYPES | T_VAR | T_WITH | T_AND | T_BIIMPLIES | T_IMPLIES | T_NOT | T_NOTEQUAL | T_OR | T_ABS | T_DIV | T_GREATER | T_GREATEREQUAL | T_IDIV | T_LESS | T_LESSEQUAL | T_MOD | T_POW | T_PROD | T_DERIV | T_CARD | T_CONC | T_DCONC | T_DIFF | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_INTER | T_LEN | T_SEQMOD_MAPOVERRIDE | T_SUBSET | T_TAIL | T_UNION | T_FOLDLR | T_FOLDRL | T_DOM | T_DOMRESBY | T_DOMRESTO | T_RNG | T_RNGRESBY | T_RNGRESTO | T_MERGE | T_MUNION | T_CONSTS | T_INFTY | FLOAT_OR_INT_OR_RANGE | T_IDENTIFIER )
-        int alt16=116;
+        // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:8: ( T__116 | T__117 | T__118 | T__119 | T__120 | T__121 | T_WS | T_COMMENT | LINE_COMMENT | T_PRIMED | T_STRINGLITERAL | T_ABORT | T_ACTIONS | T_ASSIGNMENT | T_AUTOCONS | T_BAR | T_BOOL | T_CBRL | T_CBRR | T_COLON | T_COMMA | T_CHAR | T_CTRL | T_SYSTEM | T_DO | T_ELSE | T_END | T_EQUAL | T_EXISTS | T_FLOAT | T_FORALL | T_FALSE | T_IF | T_IN | T_INT | T_KILL | T_LIST | T_LPAREN | T_LSQPAREN | T_MAP | T_MAPS | T_METHODS | T_NEW | T_NIL | T_NONDET | T_OBS | T_OD | T_OF | T_PRIO | T_REQUIRES | T_RPAREN | T_RSQPAREN | T_SELF | T_SET | T_SEMICOLON | T_STATIC | T_SKIP | T_BREAK | T_THEN | T_TRUE | T_TO | T_TYPES | T_VAR | T_WITH | T_AND | T_BIIMPLIES | T_IMPLIES | T_NOT | T_NOTEQUAL | T_OR | T_ABS | T_DIV | T_GREATER | T_GREATEREQUAL | T_IDIV | T_LESS | T_LESSEQUAL | T_MOD | T_POW | T_PROD | T_DERIV | T_CARD | T_CONC | T_DCONC | T_DIFF | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_INTER | T_LEN | T_SEQMOD_MAPOVERRIDE | T_SUBSET | T_TAIL | T_UNION | T_FOLDLR | T_FOLDRL | T_DOM | T_DOMRESBY | T_DOMRESTO | T_RNG | T_RNGRESBY | T_RNGRESTO | T_MERGE | T_MUNION | T_CONSTS | T_INFTY | FLOAT_OR_INT_OR_RANGE | T_IDENTIFIER )
+        int alt16=110;
         alt16 = dfa16.predict(input);
         switch (alt16) {
             case 1 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:10: T__118
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:10: T__116
                 {
-                mT__118(); if (state.failed) return ;
+                mT__116(); if (state.failed) return ;
 
 
                 }
                 break;
             case 2 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:17: T__119
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:17: T__117
                 {
-                mT__119(); if (state.failed) return ;
+                mT__117(); if (state.failed) return ;
 
 
                 }
                 break;
             case 3 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:24: T__120
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:24: T__118
                 {
-                mT__120(); if (state.failed) return ;
+                mT__118(); if (state.failed) return ;
 
 
                 }
                 break;
             case 4 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:31: T__121
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:31: T__119
                 {
-                mT__121(); if (state.failed) return ;
+                mT__119(); if (state.failed) return ;
 
 
                 }
                 break;
             case 5 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:38: T__122
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:38: T__120
                 {
-                mT__122(); if (state.failed) return ;
+                mT__120(); if (state.failed) return ;
 
 
                 }
                 break;
             case 6 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:45: T__123
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:45: T__121
                 {
-                mT__123(); if (state.failed) return ;
+                mT__121(); if (state.failed) return ;
 
 
                 }
                 break;
             case 7 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:52: T__124
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:52: T_WS
                 {
-                mT__124(); if (state.failed) return ;
+                mT_WS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 8 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:59: T__125
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:57: T_COMMENT
                 {
-                mT__125(); if (state.failed) return ;
+                mT_COMMENT(); if (state.failed) return ;
 
 
                 }
                 break;
             case 9 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:66: T__126
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:67: LINE_COMMENT
                 {
-                mT__126(); if (state.failed) return ;
+                mLINE_COMMENT(); if (state.failed) return ;
 
 
                 }
                 break;
             case 10 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:73: T__127
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:80: T_PRIMED
                 {
-                mT__127(); if (state.failed) return ;
+                mT_PRIMED(); if (state.failed) return ;
 
 
                 }
                 break;
             case 11 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:80: T_WS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:89: T_STRINGLITERAL
                 {
-                mT_WS(); if (state.failed) return ;
+                mT_STRINGLITERAL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 12 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:85: T_COMMENT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:105: T_ABORT
                 {
-                mT_COMMENT(); if (state.failed) return ;
+                mT_ABORT(); if (state.failed) return ;
 
 
                 }
                 break;
             case 13 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:95: LINE_COMMENT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:113: T_ACTIONS
                 {
-                mLINE_COMMENT(); if (state.failed) return ;
+                mT_ACTIONS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 14 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:108: T_PRIMED
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:123: T_ASSIGNMENT
                 {
-                mT_PRIMED(); if (state.failed) return ;
+                mT_ASSIGNMENT(); if (state.failed) return ;
 
 
                 }
                 break;
             case 15 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:117: T_STRINGLITERAL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:136: T_AUTOCONS
                 {
-                mT_STRINGLITERAL(); if (state.failed) return ;
+                mT_AUTOCONS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 16 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:133: T_ABORT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:147: T_BAR
                 {
-                mT_ABORT(); if (state.failed) return ;
+                mT_BAR(); if (state.failed) return ;
 
 
                 }
                 break;
             case 17 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:141: T_ACTIONS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:153: T_BOOL
                 {
-                mT_ACTIONS(); if (state.failed) return ;
+                mT_BOOL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 18 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:151: T_ASSIGNMENT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:160: T_CBRL
                 {
-                mT_ASSIGNMENT(); if (state.failed) return ;
+                mT_CBRL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 19 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:164: T_AUTOCONS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:167: T_CBRR
                 {
-                mT_AUTOCONS(); if (state.failed) return ;
+                mT_CBRR(); if (state.failed) return ;
 
 
                 }
                 break;
             case 20 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:175: T_BAR
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:174: T_COLON
                 {
-                mT_BAR(); if (state.failed) return ;
+                mT_COLON(); if (state.failed) return ;
 
 
                 }
                 break;
             case 21 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:181: T_BOOL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:182: T_COMMA
                 {
-                mT_BOOL(); if (state.failed) return ;
+                mT_COMMA(); if (state.failed) return ;
 
 
                 }
                 break;
             case 22 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:188: T_CBRL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:190: T_CHAR
                 {
-                mT_CBRL(); if (state.failed) return ;
+                mT_CHAR(); if (state.failed) return ;
 
 
                 }
                 break;
             case 23 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:195: T_CBRR
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:197: T_CTRL
                 {
-                mT_CBRR(); if (state.failed) return ;
+                mT_CTRL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 24 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:202: T_COLON
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:204: T_SYSTEM
                 {
-                mT_COLON(); if (state.failed) return ;
+                mT_SYSTEM(); if (state.failed) return ;
 
 
                 }
                 break;
             case 25 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:210: T_COMMA
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:213: T_DO
                 {
-                mT_COMMA(); if (state.failed) return ;
+                mT_DO(); if (state.failed) return ;
 
 
                 }
                 break;
             case 26 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:218: T_CONT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:218: T_ELSE
                 {
-                mT_CONT(); if (state.failed) return ;
+                mT_ELSE(); if (state.failed) return ;
 
 
                 }
                 break;
             case 27 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:225: T_CHAR
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:225: T_END
                 {
-                mT_CHAR(); if (state.failed) return ;
+                mT_END(); if (state.failed) return ;
 
 
                 }
                 break;
             case 28 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:232: T_CTRL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:231: T_EQUAL
                 {
-                mT_CTRL(); if (state.failed) return ;
+                mT_EQUAL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 29 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:239: T_SYSTEM
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:239: T_EXISTS
                 {
-                mT_SYSTEM(); if (state.failed) return ;
+                mT_EXISTS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 30 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:248: T_DO
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:248: T_FLOAT
                 {
-                mT_DO(); if (state.failed) return ;
+                mT_FLOAT(); if (state.failed) return ;
 
 
                 }
                 break;
             case 31 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:253: T_ELSE
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:256: T_FORALL
                 {
-                mT_ELSE(); if (state.failed) return ;
+                mT_FORALL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 32 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:260: T_END
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:265: T_FALSE
                 {
-                mT_END(); if (state.failed) return ;
+                mT_FALSE(); if (state.failed) return ;
 
 
                 }
                 break;
             case 33 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:266: T_EQUAL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:273: T_IF
                 {
-                mT_EQUAL(); if (state.failed) return ;
+                mT_IF(); if (state.failed) return ;
 
 
                 }
                 break;
             case 34 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:274: T_EXISTS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:278: T_IN
                 {
-                mT_EXISTS(); if (state.failed) return ;
+                mT_IN(); if (state.failed) return ;
 
 
                 }
                 break;
             case 35 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:283: T_FLOAT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:283: T_INT
                 {
-                mT_FLOAT(); if (state.failed) return ;
+                mT_INT(); if (state.failed) return ;
 
 
                 }
                 break;
             case 36 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:291: T_FORALL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:289: T_KILL
                 {
-                mT_FORALL(); if (state.failed) return ;
+                mT_KILL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 37 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:300: T_FALSE
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:296: T_LIST
                 {
-                mT_FALSE(); if (state.failed) return ;
+                mT_LIST(); if (state.failed) return ;
 
 
                 }
                 break;
             case 38 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:308: T_IF
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:303: T_LPAREN
                 {
-                mT_IF(); if (state.failed) return ;
+                mT_LPAREN(); if (state.failed) return ;
 
 
                 }
                 break;
             case 39 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:313: T_IN
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:312: T_LSQPAREN
                 {
-                mT_IN(); if (state.failed) return ;
+                mT_LSQPAREN(); if (state.failed) return ;
 
 
                 }
                 break;
             case 40 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:318: T_INT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:323: T_MAP
                 {
-                mT_INT(); if (state.failed) return ;
+                mT_MAP(); if (state.failed) return ;
 
 
                 }
                 break;
             case 41 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:324: T_KILL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:329: T_MAPS
                 {
-                mT_KILL(); if (state.failed) return ;
+                mT_MAPS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 42 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:331: T_LIST
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:336: T_METHODS
                 {
-                mT_LIST(); if (state.failed) return ;
+                mT_METHODS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 43 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:338: T_LPAREN
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:346: T_NEW
                 {
-                mT_LPAREN(); if (state.failed) return ;
+                mT_NEW(); if (state.failed) return ;
 
 
                 }
                 break;
             case 44 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:347: T_LSQPAREN
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:352: T_NIL
                 {
-                mT_LSQPAREN(); if (state.failed) return ;
+                mT_NIL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 45 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:358: T_MAP
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:358: T_NONDET
                 {
-                mT_MAP(); if (state.failed) return ;
+                mT_NONDET(); if (state.failed) return ;
 
 
                 }
                 break;
             case 46 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:364: T_MAPS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:367: T_OBS
                 {
-                mT_MAPS(); if (state.failed) return ;
+                mT_OBS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 47 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:371: T_METHODS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:373: T_OD
                 {
-                mT_METHODS(); if (state.failed) return ;
+                mT_OD(); if (state.failed) return ;
 
 
                 }
                 break;
             case 48 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:381: T_NEW
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:378: T_OF
                 {
-                mT_NEW(); if (state.failed) return ;
+                mT_OF(); if (state.failed) return ;
 
 
                 }
                 break;
             case 49 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:387: T_NIL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:383: T_PRIO
                 {
-                mT_NIL(); if (state.failed) return ;
+                mT_PRIO(); if (state.failed) return ;
 
 
                 }
                 break;
             case 50 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:393: T_NONDET
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:390: T_REQUIRES
                 {
-                mT_NONDET(); if (state.failed) return ;
+                mT_REQUIRES(); if (state.failed) return ;
 
 
                 }
                 break;
             case 51 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:402: T_OBS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:401: T_RPAREN
                 {
-                mT_OBS(); if (state.failed) return ;
+                mT_RPAREN(); if (state.failed) return ;
 
 
                 }
                 break;
             case 52 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:408: T_OD
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:410: T_RSQPAREN
                 {
-                mT_OD(); if (state.failed) return ;
+                mT_RSQPAREN(); if (state.failed) return ;
 
 
                 }
                 break;
             case 53 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:413: T_OF
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:421: T_SELF
                 {
-                mT_OF(); if (state.failed) return ;
+                mT_SELF(); if (state.failed) return ;
 
 
                 }
                 break;
             case 54 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:418: T_PRIO
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:428: T_SET
                 {
-                mT_PRIO(); if (state.failed) return ;
+                mT_SET(); if (state.failed) return ;
 
 
                 }
                 break;
             case 55 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:425: T_REQUIRES
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:434: T_SEMICOLON
                 {
-                mT_REQUIRES(); if (state.failed) return ;
+                mT_SEMICOLON(); if (state.failed) return ;
 
 
                 }
                 break;
             case 56 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:436: T_RPAREN
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:446: T_STATIC
                 {
-                mT_RPAREN(); if (state.failed) return ;
+                mT_STATIC(); if (state.failed) return ;
 
 
                 }
                 break;
             case 57 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:445: T_RSQPAREN
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:455: T_SKIP
                 {
-                mT_RSQPAREN(); if (state.failed) return ;
+                mT_SKIP(); if (state.failed) return ;
 
 
                 }
                 break;
             case 58 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:456: T_QUANTITY
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:462: T_BREAK
                 {
-                mT_QUANTITY(); if (state.failed) return ;
+                mT_BREAK(); if (state.failed) return ;
 
 
                 }
                 break;
             case 59 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:467: T_SELF
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:470: T_THEN
                 {
-                mT_SELF(); if (state.failed) return ;
+                mT_THEN(); if (state.failed) return ;
 
 
                 }
                 break;
             case 60 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:474: T_SET
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:477: T_TRUE
                 {
-                mT_SET(); if (state.failed) return ;
+                mT_TRUE(); if (state.failed) return ;
 
 
                 }
                 break;
             case 61 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:480: T_SEMICOLON
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:484: T_TO
                 {
-                mT_SEMICOLON(); if (state.failed) return ;
+                mT_TO(); if (state.failed) return ;
 
 
                 }
                 break;
             case 62 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:492: T_STATIC
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:489: T_TYPES
                 {
-                mT_STATIC(); if (state.failed) return ;
+                mT_TYPES(); if (state.failed) return ;
 
 
                 }
                 break;
             case 63 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:501: T_SKIP
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:497: T_VAR
                 {
-                mT_SKIP(); if (state.failed) return ;
+                mT_VAR(); if (state.failed) return ;
 
 
                 }
                 break;
             case 64 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:508: T_BREAK
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:503: T_WITH
                 {
-                mT_BREAK(); if (state.failed) return ;
+                mT_WITH(); if (state.failed) return ;
 
 
                 }
                 break;
             case 65 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:516: T_THEN
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:510: T_AND
                 {
-                mT_THEN(); if (state.failed) return ;
+                mT_AND(); if (state.failed) return ;
 
 
                 }
                 break;
             case 66 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:523: T_TRUE
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:516: T_BIIMPLIES
                 {
-                mT_TRUE(); if (state.failed) return ;
+                mT_BIIMPLIES(); if (state.failed) return ;
 
 
                 }
                 break;
             case 67 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:530: T_TO
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:528: T_IMPLIES
                 {
-                mT_TO(); if (state.failed) return ;
+                mT_IMPLIES(); if (state.failed) return ;
 
 
                 }
                 break;
             case 68 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:535: T_TYPES
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:538: T_NOT
                 {
-                mT_TYPES(); if (state.failed) return ;
+                mT_NOT(); if (state.failed) return ;
 
 
                 }
                 break;
             case 69 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:543: T_VAR
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:544: T_NOTEQUAL
                 {
-                mT_VAR(); if (state.failed) return ;
+                mT_NOTEQUAL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 70 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:549: T_WITH
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:555: T_OR
                 {
-                mT_WITH(); if (state.failed) return ;
+                mT_OR(); if (state.failed) return ;
 
 
                 }
                 break;
             case 71 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:556: T_AND
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:560: T_ABS
                 {
-                mT_AND(); if (state.failed) return ;
+                mT_ABS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 72 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:562: T_BIIMPLIES
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:566: T_DIV
                 {
-                mT_BIIMPLIES(); if (state.failed) return ;
+                mT_DIV(); if (state.failed) return ;
 
 
                 }
                 break;
             case 73 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:574: T_IMPLIES
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:572: T_GREATER
                 {
-                mT_IMPLIES(); if (state.failed) return ;
+                mT_GREATER(); if (state.failed) return ;
 
 
                 }
                 break;
             case 74 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:584: T_NOT
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:582: T_GREATEREQUAL
                 {
-                mT_NOT(); if (state.failed) return ;
+                mT_GREATEREQUAL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 75 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:590: T_NOTEQUAL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:597: T_IDIV
                 {
-                mT_NOTEQUAL(); if (state.failed) return ;
+                mT_IDIV(); if (state.failed) return ;
 
 
                 }
                 break;
             case 76 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:601: T_OR
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:604: T_LESS
                 {
-                mT_OR(); if (state.failed) return ;
+                mT_LESS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 77 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:606: T_ABS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:611: T_LESSEQUAL
                 {
-                mT_ABS(); if (state.failed) return ;
+                mT_LESSEQUAL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 78 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:612: T_DIV
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:623: T_MOD
                 {
-                mT_DIV(); if (state.failed) return ;
+                mT_MOD(); if (state.failed) return ;
 
 
                 }
                 break;
             case 79 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:618: T_GREATER
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:629: T_POW
                 {
-                mT_GREATER(); if (state.failed) return ;
+                mT_POW(); if (state.failed) return ;
 
 
                 }
                 break;
             case 80 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:628: T_GREATEREQUAL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:635: T_PROD
                 {
-                mT_GREATEREQUAL(); if (state.failed) return ;
+                mT_PROD(); if (state.failed) return ;
 
 
                 }
                 break;
             case 81 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:643: T_IDIV
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:642: T_DERIV
                 {
-                mT_IDIV(); if (state.failed) return ;
+                mT_DERIV(); if (state.failed) return ;
 
 
                 }
                 break;
             case 82 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:650: T_LESS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:650: T_CARD
                 {
-                mT_LESS(); if (state.failed) return ;
+                mT_CARD(); if (state.failed) return ;
 
 
                 }
                 break;
             case 83 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:657: T_LESSEQUAL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:657: T_CONC
                 {
-                mT_LESSEQUAL(); if (state.failed) return ;
+                mT_CONC(); if (state.failed) return ;
 
 
                 }
                 break;
             case 84 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:669: T_MOD
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:664: T_DCONC
                 {
-                mT_MOD(); if (state.failed) return ;
+                mT_DCONC(); if (state.failed) return ;
 
 
                 }
                 break;
             case 85 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:675: T_POW
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:672: T_DIFF
                 {
-                mT_POW(); if (state.failed) return ;
+                mT_DIFF(); if (state.failed) return ;
 
 
                 }
                 break;
             case 86 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:681: T_PROD
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:679: T_DINTER
                 {
-                mT_PROD(); if (state.failed) return ;
+                mT_DINTER(); if (state.failed) return ;
 
 
                 }
                 break;
             case 87 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:688: T_DERIV
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:688: T_DUNION
                 {
-                mT_DERIV(); if (state.failed) return ;
+                mT_DUNION(); if (state.failed) return ;
 
 
                 }
                 break;
             case 88 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:696: T_CARD
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:697: T_ELEMS
                 {
-                mT_CARD(); if (state.failed) return ;
+                mT_ELEMS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 89 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:703: T_CONC
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:705: T_HEAD
                 {
-                mT_CONC(); if (state.failed) return ;
+                mT_HEAD(); if (state.failed) return ;
 
 
                 }
                 break;
             case 90 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:710: T_DCONC
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:712: T_INDS
                 {
-                mT_DCONC(); if (state.failed) return ;
+                mT_INDS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 91 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:718: T_DIFF
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:719: T_INTER
                 {
-                mT_DIFF(); if (state.failed) return ;
+                mT_INTER(); if (state.failed) return ;
 
 
                 }
                 break;
             case 92 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:725: T_DINTER
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:727: T_LEN
                 {
-                mT_DINTER(); if (state.failed) return ;
+                mT_LEN(); if (state.failed) return ;
 
 
                 }
                 break;
             case 93 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:734: T_DUNION
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:733: T_SEQMOD_MAPOVERRIDE
                 {
-                mT_DUNION(); if (state.failed) return ;
+                mT_SEQMOD_MAPOVERRIDE(); if (state.failed) return ;
 
 
                 }
                 break;
             case 94 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:743: T_ELEMS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:754: T_SUBSET
                 {
-                mT_ELEMS(); if (state.failed) return ;
+                mT_SUBSET(); if (state.failed) return ;
 
 
                 }
                 break;
             case 95 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:751: T_HEAD
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:763: T_TAIL
                 {
-                mT_HEAD(); if (state.failed) return ;
+                mT_TAIL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 96 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:758: T_INDS
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:770: T_UNION
                 {
-                mT_INDS(); if (state.failed) return ;
+                mT_UNION(); if (state.failed) return ;
 
 
                 }
                 break;
             case 97 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:765: T_INTER
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:778: T_FOLDLR
                 {
-                mT_INTER(); if (state.failed) return ;
+                mT_FOLDLR(); if (state.failed) return ;
 
 
                 }
                 break;
             case 98 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:773: T_LEN
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:787: T_FOLDRL
                 {
-                mT_LEN(); if (state.failed) return ;
+                mT_FOLDRL(); if (state.failed) return ;
 
 
                 }
                 break;
             case 99 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:779: T_SEQMOD_MAPOVERRIDE
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:796: T_DOM
                 {
-                mT_SEQMOD_MAPOVERRIDE(); if (state.failed) return ;
+                mT_DOM(); if (state.failed) return ;
 
 
                 }
                 break;
             case 100 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:800: T_SUBSET
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:802: T_DOMRESBY
                 {
-                mT_SUBSET(); if (state.failed) return ;
+                mT_DOMRESBY(); if (state.failed) return ;
 
 
                 }
                 break;
             case 101 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:809: T_TAIL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:813: T_DOMRESTO
                 {
-                mT_TAIL(); if (state.failed) return ;
+                mT_DOMRESTO(); if (state.failed) return ;
 
 
                 }
                 break;
             case 102 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:816: T_UNION
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:824: T_RNG
                 {
-                mT_UNION(); if (state.failed) return ;
+                mT_RNG(); if (state.failed) return ;
 
 
                 }
                 break;
             case 103 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:824: T_FOLDLR
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:830: T_RNGRESBY
                 {
-                mT_FOLDLR(); if (state.failed) return ;
+                mT_RNGRESBY(); if (state.failed) return ;
 
 
                 }
                 break;
             case 104 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:833: T_FOLDRL
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:841: T_RNGRESTO
                 {
-                mT_FOLDRL(); if (state.failed) return ;
+                mT_RNGRESTO(); if (state.failed) return ;
 
 
                 }
                 break;
             case 105 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:842: T_DOM
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:852: T_MERGE
                 {
-                mT_DOM(); if (state.failed) return ;
+                mT_MERGE(); if (state.failed) return ;
 
 
                 }
                 break;
             case 106 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:848: T_DOMRESBY
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:860: T_MUNION
                 {
-                mT_DOMRESBY(); if (state.failed) return ;
+                mT_MUNION(); if (state.failed) return ;
 
 
                 }
                 break;
             case 107 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:859: T_DOMRESTO
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:869: T_CONSTS
                 {
-                mT_DOMRESTO(); if (state.failed) return ;
+                mT_CONSTS(); if (state.failed) return ;
 
 
                 }
                 break;
             case 108 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:870: T_RNG
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:878: T_INFTY
                 {
-                mT_RNG(); if (state.failed) return ;
+                mT_INFTY(); if (state.failed) return ;
 
 
                 }
                 break;
             case 109 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:876: T_RNGRESBY
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:886: FLOAT_OR_INT_OR_RANGE
                 {
-                mT_RNGRESBY(); if (state.failed) return ;
+                mFLOAT_OR_INT_OR_RANGE(); if (state.failed) return ;
 
 
                 }
                 break;
             case 110 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:887: T_RNGRESTO
+                // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1:908: T_IDENTIFIER
                 {
-                mT_RNGRESTO(); if (state.failed) return ;
-
-
-                }
-                break;
-            case 111 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:898: T_MERGE
-                {
-                mT_MERGE(); if (state.failed) return ;
-
-
-                }
-                break;
-            case 112 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:906: T_MUNION
-                {
-                mT_MUNION(); if (state.failed) return ;
-
-
-                }
-                break;
-            case 113 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:915: T_CONSTS
-                {
-                mT_CONSTS(); if (state.failed) return ;
-
-
-                }
-                break;
-            case 114 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:924: T_INFTY
-                {
-                mT_INFTY(); if (state.failed) return ;
-
-
-                }
-                break;
-            case 115 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:932: FLOAT_OR_INT_OR_RANGE
-                {
-                mFLOAT_OR_INT_OR_RANGE(); if (state.failed) return ;
-
-
-                }
-                break;
-            case 116 :
-                // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1:954: T_IDENTIFIER
-                {
                 mT_IDENTIFIER(); if (state.failed) return ;
 
 
@@ -4494,8 +4302,8 @@
 
     // $ANTLR start synpred1_ooa
     public final void synpred1_ooa_fragment() throws RecognitionException {
-        // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1047:9: ( '\"' '\"' )
-        // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1047:11: '\"' '\"'
+        // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:944:9: ( '\"' '\"' )
+        // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:944:11: '\"' '\"'
         {
         match('\"'); if (state.failed) return ;
 
@@ -4508,8 +4316,8 @@
 
     // $ANTLR start synpred2_ooa
     public final void synpred2_ooa_fragment() throws RecognitionException {
-        // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1203:5: ( T_POINT T_POINT )
-        // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1203:6: T_POINT T_POINT
+        // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1098:5: ( T_POINT T_POINT )
+        // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1098:6: T_POINT T_POINT
         {
         mT_POINT(); if (state.failed) return ;
 
@@ -4524,8 +4332,8 @@
 
     // $ANTLR start synpred3_ooa
     public final void synpred3_ooa_fragment() throws RecognitionException {
-        // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:6: ( T_POINT T_DIGIT )
-        // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1204:7: T_POINT T_DIGIT
+        // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:6: ( T_POINT T_DIGIT )
+        // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:1099:7: T_POINT T_DIGIT
         {
         mT_POINT(); if (state.failed) return ;
 
@@ -4584,123 +4392,117 @@
 
     protected DFA16 dfa16 = new DFA16(this);
     static final String DFA16_eotS =
-        "\2\uffff\1\64\1\66\6\56\1\117\1\uffff\1\122\6\uffff\2\56\1\133\3"+
-        "\56\1\uffff\1\143\1\56\1\55\3\56\2\uffff\3\56\1\176\1\u0080\1\u0082"+
-        "\2\uffff\1\56\1\55\1\56\4\uffff\1\u0087\5\uffff\1\u0088\10\56\1"+
-        "\u0093\1\56\1\u0096\1\56\1\u009c\1\u009d\10\56\5\uffff\7\56\2\uffff"+
-        "\6\56\2\uffff\4\56\2\uffff\4\56\1\u00bf\1\u00c0\1\u00c1\4\56\1\u00c6"+
-        "\1\56\1\u00c8\2\56\1\u00cc\10\uffff\1\u00cd\1\uffff\1\56\3\uffff"+
-        "\1\56\1\u00d0\2\56\1\u00d3\3\56\1\u00d7\1\u00d8\1\uffff\1\u00d9"+
-        "\1\56\1\uffff\1\56\1\u00dc\1\u00de\1\56\1\151\2\uffff\7\56\1\u00e7"+
-        "\3\56\1\u00eb\4\56\1\u00f1\6\56\1\u00f8\1\u00f9\2\56\1\u00fc\1\56"+
-        "\1\u00fe\1\u00ff\1\u0100\1\u0101\3\uffff\1\56\1\u0103\2\56\1\uffff"+
-        "\1\56\1\uffff\1\u0107\1\56\3\uffff\2\56\1\uffff\2\56\1\uffff\1\56"+
-        "\1\u010e\1\56\3\uffff\2\56\1\uffff\1\56\1\uffff\1\u0113\1\u0114"+
-        "\1\u0115\4\56\1\u011a\1\uffff\1\u011b\1\56\1\u011d\1\uffff\1\u011e"+
-        "\1\u011f\1\56\1\u0121\1\56\1\uffff\4\56\1\u0127\1\u0128\2\uffff"+
-        "\2\56\1\uffff\1\56\4\uffff\1\56\1\uffff\1\u012d\1\u012e\1\56\1\uffff"+
-        "\1\u0130\1\56\1\u0132\2\56\1\u0135\1\uffff\1\u0136\2\56\1\u0139"+
-        "\3\uffff\4\56\2\uffff\1\56\3\uffff\1\56\1\uffff\1\u0140\1\56\1\u0142"+
-        "\1\56\1\u0144\2\uffff\1\56\1\u0146\2\56\2\uffff\1\u0149\1\uffff"+
-        "\1\u014a\1\uffff\2\56\2\uffff\1\u014d\1\u014e\1\uffff\1\u014f\1"+
-        "\u0150\1\u0151\1\u0152\1\u0153\1\u0154\1\uffff\1\u0155\1\uffff\1"+
-        "\u0156\1\uffff\1\56\1\uffff\1\u0158\1\56\2\uffff\1\u015a\1\56\12"+
-        "\uffff\1\u015c\1\uffff\1\56\1\uffff\1\u015e\1\uffff\1\u015f\2\uffff";
+        "\2\uffff\1\63\1\65\2\55\1\77\1\uffff\1\102\6\uffff\4\55\1\124\4"+
+        "\55\1\uffff\1\136\1\55\1\54\3\55\2\uffff\3\55\1\171\1\173\1\175"+
+        "\2\uffff\1\55\1\54\1\55\4\uffff\1\u0082\5\uffff\1\u0083\7\55\5\uffff"+
+        "\11\55\1\u0097\1\55\1\u009a\4\55\2\uffff\3\55\1\u00a3\1\u00a7\3"+
+        "\55\2\uffff\4\55\2\uffff\4\55\1\u00b4\1\u00b5\1\u00b6\4\55\1\u00bb"+
+        "\1\55\1\u00bd\2\55\1\u00c1\10\uffff\1\u00c2\1\uffff\1\55\3\uffff"+
+        "\1\55\1\u00c5\2\55\1\u00c8\4\55\1\u00cd\4\55\1\u00d3\3\55\1\u00d7"+
+        "\1\uffff\1\u00d8\1\55\1\uffff\3\55\1\u00dd\4\55\1\uffff\1\u00e3"+
+        "\1\55\1\144\1\uffff\2\55\1\u00e7\1\u00e8\2\55\1\u00eb\1\55\1\u00ed"+
+        "\1\u00ee\1\u00ef\1\u00f0\3\uffff\1\55\1\u00f2\2\55\1\uffff\1\55"+
+        "\1\uffff\1\u00f6\1\55\3\uffff\2\55\1\uffff\2\55\1\uffff\1\55\1\u00fd"+
+        "\1\55\1\u00ff\1\uffff\1\u0100\1\u0101\2\55\1\u0104\1\uffff\1\55"+
+        "\1\u0106\1\55\2\uffff\2\55\1\u010a\1\55\1\uffff\5\55\1\uffff\1\u0111"+
+        "\1\u0112\1\u0113\2\uffff\2\55\1\uffff\1\55\4\uffff\1\55\1\uffff"+
+        "\1\u0118\1\u0119\1\55\1\uffff\1\u011b\1\55\1\u011d\2\55\1\u0120"+
+        "\1\uffff\1\u0121\3\uffff\2\55\1\uffff\1\55\1\uffff\3\55\1\uffff"+
+        "\1\u0128\1\55\1\u012a\1\55\1\u012c\1\u012d\3\uffff\1\55\1\u012f"+
+        "\2\55\2\uffff\1\u0132\1\uffff\1\u0133\1\uffff\2\55\2\uffff\1\u0136"+
+        "\1\u0137\1\u0138\1\u0139\1\u013a\1\u013b\1\uffff\1\u013c\1\uffff"+
+        "\1\u013d\2\uffff\1\55\1\uffff\1\u013f\1\55\2\uffff\1\u0141\1\55"+
+        "\10\uffff\1\u0143\1\uffff\1\55\1\uffff\1\u0145\1\uffff\1\u0146\2"+
+        "\uffff";
     static final String DFA16_eofS =
-        "\u0160\uffff";
+        "\u0147\uffff";
     static final String DFA16_minS =
-        "\1\11\1\uffff\1\55\1\174\1\142\2\145\1\146\1\163\1\145\1\133\1\uffff"+
-        "\1\52\6\uffff\1\141\1\154\1\76\1\141\1\151\1\145\1\uffff\1\135\1"+
-        "\141\1\76\1\145\1\142\1\145\2\uffff\1\150\1\141\1\151\1\55\1\75"+
-        "\1\52\2\uffff\1\144\1\53\1\156\4\uffff\1\72\5\uffff\1\44\1\157\2"+
-        "\164\1\144\1\147\1\157\1\145\1\143\1\44\1\156\1\44\1\156\2\44\2"+
-        "\141\1\160\1\141\1\163\1\154\1\151\1\142\5\uffff\1\141\2\162\1\156"+
-        "\1\145\1\144\1\151\2\uffff\1\157\1\162\2\154\1\163\1\156\2\uffff"+
-        "\1\160\1\162\1\144\1\156\2\uffff\1\167\1\154\1\164\1\163\3\44\1"+
-        "\161\1\147\1\145\1\165\1\44\1\160\1\44\1\162\1\164\1\76\10\uffff"+
-        "\1\44\1\uffff\1\151\3\uffff\1\162\1\44\1\151\1\157\1\44\1\151\1"+
-        "\154\1\141\2\44\1\uffff\1\44\1\164\1\uffff\1\151\2\44\1\163\1\44"+
-        "\2\uffff\2\154\2\141\2\164\1\146\1\44\1\160\1\163\1\162\1\44\1\144"+
-        "\1\143\1\145\1\155\1\44\1\163\2\141\1\163\1\154\1\164\2\44\1\150"+
-        "\1\147\1\44\1\151\4\44\3\uffff\1\165\1\44\1\156\1\145\1\uffff\1"+
-        "\145\1\uffff\1\44\1\150\3\uffff\1\157\1\164\1\uffff\1\157\1\143"+
-        "\1\uffff\1\156\1\44\1\153\3\uffff\1\145\1\157\1\uffff\1\162\1\uffff"+
-        "\3\44\1\143\1\144\1\151\1\145\1\44\1\uffff\1\44\1\145\1\44\1\uffff"+
-        "\2\44\1\164\1\44\1\163\1\uffff\2\164\1\154\1\145\2\44\2\uffff\1"+
-        "\157\1\145\1\uffff\1\157\4\uffff\1\151\1\uffff\2\44\1\163\1\uffff"+
-        "\1\44\1\156\1\44\1\156\1\157\1\44\1\uffff\1\44\1\162\1\156\1\44"+
-        "\3\uffff\1\145\1\171\1\143\1\155\2\uffff\1\164\3\uffff\1\163\1\uffff"+
-        "\1\44\1\163\1\44\1\154\1\44\2\uffff\1\144\1\44\1\156\1\162\2\uffff"+
-        "\1\44\1\uffff\1\44\1\uffff\1\163\1\156\2\uffff\2\44\1\uffff\6\44"+
-        "\1\uffff\1\44\1\uffff\1\44\1\uffff\1\163\1\uffff\1\44\1\145\2\uffff"+
-        "\1\44\1\163\12\uffff\1\44\1\uffff\1\163\1\uffff\1\44\1\uffff\1\44"+
-        "\2\uffff";
+        "\1\11\1\uffff\1\55\1\174\1\142\1\145\1\133\1\uffff\1\52\6\uffff"+
+        "\1\141\1\145\1\151\1\154\1\76\1\141\1\146\1\151\1\145\1\uffff\1"+
+        "\135\1\141\1\76\1\145\1\142\1\145\2\uffff\1\150\1\141\1\151\1\55"+
+        "\1\75\1\52\2\uffff\1\144\1\53\1\156\4\uffff\1\72\5\uffff\1\44\1"+
+        "\157\2\164\1\144\1\147\1\157\1\145\5\uffff\1\141\2\162\1\156\1\163"+
+        "\1\154\1\141\1\151\1\142\1\44\1\156\1\44\1\156\1\145\1\144\1\151"+
+        "\2\uffff\1\157\1\162\1\154\2\44\1\154\1\163\1\156\2\uffff\1\160"+
+        "\1\162\1\144\1\156\2\uffff\1\167\1\154\1\164\1\163\3\44\1\161\1"+
+        "\147\1\145\1\165\1\44\1\160\1\44\1\162\1\164\1\76\10\uffff\1\44"+
+        "\1\uffff\1\151\3\uffff\1\162\1\44\1\151\1\157\1\44\1\151\1\154\1"+
+        "\141\1\162\1\44\1\144\1\143\1\164\1\146\1\44\1\164\1\160\1\163\1"+
+        "\44\1\uffff\1\44\1\164\1\uffff\1\151\1\145\1\155\1\44\1\163\2\141"+
+        "\1\163\1\uffff\1\44\1\163\1\44\1\uffff\1\154\1\164\2\44\1\150\1"+
+        "\147\1\44\1\151\4\44\3\uffff\1\165\1\44\1\156\1\145\1\uffff\1\145"+
+        "\1\uffff\1\44\1\150\3\uffff\1\157\1\164\1\uffff\1\157\1\143\1\uffff"+
+        "\1\156\1\44\1\153\1\44\1\uffff\2\44\1\164\1\145\1\44\1\uffff\1\151"+
+        "\1\44\1\145\2\uffff\1\145\1\157\1\44\1\163\1\uffff\2\164\1\154\1"+
+        "\145\1\162\1\uffff\3\44\2\uffff\1\157\1\145\1\uffff\1\157\4\uffff"+
+        "\1\151\1\uffff\2\44\1\163\1\uffff\1\44\1\156\1\44\1\156\1\157\1"+
+        "\44\1\uffff\1\44\3\uffff\1\163\1\155\1\uffff\1\143\1\uffff\1\164"+
+        "\1\162\1\156\1\uffff\1\44\1\163\1\44\1\154\2\44\3\uffff\1\144\1"+
+        "\44\1\156\1\162\2\uffff\1\44\1\uffff\1\44\1\uffff\1\163\1\156\2"+
+        "\uffff\6\44\1\uffff\1\44\1\uffff\1\44\2\uffff\1\163\1\uffff\1\44"+
+        "\1\145\2\uffff\1\44\1\163\10\uffff\1\44\1\uffff\1\163\1\uffff\1"+
+        "\44\1\uffff\1\44\2\uffff";
     static final String DFA16_maxS =
-        "\1\175\1\uffff\1\76\1\174\1\165\1\162\1\165\1\156\1\166\1\171\1"+
-        "\133\1\uffff\1\57\6\uffff\1\164\1\170\1\76\1\157\2\151\1\uffff\1"+
-        "\135\1\165\1\151\1\157\1\162\1\156\2\uffff\1\171\1\141\1\151\1\76"+
-        "\1\75\1\52\2\uffff\1\144\1\151\1\156\4\uffff\1\72\5\uffff\1\172"+
-        "\1\163\2\164\1\144\1\147\1\157\1\145\1\143\1\172\1\166\1\172\1\156"+
-        "\2\172\2\141\1\160\1\145\1\163\1\164\1\151\1\142\5\uffff\1\141\2"+
-        "\162\1\156\1\163\1\144\1\151\2\uffff\1\157\1\162\2\154\1\163\1\156"+
-        "\2\uffff\1\160\1\164\1\144\1\156\2\uffff\1\167\1\154\1\164\1\163"+
-        "\3\172\1\161\1\147\1\145\1\165\1\172\1\160\1\172\1\162\1\164\1\76"+
-        "\10\uffff\1\172\1\uffff\1\151\3\uffff\1\162\1\172\1\151\1\157\1"+
-        "\172\1\151\1\154\1\141\2\172\1\uffff\1\172\1\164\1\uffff\1\151\2"+
-        "\172\1\163\1\172\2\uffff\2\154\2\141\2\164\1\146\1\172\1\160\1\163"+
-        "\1\162\1\172\1\144\1\163\1\145\1\155\1\172\1\163\2\141\1\163\1\154"+
-        "\1\164\2\172\1\150\1\147\1\172\1\151\4\172\3\uffff\1\165\1\172\1"+
-        "\156\1\145\1\uffff\1\145\1\uffff\1\172\1\150\3\uffff\1\157\1\164"+
-        "\1\uffff\1\157\1\143\1\uffff\1\156\1\172\1\153\3\uffff\1\145\1\157"+
-        "\1\uffff\1\162\1\uffff\3\172\1\143\1\144\1\151\1\145\1\172\1\uffff"+
-        "\1\172\1\145\1\172\1\uffff\2\172\1\164\1\172\1\163\1\uffff\2\164"+
-        "\1\154\1\145\2\172\2\uffff\1\157\1\145\1\uffff\1\157\4\uffff\1\151"+
-        "\1\uffff\2\172\1\163\1\uffff\1\172\1\156\1\172\1\156\1\157\1\172"+
-        "\1\uffff\1\172\1\162\1\156\1\172\3\uffff\1\145\1\171\1\143\1\155"+
-        "\2\uffff\1\164\3\uffff\1\163\1\uffff\1\172\1\163\1\172\1\154\1\172"+
-        "\2\uffff\1\144\1\172\1\156\1\162\2\uffff\1\172\1\uffff\1\172\1\uffff"+
-        "\1\163\1\156\2\uffff\2\172\1\uffff\6\172\1\uffff\1\172\1\uffff\1"+
-        "\172\1\uffff\1\163\1\uffff\1\172\1\145\2\uffff\1\172\1\163\12\uffff"+
+        "\1\175\1\uffff\1\76\1\174\1\165\1\162\1\133\1\uffff\1\57\6\uffff"+
+        "\1\164\1\171\1\165\1\170\1\76\1\157\1\156\2\151\1\uffff\1\135\1"+
+        "\165\1\151\1\157\1\162\1\156\2\uffff\1\171\1\141\1\151\1\76\1\75"+
+        "\1\52\2\uffff\1\144\1\151\1\156\4\uffff\1\72\5\uffff\1\172\1\163"+
+        "\2\164\1\144\1\147\1\157\1\145\5\uffff\1\141\2\162\1\156\1\163\1"+
+        "\164\1\141\1\151\1\142\1\172\1\166\1\172\1\156\1\163\1\144\1\151"+
+        "\2\uffff\1\157\1\162\1\154\2\172\1\154\1\163\1\156\2\uffff\1\160"+
+        "\1\164\1\144\1\156\2\uffff\1\167\1\154\1\164\1\163\3\172\1\161\1"+
+        "\147\1\145\1\165\1\172\1\160\1\172\1\162\1\164\1\76\10\uffff\1\172"+
+        "\1\uffff\1\151\3\uffff\1\162\1\172\1\151\1\157\1\172\1\151\1\154"+
+        "\1\141\1\162\1\172\1\144\1\163\1\164\1\146\1\172\1\164\1\160\1\163"+
+        "\1\172\1\uffff\1\172\1\164\1\uffff\1\151\1\145\1\155\1\172\1\163"+
+        "\2\141\1\163\1\uffff\1\172\1\163\1\172\1\uffff\1\154\1\164\2\172"+
+        "\1\150\1\147\1\172\1\151\4\172\3\uffff\1\165\1\172\1\156\1\145\1"+
+        "\uffff\1\145\1\uffff\1\172\1\150\3\uffff\1\157\1\164\1\uffff\1\157"+
+        "\1\143\1\uffff\1\156\1\172\1\153\1\172\1\uffff\2\172\1\164\1\145"+
+        "\1\172\1\uffff\1\151\1\172\1\145\2\uffff\1\145\1\157\1\172\1\163"+
+        "\1\uffff\2\164\1\154\1\145\1\162\1\uffff\3\172\2\uffff\1\157\1\145"+
+        "\1\uffff\1\157\4\uffff\1\151\1\uffff\2\172\1\163\1\uffff\1\172\1"+
+        "\156\1\172\1\156\1\157\1\172\1\uffff\1\172\3\uffff\1\163\1\155\1"+
+        "\uffff\1\143\1\uffff\1\164\1\162\1\156\1\uffff\1\172\1\163\1\172"+
+        "\1\154\2\172\3\uffff\1\144\1\172\1\156\1\162\2\uffff\1\172\1\uffff"+
+        "\1\172\1\uffff\1\163\1\156\2\uffff\6\172\1\uffff\1\172\1\uffff\1"+
+        "\172\2\uffff\1\163\1\uffff\1\172\1\145\2\uffff\1\172\1\163\10\uffff"+
         "\1\172\1\uffff\1\163\1\uffff\1\172\1\uffff\1\172\2\uffff";
     static final String DFA16_acceptS =
-        "\1\uffff\1\1\11\uffff\1\13\1\uffff\1\15\1\16\1\17\1\26\1\27\1\31"+
-        "\6\uffff\1\53\6\uffff\1\70\1\75\6\uffff\1\131\1\133\3\uffff\1\163"+
-        "\1\164\1\2\1\22\1\uffff\1\150\1\155\1\30\1\3\1\71\27\uffff\1\12"+
-        "\1\24\1\14\1\66\1\116\7\uffff\1\111\1\41\6\uffff\1\62\1\54\4\uffff"+
-        "\1\56\1\162\21\uffff\1\113\1\152\1\153\1\122\1\120\1\117\1\125\1"+
-        "\126\1\uffff\1\143\1\uffff\1\147\1\156\1\4\12\uffff\1\36\2\uffff"+
-        "\1\127\5\uffff\1\47\1\46\41\uffff\1\64\1\65\1\114\4\uffff\1\103"+
-        "\1\uffff\1\145\2\uffff\1\110\1\123\1\137\2\uffff\1\115\2\uffff\1"+
-        "\107\3\uffff\1\6\1\151\1\121\2\uffff\1\7\1\uffff\1\50\10\uffff\1"+
-        "\74\3\uffff\1\34\5\uffff\1\40\6\uffff\1\142\1\55\2\uffff\1\124\1"+
-        "\uffff\1\60\1\61\1\112\1\63\1\uffff\1\154\3\uffff\1\105\6\uffff"+
-        "\1\25\4\uffff\1\140\1\10\1\32\4\uffff\1\73\1\77\1\uffff\1\33\1\130"+
-        "\1\132\1\uffff\1\37\5\uffff\1\51\1\52\4\uffff\1\101\1\102\1\uffff"+
-        "\1\106\1\uffff\1\20\2\uffff\1\5\1\100\2\uffff\1\141\6\uffff\1\136"+
-        "\1\uffff\1\43\1\uffff\1\45\1\uffff\1\157\2\uffff\1\104\1\146\2\uffff"+
-        "\1\134\1\135\1\72\1\11\1\76\1\35\1\144\1\161\1\42\1\44\1\uffff\1"+
-        "\160\1\uffff\1\21\1\uffff\1\57\1\uffff\1\23\1\67";
+        "\1\uffff\1\1\5\uffff\1\7\1\uffff\1\11\1\12\1\13\1\22\1\23\1\25\11"+
+        "\uffff\1\46\6\uffff\1\63\1\67\6\uffff\1\123\1\125\3\uffff\1\155"+
+        "\1\156\1\2\1\16\1\uffff\1\142\1\147\1\24\1\3\1\64\10\uffff\1\6\1"+
+        "\20\1\10\1\61\1\110\20\uffff\1\103\1\34\10\uffff\1\55\1\47\4\uffff"+
+        "\1\51\1\154\21\uffff\1\105\1\144\1\145\1\114\1\112\1\111\1\117\1"+
+        "\120\1\uffff\1\135\1\uffff\1\141\1\150\1\4\23\uffff\1\31\2\uffff"+
+        "\1\121\10\uffff\1\41\3\uffff\1\42\14\uffff\1\57\1\60\1\106\4\uffff"+
+        "\1\75\1\uffff\1\137\2\uffff\1\102\1\115\1\131\2\uffff\1\107\2\uffff"+
+        "\1\101\4\uffff\1\27\5\uffff\1\66\3\uffff\1\143\1\113\4\uffff\1\33"+
+        "\5\uffff\1\43\3\uffff\1\134\1\50\2\uffff\1\116\1\uffff\1\53\1\54"+
+        "\1\104\1\56\1\uffff\1\146\3\uffff\1\77\6\uffff\1\21\1\uffff\1\26"+
+        "\1\122\1\124\2\uffff\1\65\1\uffff\1\71\3\uffff\1\32\6\uffff\1\132"+
+        "\1\44\1\45\4\uffff\1\73\1\74\1\uffff\1\100\1\uffff\1\14\2\uffff"+
+        "\1\5\1\72\6\uffff\1\130\1\uffff\1\36\1\uffff\1\40\1\133\1\uffff"+
+        "\1\151\2\uffff\1\76\1\140\2\uffff\1\153\1\30\1\70\1\136\1\126\1"+
+        "\127\1\35\1\37\1\uffff\1\152\1\uffff\1\15\1\uffff\1\52\1\uffff\1"+
+        "\17\1\62";
     static final String DFA16_specialS =
-        "\u0160\uffff}>";
+        "\u0147\uffff}>";
     static final String[] DFA16_transitionS = {
-            "\2\13\1\uffff\2\13\22\uffff\1\13\1\uffff\1\17\1\15\1\56\1\uffff"+
-            "\1\1\1\16\1\31\1\40\1\47\1\53\1\22\1\34\1\55\1\14\12\55\1\2"+
-            "\1\41\1\45\1\25\1\46\2\uffff\32\56\1\32\1\51\1\3\1\50\1\56\1"+
-            "\uffff\1\4\1\5\1\23\1\6\1\24\1\26\1\56\1\52\1\7\1\56\1\27\1"+
-            "\30\1\33\1\35\1\36\1\56\1\10\1\37\1\11\1\42\1\54\1\43\1\44\3"+
-            "\56\1\20\1\12\1\21",
+            "\2\7\1\uffff\2\7\22\uffff\1\7\1\uffff\1\13\1\11\1\55\1\uffff"+
+            "\1\1\1\12\1\30\1\37\1\46\1\52\1\16\1\33\1\54\1\10\12\54\1\2"+
+            "\1\40\1\44\1\23\1\45\2\uffff\32\55\1\31\1\50\1\3\1\47\1\55\1"+
+            "\uffff\1\4\1\5\1\17\1\21\1\22\1\24\1\55\1\51\1\25\1\55\1\26"+
+            "\1\27\1\32\1\34\1\35\2\55\1\36\1\20\1\41\1\53\1\42\1\43\3\55"+
+            "\1\14\1\6\1\15",
             "",
-            "\1\63\14\uffff\1\57\1\uffff\1\62\1\60\1\61",
-            "\1\65",
-            "\1\70\1\71\12\uffff\1\73\4\uffff\1\67\1\uffff\1\72",
-            "\1\74\11\uffff\1\75\2\uffff\1\76",
-            "\1\77\3\uffff\1\101\5\uffff\1\100\4\uffff\1\102\1\103",
-            "\1\105\7\uffff\1\104",
-            "\1\110\1\uffff\1\107\1\106",
-            "\1\113\5\uffff\1\114\10\uffff\1\111\1\115\3\uffff\1\112",
-            "\1\116",
+            "\1\62\14\uffff\1\56\1\uffff\1\61\1\57\1\60",
+            "\1\64",
+            "\1\67\1\70\12\uffff\1\72\4\uffff\1\66\1\uffff\1\71",
+            "\1\73\11\uffff\1\74\2\uffff\1\75",
+            "\1\76",
             "",
-            "\1\120\4\uffff\1\121",
+            "\1\100\4\uffff\1\101",
             "",
             "",
             "",
@@ -4707,81 +4509,94 @@
             "",
             "",
             "",
-            "\1\125\6\uffff\1\123\6\uffff\1\126\4\uffff\1\124",
-            "\1\127\1\uffff\1\130\11\uffff\1\131",
+            "\1\105\6\uffff\1\103\6\uffff\1\106\4\uffff\1\104",
+            "\1\110\5\uffff\1\112\10\uffff\1\111\1\113\3\uffff\1\107",
+            "\1\115\5\uffff\1\114\4\uffff\1\116\1\117",
+            "\1\120\1\uffff\1\121\11\uffff\1\122",
+            "\1\123",
+            "\1\127\12\uffff\1\125\2\uffff\1\126",
+            "\1\130\7\uffff\1\131",
             "\1\132",
-            "\1\136\12\uffff\1\134\2\uffff\1\135",
-            "\1\137",
-            "\1\141\3\uffff\1\140",
+            "\1\134\3\uffff\1\133",
             "",
-            "\1\142",
-            "\1\144\3\uffff\1\145\11\uffff\1\146\5\uffff\1\147",
-            "\1\150\52\uffff\1\151",
-            "\1\152\3\uffff\1\153\5\uffff\1\154",
-            "\1\155\1\uffff\1\156\1\uffff\1\157\13\uffff\1\160",
-            "\1\161\10\uffff\1\162",
+            "\1\135",
+            "\1\137\3\uffff\1\140\11\uffff\1\141\5\uffff\1\142",
+            "\1\143\52\uffff\1\144",
+            "\1\145\3\uffff\1\146\5\uffff\1\147",
+            "\1\150\1\uffff\1\151\1\uffff\1\152\13\uffff\1\153",
+            "\1\154\10\uffff\1\155",
             "",
             "",
-            "\1\163\3\uffff\1\167\2\uffff\1\165\2\uffff\1\164\6\uffff\1"+
-            "\166",
-            "\1\170",
-            "\1\171",
-            "\1\174\14\uffff\1\175\2\uffff\1\172\1\173",
-            "\1\177",
+            "\1\156\3\uffff\1\162\2\uffff\1\160\2\uffff\1\157\6\uffff\1"+
+            "\161",
+            "\1\163",
+            "\1\164",
+            "\1\167\14\uffff\1\170\2\uffff\1\165\1\166",
+            "\1\172",
+            "\1\174",
+            "",
+            "",
+            "\1\176",
+            "\1\177\75\uffff\1\144",
+            "\1\u0080",
+            "",
+            "",
+            "",
+            "",
             "\1\u0081",
             "",
             "",
-            "\1\u0083",
-            "\1\u0084\75\uffff\1\151",
-            "\1\u0085",
             "",
             "",
             "",
-            "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u0084\3\uffff\1\u0085",
             "\1\u0086",
+            "\1\u0087",
+            "\1\u0088",
+            "\1\u0089",
+            "\1\u008a",
+            "\1\u008b",
             "",
             "",
             "",
             "",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0089\3\uffff\1\u008a",
-            "\1\u008b",
             "\1\u008c",
             "\1\u008d",
             "\1\u008e",
             "\1\u008f",
             "\1\u0090",
-            "\1\u0091",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\14"+
-            "\56\1\u0092\15\56",
-            "\1\u0095\7\uffff\1\u0094",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0097",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\2\56"+
-            "\1\u0098\1\u009a\1\56\1\u009b\15\56\1\u0099\6\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\u0091\7\uffff\1\u0092",
+            "\1\u0093",
+            "\1\u0094",
+            "\1\u0095",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\14"+
+            "\55\1\u0096\15\55",
+            "\1\u0099\7\uffff\1\u0098",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u009b",
+            "\1\u009d\15\uffff\1\u009c",
             "\1\u009e",
             "\1\u009f",
-            "\1\u00a0",
-            "\1\u00a2\3\uffff\1\u00a1",
-            "\1\u00a3",
-            "\1\u00a4\7\uffff\1\u00a5",
-            "\1\u00a6",
-            "\1\u00a7",
             "",
             "",
-            "",
-            "",
-            "",
+            "\1\u00a0",
+            "\1\u00a1",
+            "\1\u00a2",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\3\55"+
+            "\1\u00a5\1\55\1\u00a6\15\55\1\u00a4\6\55",
             "\1\u00a8",
             "\1\u00a9",
             "\1\u00aa",
+            "",
+            "",
             "\1\u00ab",
-            "\1\u00ad\15\uffff\1\u00ac",
+            "\1\u00ad\1\uffff\1\u00ac",
             "\1\u00ae",
             "\1\u00af",
             "",
@@ -4790,38 +4605,24 @@
             "\1\u00b1",
             "\1\u00b2",
             "\1\u00b3",
-            "\1\u00b4",
-            "\1\u00b5",
-            "",
-            "",
-            "\1\u00b6",
-            "\1\u00b8\1\uffff\1\u00b7",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u00b7",
+            "\1\u00b8",
             "\1\u00b9",
             "\1\u00ba",
-            "",
-            "",
-            "\1\u00bb",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u00bc",
-            "\1\u00bd",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u00be",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u00c2",
-            "\1\u00c3",
-            "\1\u00c4",
-            "\1\u00c5",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u00c7",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u00c9",
-            "\1\u00ca",
-            "\1\u00cb",
+            "\1\u00bf",
+            "\1\u00c0",
             "",
             "",
             "",
@@ -4830,287 +4631,261 @@
             "",
             "",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\u00ce",
+            "\1\u00c3",
             "",
             "",
             "",
-            "\1\u00cf",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\u00c4",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u00c6",
+            "\1\u00c7",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u00c9",
+            "\1\u00ca",
+            "\1\u00cb",
+            "\1\u00cc",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u00ce",
+            "\1\u00cf\17\uffff\1\u00d0",
             "\1\u00d1",
             "\1\u00d2",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u00d4",
             "\1\u00d5",
             "\1\u00d6",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u00d9",
+            "",
             "\1\u00da",
-            "",
             "\1\u00db",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\4\56"+
-            "\1\u00dd\25\56",
+            "\1\u00dc",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u00de",
             "\1\u00df",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "",
-            "",
             "\1\u00e0",
             "\1\u00e1",
-            "\1\u00e2",
-            "\1\u00e3",
+            "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\4\55"+
+            "\1\u00e2\25\55",
             "\1\u00e4",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "",
             "\1\u00e5",
             "\1\u00e6",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u00e8",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u00e9",
             "\1\u00ea",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u00ec",
-            "\1\u00ed\17\uffff\1\u00ee",
-            "\1\u00ef",
-            "\1\u00f0",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u00f2",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "",
+            "",
+            "",
+            "\1\u00f1",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u00f3",
             "\1\u00f4",
+            "",
             "\1\u00f5",
-            "\1\u00f6",
+            "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u00f7",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "",
+            "",
+            "",
+            "\1\u00f8",
+            "\1\u00f9",
+            "",
             "\1\u00fa",
             "\1\u00fb",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u00fd",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
             "",
+            "\1\u00fc",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u00fe",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u0102",
+            "\1\u0103",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\u0102",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0104",
             "\1\u0105",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u0107",
             "",
-            "\1\u0106",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
             "\1\u0108",
-            "",
-            "",
-            "",
             "\1\u0109",
-            "\1\u010a",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u010b",
             "",
-            "\1\u010b",
             "\1\u010c",
-            "",
             "\1\u010d",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\u010e",
             "\1\u010f",
+            "\1\u0110",
             "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
             "",
-            "\1\u0110",
-            "\1\u0111",
+            "\1\u0114",
+            "\1\u0115",
             "",
-            "\1\u0112",
+            "\1\u0116",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0116",
+            "",
+            "",
+            "",
             "\1\u0117",
-            "\1\u0118",
-            "\1\u0119",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u011a",
+            "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u011c",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u011e",
+            "\1\u011f",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0120",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "",
+            "",
+            "",
             "\1\u0122",
+            "\1\u0123",
             "",
-            "\1\u0123",
             "\1\u0124",
+            "",
             "\1\u0125",
             "\1\u0126",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\u0127",
             "",
-            "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u0129",
-            "\1\u012a",
-            "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "\1\u012b",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
             "",
             "",
+            "\1\u012e",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u0130",
+            "\1\u0131",
             "",
-            "\1\u012c",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u012f",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0131",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0133",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "",
             "\1\u0134",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\u0135",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0137",
-            "\1\u0138",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
             "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\u013a",
-            "\1\u013b",
-            "\1\u013c",
-            "\1\u013d",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
             "",
             "\1\u013e",
             "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u0140",
             "",
             "",
-            "\1\u013f",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
+            "\1\u0142",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0141",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0143",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
             "",
             "",
-            "\1\u0145",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0147",
-            "\1\u0148",
             "",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
             "",
-            "\1\u014b",
-            "\1\u014c",
             "",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\u0144",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
+            "\1\55\13\uffff\12\55\7\uffff\32\55\4\uffff\1\55\1\uffff\32"+
+            "\55",
             "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "",
-            "\1\u0157",
-            "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u0159",
-            "",
-            "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "\1\u015b",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "",
-            "\1\u015d",
-            "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "",
-            "\1\56\13\uffff\12\56\7\uffff\32\56\4\uffff\1\56\1\uffff\32"+
-            "\56",
-            "",
             ""
     };
 
@@ -5144,7 +4919,7 @@
             this.transition = DFA16_transition;
         }
         public String getDescription() {
-            return "1:1: Tokens : ( T__118 | T__119 | T__120 | T__121 | T__122 | T__123 | T__124 | T__125 | T__126 | T__127 | T_WS | T_COMMENT | LINE_COMMENT | T_PRIMED | T_STRINGLITERAL | T_ABORT | T_ACTIONS | T_ASSIGNMENT | T_AUTOCONS | T_BAR | T_BOOL | T_CBRL | T_CBRR | T_COLON | T_COMMA | T_CONT | T_CHAR | T_CTRL | T_SYSTEM | T_DO | T_ELSE | T_END | T_EQUAL | T_EXISTS | T_FLOAT | T_FORALL | T_FALSE | T_IF | T_IN | T_INT | T_KILL | T_LIST | T_LPAREN | T_LSQPAREN | T_MAP | T_MAPS | T_METHODS | T_NEW | T_NIL | T_NONDET | T_OBS | T_OD | T_OF | T_PRIO | T_REQUIRES | T_RPAREN | T_RSQPAREN | T_QUANTITY | T_SELF | T_SET | T_SEMICOLON | T_STATIC | T_SKIP | T_BREAK | T_THEN | T_TRUE | T_TO | T_TYPES | T_VAR | T_WITH | T_AND | T_BIIMPLIES | T_IMPLIES | T_NOT | T_NOTEQUAL | T_OR | T_ABS | T_DIV | T_GREATER | T_GREATEREQUAL | T_IDIV | T_LESS | T_LESSEQUAL | T_MOD | T_POW | T_PROD | T_DERIV | T_CARD | T_CONC | T_DCONC | T_DIFF | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_INTER | T_LEN | T_SEQMOD_MAPOVERRIDE | T_SUBSET | T_TAIL | T_UNION | T_FOLDLR | T_FOLDRL | T_DOM | T_DOMRESBY | T_DOMRESTO | T_RNG | T_RNGRESBY | T_RNGRESTO | T_MERGE | T_MUNION | T_CONSTS | T_INFTY | FLOAT_OR_INT_OR_RANGE | T_IDENTIFIER );";
+            return "1:1: Tokens : ( T__116 | T__117 | T__118 | T__119 | T__120 | T__121 | T_WS | T_COMMENT | LINE_COMMENT | T_PRIMED | T_STRINGLITERAL | T_ABORT | T_ACTIONS | T_ASSIGNMENT | T_AUTOCONS | T_BAR | T_BOOL | T_CBRL | T_CBRR | T_COLON | T_COMMA | T_CHAR | T_CTRL | T_SYSTEM | T_DO | T_ELSE | T_END | T_EQUAL | T_EXISTS | T_FLOAT | T_FORALL | T_FALSE | T_IF | T_IN | T_INT | T_KILL | T_LIST | T_LPAREN | T_LSQPAREN | T_MAP | T_MAPS | T_METHODS | T_NEW | T_NIL | T_NONDET | T_OBS | T_OD | T_OF | T_PRIO | T_REQUIRES | T_RPAREN | T_RSQPAREN | T_SELF | T_SET | T_SEMICOLON | T_STATIC | T_SKIP | T_BREAK | T_THEN | T_TRUE | T_TO | T_TYPES | T_VAR | T_WITH | T_AND | T_BIIMPLIES | T_IMPLIES | T_NOT | T_NOTEQUAL | T_OR | T_ABS | T_DIV | T_GREATER | T_GREATEREQUAL | T_IDIV | T_LESS | T_LESSEQUAL | T_MOD | T_POW | T_PROD | T_DERIV | T_CARD | T_CONC | T_DCONC | T_DIFF | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_INTER | T_LEN | T_SEQMOD_MAPOVERRIDE | T_SUBSET | T_TAIL | T_UNION | T_FOLDLR | T_FOLDRL | T_DOM | T_DOMRESBY | T_DOMRESTO | T_RNG | T_RNGRESBY | T_RNGRESTO | T_MERGE | T_MUNION | T_CONSTS | T_INFTY | FLOAT_OR_INT_OR_RANGE | T_IDENTIFIER );";
         }
     }
  
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaCustomParser.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaCustomParser.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaCustomParser.java	(revision 9)
@@ -50,7 +50,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.Quantifier;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
@@ -59,7 +58,6 @@
 import org.momut.ooas.ast.expressions.UnaryOperator;
 import org.momut.ooas.ast.expressions.UnresolvedIdentifierExpression;
 import org.momut.ooas.ast.expressions.ValueExpression;
-import org.momut.ooas.ast.expressions.QValConstructor.QValDeriv;
 import org.momut.ooas.ast.identifiers.AttributeIdentifier;
 import org.momut.ooas.ast.identifiers.ConstantIdentifier;
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
@@ -68,7 +66,6 @@
 import org.momut.ooas.ast.identifiers.Identifier;
 import org.momut.ooas.ast.identifiers.IdentifierKind;
 import org.momut.ooas.ast.identifiers.IdentifierList;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
@@ -85,12 +82,9 @@
 import org.momut.ooas.ast.statements.KillStatement;
 import org.momut.ooas.ast.statements.NondetBlock;
 import org.momut.ooas.ast.statements.PrioBlock;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.SkipStatement;
 import org.momut.ooas.ast.statements.Statement;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement.QualitativeConstraintOperation;
-import org.momut.ooas.ast.types.AnyType;
 import org.momut.ooas.ast.types.BoolType;
 import org.momut.ooas.ast.types.CharType;
 import org.momut.ooas.ast.types.EnumType;
@@ -101,10 +95,9 @@
 import org.momut.ooas.ast.types.MapType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.ast.types.FunctionType.FunctionTypeEnum;
 import org.momut.ooas.utils.exceptions.ArgumentException;
@@ -248,11 +241,11 @@
 				new ParserError(pState.filename, aToken, aMessage));
 	}
 
-	/* add warning message to state */
-	private void doWarning(Token id1, String p)
-	{
-		pState.AddWarningMessage(new ParserWarning(pState.filename, id1, p));
-	}
+//	/* add warning message to state */
+//	private void doWarning(Token id1, String p)
+//	{
+//		pState.AddWarningMessage(new ParserWarning(pState.filename, id1, p));
+//	}
 
 	private void doError(String aMessage)
 	{
@@ -302,7 +295,7 @@
 
 
 	/* create a named type; we're on top-level here */
-	 void createNamedType(Token aName, UlyssesType aType)
+	 void createNamedType(Token aName, Type aType)
 	{
 		// precond..
 		assert(aName != null);
@@ -454,7 +447,7 @@
 	}
 
 	/* add var symbol to the current action system */
-	void createAttribute(Token varname, boolean isStatic, boolean isObs, boolean isCtr, UlyssesType aType, Expression anExpr)
+	void createAttribute(Token varname, boolean isStatic, boolean isObs, boolean isCtr, Type aType, Expression anExpr)
 	{
 		if (!TosIsActionSystem())
 			return;
@@ -494,7 +487,7 @@
 
 	/* create an int type */
 	@SuppressWarnings("unchecked")
-	UlyssesType createIntType(Token rangeLow, Token rangeHigh)
+	Type createIntType(Token rangeLow, Token rangeHigh)
 	{
 		int low = 0;
 		int high = 0;
@@ -548,7 +541,7 @@
 
 	/* create a float type */
 	 @SuppressWarnings("unchecked")
-	UlyssesType createFloatType(Token rangeLow, Token rangeHigh)
+	Type createFloatType(Token rangeLow, Token rangeHigh)
 	{
 		float low = 0;
 		float high = 0;
@@ -606,7 +599,7 @@
 	}
 
 	/* create a list of an enumerated type */
-	 UlyssesType createListEnumType(Token alistelem)
+	 Type createListEnumType(Token alistelem)
 	{
 		final EnumType hiddenEnumType = new EnumType(null);
 
@@ -616,7 +609,7 @@
 	}
 
 	/* add a new enum symbol to a list with an anonymous enumerated type */
-	 void addToListEnumType(UlyssesType aTypeSymbol, Token otherlistelem)
+	 void addToListEnumType(Type aTypeSymbol, Token otherlistelem)
 	{
 		final EnumType enumtype = (EnumType)((ListType)aTypeSymbol).innerType();
 		addToEnumType(enumtype, otherlistelem, null);
@@ -623,7 +616,7 @@
 	}
 
 	/* create a new enumerated type */
-	 UlyssesType createEnumType(Token aRangeValue, Token anIntegerValue)
+	 Type createEnumType(Token aRangeValue, Token anIntegerValue)
 	{
 		EnumType result;
 
@@ -637,7 +630,7 @@
 	}
 
 	/* add a new enum symbol to the enumerated type */
-	 void addToEnumType(UlyssesType aTypeSymbol, Token otherRangeValue, Token anIntegerValue)
+	 void addToEnumType(Type aTypeSymbol, Token otherRangeValue, Token anIntegerValue)
 	{
 		final EnumType anEnum = (EnumType)aTypeSymbol;
 		if (anEnum.symbolTable().Defined(otherRangeValue.getText()))
@@ -685,9 +678,9 @@
 	}
 
 	/* get a named type */
-	 UlyssesType getNamedType(Token aType)
+	 Type getNamedType(Token aType)
 	{
-		UlyssesType result = null;
+		Type result = null;
 		final Identifier sym = pState.Lookup(aType);
 		if (sym == null)
 		{
@@ -705,7 +698,7 @@
 
 	/* create a list type */
 	 @SuppressWarnings("unchecked")
-	UlyssesType createListType(Token numOfElements, UlyssesType innertype)
+	Type createListType(Token numOfElements, Type innertype)
 	{
 		if (innertype == null)
 			doError(numOfElements, "List type lacks proper element type (null)");
@@ -740,7 +733,7 @@
 
 	/* create a map type */
 	 @SuppressWarnings("unchecked")
-	UlyssesType createMapType(Token numOfElements, UlyssesType mapfromtype, UlyssesType maptotype)
+	Type createMapType(Token numOfElements, Type mapfromtype, Type maptotype)
 	{
 		if (mapfromtype == null)
 			doError(numOfElements, "Map: From-type not set (null)");
@@ -772,7 +765,7 @@
 	}
 
 	/* create a tuple type */
-	 UlyssesType createTupleType(UlyssesType aType)
+	 Type createTupleType(Type aType)
 	{
 		final TupleType result = new TupleType(null);
 		addToTupleType(result, aType);
@@ -780,7 +773,7 @@
 	}
 
 	/* add inner type to tuple */
-	 void addToTupleType(UlyssesType aTypeSymbol, UlyssesType anotherType)
+	 void addToTupleType(Type aTypeSymbol, Type anotherType)
 	{
 		final TupleType tuple = (TupleType)aTypeSymbol;
 		if (anotherType != null)
@@ -789,30 +782,8 @@
 			doError("Unknown inner type in tuple");
 	}
 
-	/* create a QR type */
-	UlyssesType createQrType(Token alandmark)
-	{
-		final QrType result = new QrType(null);
-		addToQrType(result, alandmark);
-		return result;
-	}
-
-	/* add another landmark to QR type */
-	protected void addToQrType(UlyssesType aTypeSymbol, Token otherlandmark)
-	{
-		final Identifier sym = pState.Lookup(otherlandmark);
-		if (sym != null)
-		{
-			doError(otherlandmark, String.format("Redifinition of %s", otherlandmark.getText()));
-			return;
-		}
-
-		final LandmarkIdentifier lndmrk = new LandmarkIdentifier(otherlandmark, (QrType)aTypeSymbol, GetScope());
-		((QrType)aTypeSymbol).AddLandmark(lndmrk);
-	}
-
 	/* gets called after a simple type has been constructed. used to define an internal name*/
-	 void fixupSimpleType(UlyssesType aTypeSymbol)
+	 void fixupSimpleType(Type aTypeSymbol)
 	{
 		if (aTypeSymbol != null)
 			aTypeSymbol.SetupAnonymousName();
@@ -819,7 +790,7 @@
 	}
 
 	/* gets called after a simple or complex type has been constructed. used to define an internal name */
-	 void fixupComplexType(UlyssesType aTypeSymbol)
+	 void fixupComplexType(Type aTypeSymbol)
 	{
 		if (aTypeSymbol != null)
 			aTypeSymbol.SetupAnonymousName();
@@ -836,7 +807,7 @@
 			return null;
 		}
 
-		final FunctionType funtype = new FunctionType(FunctionTypeEnum.Method, new LinkedList<UlyssesType>(), null);
+		final FunctionType funtype = new FunctionType(FunctionTypeEnum.Method, new LinkedList<Type>(), null);
 		final MethodIdentifier msym = new MethodIdentifier(mname, funtype, GetScope());
 		// funtype.SetTypeIdentifier(msym); -- the type of this function doesn't have a name!
 
@@ -855,7 +826,7 @@
 
 
 	/* add a return type to a method */
-	 void setMethodReturnType(FunctionIdentifier newMethod, UlyssesType rt)
+	 void setMethodReturnType(FunctionIdentifier newMethod, Type rt)
 	{
 		if (newMethod == null)
 			return;
@@ -879,7 +850,7 @@
 	}
 
 	/* add a parameter to a method */
-	 void addMethodParameter(FunctionIdentifier newMethod, Token paramName, UlyssesType atype)
+	 void addMethodParameter(FunctionIdentifier newMethod, Token paramName, Type atype)
 	{
 		if (newMethod == null)
 			return;
@@ -932,7 +903,7 @@
 			return null;
 		}
 
-		final FunctionType atype = new FunctionType(actionType, new LinkedList<UlyssesType>(), null);
+		final FunctionType atype = new FunctionType(actionType, new LinkedList<Type>(), null);
 		final NamedActionIdentifier action = new NamedActionIdentifier(actionname, atype, GetScope());
 		// atype.SetTypeIdentifier(action); -- the type of this action doesn't have a name!
 
@@ -1275,7 +1246,7 @@
 	}
 
 	/* add block var */
-	 void addBlockVariable(Block seqList, Token varname, UlyssesType aType)
+	 void addBlockVariable(Block seqList, Token varname, Type aType)
 	{
 		if (aType == null)
 		{
@@ -1291,103 +1262,6 @@
 		}
 	}
 
-
-	 QualitativeConstraintStatement createTwoVarConstraintStatement(Token id1, Token id2, QualitativeConstraintOperation op)
-	{
-		Identifier var1 = pState.Lookup(id1);
-		if (var1 == null)
-		{
-			var1 = new ExpressionVariableIdentifier(id1.getText(), id1.getLine(), id1.getCharPositionInLine());
-			var1.SetType(new AnyType((ExpressionVariableIdentifier)var1));
-
-			GetScope().AddIdentifier(var1, null);
-
-			doWarning(id1, String.format("Free variable in qualitative constraint: '%s'.", id1.getText()));
-		}
-
-		Identifier var2 = pState.Lookup(id2);
-		if (var2 == null)
-		{
-			var2 = new ExpressionVariableIdentifier(id2.getText(), id2.getLine(), id2.getCharPositionInLine());
-			var2.SetType(new AnyType((ExpressionVariableIdentifier)var2));
-
-			GetScope().AddIdentifier(var2, null);
-
-			doWarning(id1, String.format("Free variable in qualitative constraint: '%s'.", id2.getText()));
-		}
-
-		final QualitativeConstraintStatement result = new QualitativeConstraintStatement(var1, var2, op, id1.getLine(), id1.getCharPositionInLine());
-		return result;
-	}
-
-
-	 QualitativeConstraintStatement createQualEqualConstraintStatement(Token id1, Token id2)
-	{
-		return createTwoVarConstraintStatement(id1, id2, QualitativeConstraintOperation.Equal);
-	}
-
-	 QualitativeConstraintStatement createQualArithConstraintStatement(Token id1, Token id2, Token id3, Token op)
-	{
-		Identifier var1 = pState.Lookup(id1);
-		if (var1 == null)
-		{
-			var1 = new ExpressionVariableIdentifier(id1.getText(), id1.getLine(), id1.getCharPositionInLine());
-			var1.SetType(new AnyType((ExpressionVariableIdentifier)var1));
-
-			GetScope().AddIdentifier(var1, null);
-
-			doWarning(id1, String.format("Free variable in qualitative constraint: '%s'.", id1.getText()));
-		}
-
-		Identifier var2 = pState.Lookup(id2);
-		if (var2 == null)
-		{
-			var2 = new ExpressionVariableIdentifier(id2.getText(), id2.getLine(), id2.getCharPositionInLine());
-			var2.SetType(new AnyType((ExpressionVariableIdentifier)var2));
-
-			GetScope().AddIdentifier(var2, null);
-
-			doWarning(id1, String.format("Free variable in qualitative constraint: '%s'.", id2.getText()));
-		}
-
-		Identifier var3 = pState.Lookup(id3);
-		if (var3 == null)
-		{
-			var3 = new ExpressionVariableIdentifier(id3.getText(), id3.getLine(), id3.getCharPositionInLine());
-			var3.SetType(new AnyType((ExpressionVariableIdentifier)var3));
-
-			GetScope().AddIdentifier(var3, null);
-
-			doWarning(id1, String.format("Free variable in qualitative constraint: '%s'.", id3.getText()));
-		}
-		QualitativeConstraintOperation operation;
-		switch (op.getType())
-		{
-		case ooaParser.T_SUM:
-			operation = QualitativeConstraintOperation.Sum;
-			break;
-		case ooaParser.T_DIFF:
-			operation = QualitativeConstraintOperation.Diff;
-			break;
-		case ooaParser.T_PROD:
-			operation = QualitativeConstraintOperation.Prod;
-			break;
-		default:
-			doError(op, String.format("'%s' unknown operation", op.getText()));
-			return null;
-		}
-
-		final QualitativeConstraintStatement result = new QualitativeConstraintStatement(var1, var2, var3, operation, id1.getLine(), id1.getCharPositionInLine());
-		return result;
-	}
-
-	 QualitativeConstraintStatement createQualDerivConstraintStatement(Token id1, Token derivid)
-	{
-		return createTwoVarConstraintStatement(id1, derivid, QualitativeConstraintOperation.Deriv);
-	}
-
-
-
 	/* creates a general binary operator without any children */
 	 BinaryOperator createBinaryOperator(ExpressionKind akind)
 	{
@@ -1424,7 +1298,7 @@
 	}
 
 	/* add a bound variable to the quantifier */
-	 void addBoundVarToQuantifierExpression(Quantifier result, Token id, UlyssesType id_type)
+	 void addBoundVarToQuantifierExpression(Quantifier result, Token id, Type id_type)
 	{
 		/*note: this might be a bit harsh, but for now it's easier to demand uniquely named vars,
                 without any hiding. Could be fixed in searching only the first resolve level for
@@ -1554,7 +1428,7 @@
 	}
 
 	/* add list comprehension variable */
-	 void addListComprVar(ListConstructor result, Token id, UlyssesType t1)
+	 void addListComprVar(ListConstructor result, Token id, Type t1)
 	{
 		final Identifier sym = pState.Lookup(id);
 		if (sym != null)
@@ -1636,7 +1510,7 @@
 	}
 
 	/* add local set compr. variable */
-	 void addSetComprVar(SetConstructor _set, Token id1, UlyssesType t1)
+	 void addSetComprVar(SetConstructor _set, Token id1, Type t1)
 	{
 		final Identifier sym = pState.Lookup(id1);
 		if (sym != null)
@@ -1739,59 +1613,8 @@
 		return new ObjectConstructor(atype, aname.getText(), anid.getLine(), anid.getCharPositionInLine());
 	}
 
-
-	 void setQualitativeDerivDec(QValConstructor result)
-	{
-		result.SetDerivation(QValDeriv.Dec);
-	}
-
-	 void setQualitativeDerivInc(QValConstructor result)
-	{
-		result.SetDerivation(QValDeriv.Inc);
-	}
-
-	 void setQualitativeDerivSteady(QValConstructor result)
-	{
-		result.SetDerivation(QValDeriv.Steady);
-	}
-
-	 void setQualitativeDerivDontCare(QValConstructor result)
-	{
-		result.SetDerivation(QValDeriv.DonTCare);
-	}
-
-	 void setQualitativeValueRangeInfinity(QValConstructor result, boolean p)
-	{
-		throw new NotImplementedException();
-	}
-
-	 void setQualitativeValueRange(QValConstructor result, Expression expr2)
-	{
-		result.AddRange(expr2);
-	}
-
-	 void setQualitativeValueInfinity(QValConstructor result, boolean minus)
-	{
-		throw new NotImplementedException();
-	}
-
-	 void setQualitativeValueLandmark(QValConstructor result, Expression expr)
-	{
-		result.SetValue(expr);
-	}
-
-	 void setQualitativeValueDontCare(QValConstructor result)
-	{
-		throw new NotImplementedException();
-	}
-
-	 QValConstructor createQualitativeValue(Token aval)
-	{
-		return new QValConstructor(aval.getLine(), aval.getCharPositionInLine());
-	}
-
 	/* add a local variable to a named action */
-	 void addLocalVariableToNamedAction(FunctionIdentifier newMethod, Token id1, UlyssesType t1)
+	 void addLocalVariableToNamedAction(FunctionIdentifier newMethod, Token id1, Type t1)
 	{
 		if (t1 == null)
 		{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaCheckObjectRefsConstant.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaCheckObjectRefsConstant.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaCheckObjectRefsConstant.java	(revision 9)
@@ -45,7 +45,7 @@
 import org.momut.ooas.ast.types.MapType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.TupleType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserError;
 import org.momut.ooas.parser.ParserMessage;
 import org.momut.ooas.parser.ParserState;
@@ -137,7 +137,7 @@
 	}
 
 	private void check(TupleType type) {
-		for (final UlyssesType t: type.innerTypes())
+		for (final Type t: type.innerTypes())
 			switch (t.kind()) {
 			case ListType:
 				check( (ListType) t);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooa.tokens
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooa.tokens	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooa.tokens	(revision 9)
@@ -1,137 +1,126 @@
-T__118=118
-T__119=119
-T__120=120
-T__121=121
-T__122=122
-T__123=123
-T__124=124
-T__125=125
-T__126=126
-T__127=127
-FLOAT_OR_INT_OR_RANGE=4
-LINE_COMMENT=5
-T_ABORT=6
-T_ABS=7
-T_ACTIONS=8
-T_AND=9
-T_ASSIGNMENT=10
-T_AUTOCONS=11
-T_BAR=12
-T_BIIMPLIES=13
-T_BOOL=14
-T_BREAK=15
-T_CARD=16
-T_CBRL=17
-T_CBRR=18
-T_CHAR=19
-T_COLON=20
-T_COMMA=21
-T_COMMENT=22
-T_CONC=23
-T_CONSTS=24
-T_CONT=25
-T_CTRL=26
-T_DCONC=27
-T_DERIV=28
-T_DIFF=29
-T_DIGIT=30
-T_DINTER=31
-T_DIV=32
-T_DO=33
-T_DOM=34
-T_DOMRESBY=35
-T_DOMRESTO=36
-T_DUNION=37
-T_ELEMS=38
-T_ELSE=39
-T_END=40
-T_EQUAL=41
-T_EXISTS=42
-T_FALSE=43
-T_FLOAT=44
-T_FLOATNUMBER=45
-T_FOLDLR=46
-T_FOLDRL=47
-T_FORALL=48
-T_GREATER=49
-T_GREATEREQUAL=50
-T_HEAD=51
-T_IDENTIFIER=52
-T_IDIV=53
-T_IF=54
-T_IMPLIES=55
-T_IN=56
-T_INDS=57
-T_INFTY=58
-T_INT=59
-T_INTER=60
-T_INTNUMBER=61
-T_KILL=62
-T_LEN=63
-T_LESS=64
-T_LESSEQUAL=65
-T_LETTER=66
-T_LIST=67
-T_LPAREN=68
-T_LSQPAREN=69
-T_MAP=70
-T_MAPS=71
-T_MERGE=72
-T_METHODS=73
-T_MINUS=74
-T_MOD=75
-T_MUNION=76
-T_NEW=77
-T_NIL=78
-T_NONDET=79
-T_NOT=80
-T_NOTEQUAL=81
-T_OBS=82
-T_OD=83
-T_OF=84
-T_OR=85
-T_POINT=86
-T_POW=87
-T_PRIMED=88
-T_PRIO=89
-T_PROD=90
-T_QUANTITY=91
-T_RANGETO=92
-T_REQUIRES=93
-T_RNG=94
-T_RNGRESBY=95
-T_RNGRESTO=96
-T_RPAREN=97
-T_RSQPAREN=98
-T_SELF=99
-T_SEMICOLON=100
-T_SEQMOD_MAPOVERRIDE=101
-T_SET=102
-T_SKIP=103
-T_STATIC=104
-T_STRINGLITERAL=105
-T_SUBSET=106
-T_SUM=107
-T_SYSTEM=108
-T_TAIL=109
-T_THEN=110
-T_TO=111
-T_TRUE=112
-T_TYPES=113
-T_UNION=114
-T_VAR=115
-T_WITH=116
-T_WS=117
-'&'=118
-'('=68
-')'=97
-'-'=74
-'::'=119
-']|'=120
-'as'=121
-'begin'=122
-'dec'=123
-'inc'=124
-'qval'=125
-'steady'=126
-'|['=127
+T__116=116
+T__117=117
+T__118=118
+T__119=119
+T__120=120
+T__121=121
+FLOAT_OR_INT_OR_RANGE=4
+LINE_COMMENT=5
+T_ABORT=6
+T_ABS=7
+T_ACTIONS=8
+T_AND=9
+T_ASSIGNMENT=10
+T_AUTOCONS=11
+T_BAR=12
+T_BIIMPLIES=13
+T_BOOL=14
+T_BREAK=15
+T_CARD=16
+T_CBRL=17
+T_CBRR=18
+T_CHAR=19
+T_COLON=20
+T_COMMA=21
+T_COMMENT=22
+T_CONC=23
+T_CONSTS=24
+T_CTRL=25
+T_DCONC=26
+T_DERIV=27
+T_DIFF=28
+T_DIGIT=29
+T_DINTER=30
+T_DIV=31
+T_DO=32
+T_DOM=33
+T_DOMRESBY=34
+T_DOMRESTO=35
+T_DUNION=36
+T_ELEMS=37
+T_ELSE=38
+T_END=39
+T_EQUAL=40
+T_EXISTS=41
+T_FALSE=42
+T_FLOAT=43
+T_FLOATNUMBER=44
+T_FOLDLR=45
+T_FOLDRL=46
+T_FORALL=47
+T_GREATER=48
+T_GREATEREQUAL=49
+T_HEAD=50
+T_IDENTIFIER=51
+T_IDIV=52
+T_IF=53
+T_IMPLIES=54
+T_IN=55
+T_INDS=56
+T_INFTY=57
+T_INT=58
+T_INTER=59
+T_INTNUMBER=60
+T_KILL=61
+T_LEN=62
+T_LESS=63
+T_LESSEQUAL=64
+T_LETTER=65
+T_LIST=66
+T_LPAREN=67
+T_LSQPAREN=68
+T_MAP=69
+T_MAPS=70
+T_MERGE=71
+T_METHODS=72
+T_MINUS=73
+T_MOD=74
+T_MUNION=75
+T_NEW=76
+T_NIL=77
+T_NONDET=78
+T_NOT=79
+T_NOTEQUAL=80
+T_OBS=81
+T_OD=82
+T_OF=83
+T_OR=84
+T_POINT=85
+T_POW=86
+T_PRIMED=87
+T_PRIO=88
+T_PROD=89
+T_RANGETO=90
+T_REQUIRES=91
+T_RNG=92
+T_RNGRESBY=93
+T_RNGRESTO=94
+T_RPAREN=95
+T_RSQPAREN=96
+T_SELF=97
+T_SEMICOLON=98
+T_SEQMOD_MAPOVERRIDE=99
+T_SET=100
+T_SKIP=101
+T_STATIC=102
+T_STRINGLITERAL=103
+T_SUBSET=104
+T_SUM=105
+T_SYSTEM=106
+T_TAIL=107
+T_THEN=108
+T_TO=109
+T_TRUE=110
+T_TYPES=111
+T_UNION=112
+T_VAR=113
+T_WITH=114
+T_WS=115
+'&'=116
+'('=67
+')'=95
+'::'=117
+']|'=118
+'as'=119
+'begin'=120
+'|['=121
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g	(revision 9)
@@ -1,1242 +1,1137 @@
-/*  
-			ANTLR Grammar for OO-Action Systems
-			 (C) Willibald Krenn, 2009 - 2015
-
-
-  Notes
-  ~~~~~
-  	(*) No recursion
-  	(*) float acutally is fixed-point!
-	(*) Named actions can only be "called" within the do-od block 
-	(*) Methods can be called from within an action and a method.
-	    Attention: Mutual Recursion not supported!
-
-  FixMe
-  ~~~~~
-  	(*) List-Enum: Length Restriction! (Defaults to 500 for now)
-	(*) subseteq missing
-	
-
-			 
-  History
-  ~~~~~~~
-  
-  Changes 1.06 to 1.07
-    ~ move to org.momut naming
-  
-  Changes 1.05 to 1.06
-  	~ make action blocks more capable, add the projection feature already available in the do-od block.
-	- disable support for continuous actions
-  
-  Changes 1.04 to 1.05
-  	~ Fix bug with set constuctor: set with only one element produced wrong AST (inner element wasn't added correctly).
-  
-  Changes 1.03 to 1.04
-        ~ Move to JAVA
-  
-  Changes 1.02 to 1.03
-  	+ option to name objects when they are constructed: new (<class>,"<name>")
-  
-  Changes 1.00 to 1.02
-  	+ cast operator for objects ( ... as <typename> )
-
-  Changes 1.00 to 1.01
-  	+ enum-type with fixed integer values
-  
-  Changes 0.99b to 1.00
-  	+ constant section added (consts a=4; b=4)
-  	+ limits of simple types and lists can be const
-  	+ local vars allowed in methods (... = var... begin...end)
-  	+ prioritized composition on statement level
-  	+ skip in do-od block
-  	+ filter expression in do-od block sequential var statement
-  	+ fold operator
-  	
-  Changes 0.99 to 0.99b
-        - disabled sequential composition of action systems (remains in grammar, though out-commented)
-        
-  Changes 0.98 to 0.99
-        ~ changed QR syntax.
-  
-  Changes 0.97 to 0.98
-  	~ changed syntax for list and set comprehension
-  	  list comprehension:
-  	  '[' expression '|' 'var' id ':' type (';' id ':' type)* ('&' expression)? ']'
-  	  set comprehension
-  	  '{' expression '|' 'var' id ':' type (';' id ':' type)* ('&' expression)? '}'
-  	  
-  	  Usage: defined variables will sweep over value-range. If the latter expression
-  	  (after '&') evaluates to true (hence this expression must return a bool) with
-  	  the current valuation of the defined vars, the values are used to evaluate the
-  	  first expression, which has to return a value of the correct type.
-  	  
-  	  Example:
-  	  type
-  	    myint = int [0..300000];
-  	    mytuple = (myint, myint)
-  	  var
-  	     l_tuple : list of mytuple = [nil];
-  	     l_int : list of myint = [nil];
-  	    ...
-  	      l_int := [l_tuple[x][0] | var x: myint & x < len l_tuple ]
-  	  
-  	  
-  	+ list element access by '[int]' allowed!
-
-
-  Changes 0.96 to 0.97
-  	+ tuple-type initialization now properly supported
-  	+ binary operator precedence handling
-  	+ local variables in named actions
-  	+ support for (<expression>).<reference> and
-  	              (<expression>).<accessExpression>
-  	~ conditional expression: End required.
-  	- remove support for power-operator 
-  	  (may be we need to do calculation backwards)
-
-  Changes 0.95 to 0.96
-  	~ string literals now ".."
-  	~ priming of identifier access only supported at the end of the
-  	  expression
-
-  Changes 0.9 to 0.95
-  	+ composition of action systems in 'system' block
-  	~ Produce C# code
-  	~ Operator Precedence
-  	~ vars in action composition
-  	~ forall/extists now with colon instead of in
-
-
-  Earlier changes  removed.
-			 
-*/
-
-
-grammar ooa;
-
-options {	
-  k = 2;
-  superClass = ooaCustomParser;
-}
-
-
-@lexer::header
-{
-/*
-    Ulysses OO-Action System Parser
-    
-    Copyright Graz University of Technology 2009
-    Copyright AIT Austrian Institute of Technology 2013
- */
- package org.momut.ooas.parser;
-}
-
-
-@parser::header
-{
- /*
-    Ulysses OO-Action System Parser
-
-    Copyright Graz University of Technology 2009
-    Copyright AIT Austrian Institute of Technology 2013
- */
- package org.momut.ooas.parser;
-
- import org.momut.ooas.ast.expressions.*;
- import org.momut.ooas.ast.statements.*;
- import org.momut.ooas.ast.identifiers.*;
- import org.momut.ooas.ast.types.*;
- import org.momut.ooas.ast.types.FunctionType.FunctionTypeEnum;
-}
-
-ooActionSystems 
-	:	{initializeTopLevelParserState();}
-
-	         (T_CONSTS namedConstList)?
-		
-		 T_TYPES 
-		  	namedTypeList
-		 T_SYSTEM
-			comp=asTypeComposition[null]
-			{fixUpRun(comp);}
-	;
-
-
-
-//
-//  ------------   named consts  ------------ 
-//
-
-namedConstList
-	:	namedConst (T_SEMICOLON namedConst)*
-	;
-	
-namedConst
-	:	aName=T_IDENTIFIER
-		T_EQUAL
-		anExpr=expression
-		{addNamedConst(aName,anExpr);}
-	;
-
-
-//
-//  ------------   named types  ------------ 
-//
-namedTypeList 
-	:	namedType (T_SEMICOLON namedType)*
-	;
-
-namedType 
-	:	aName=T_IDENTIFIER 
-		T_EQUAL 
-		(
-			aType=complexType 	 {createNamedType(aName,aType);}
-		|	anOoaType=ooActionSystem {createNamedType(aName,anOoaType);}
-		)		
-		
-	;
-
-
-asTypeComposition [IdentifierList top]
-	returns [IdentifierList prioList]
-	:  	{prioList = new PrioIdentifierList(top);}
-		asTypeCompositionParallel[prioList]  (T_PRIO asTypeCompositionParallel[prioList] )*
-	;
-
-asTypeCompositionParallel [IdentifierList top]
-	:  	{IdentifierList parList = new NondetIdentifierList(top);}
-		asTypeCompositionSequential[parList] (T_NONDET asTypeCompositionSequential[parList])*
-	;
-
-asTypeCompositionSequential [IdentifierList top]
-	:  	{IdentifierList seqList = new SeqIdentifierList(top);}
-		asTypeCompositionBlockParen[seqList] //(T_SEMICOLON asTypeCompositionBlockParen[seqList])*
-	;
-
-asTypeCompositionBlockParen [IdentifierList top]
-	: T_LPAREN asTypeComposition[top] T_RPAREN
-	| aName=T_IDENTIFIER {addToIdentifierList(top,aName);}
-	;
-	
-
-//
-//  ------------   basic types    ------------ 
-//
-
-complexType 
-	returns [UlyssesType aTypeSymbol]
-	@init{ 
-		aTypeSymbol = null;
-		alandmark = null;
-	}	
-	:	T_LIST  T_LSQPAREN numOfElements=(T_INTNUMBER|T_IDENTIFIER) T_RSQPAREN T_OF  innertype=complexType 
-			{aTypeSymbol = createListType(numOfElements,innertype);}
-
-		// list type with predefined elements (dupes of each element as many as needed) FIXME: Length Restriction!
-	|	T_LSQPAREN alistelem=T_IDENTIFIER {aTypeSymbol = createListEnumType(alistelem);} 
-			(T_COMMA otherlistelem=T_IDENTIFIER {addToListEnumType(aTypeSymbol,otherlistelem);})* T_RSQPAREN // set of identifiers..
-
-		// maps do not really need a length restriction, as simpleType already is restricted..
-	|	T_MAP   (T_LSQPAREN numOfElements=(T_INTNUMBER|T_IDENTIFIER) T_RSQPAREN)? mapfromtype=simpleType T_TO maptotype=complexType 
-			{aTypeSymbol = createMapType(numOfElements,mapfromtype,maptotype);}
-		// quantity space
-	|	T_QUANTITY T_OF	T_LSQPAREN (alandmark=T_IDENTIFIER| alandmark=T_MINUS T_INFTY) {aTypeSymbol = createQrType(alandmark);} 
-			(T_COMMA (otherlandmark=T_IDENTIFIER|otherlandmark=T_INFTY) {addToQrType(aTypeSymbol,otherlandmark);})* T_RSQPAREN 
-		// tuple
-	|	 T_LPAREN aType=complexType {aTypeSymbol = createTupleType(aType);} 
-			(T_COMMA anotherType=complexType {addToTupleType(aTypeSymbol,anotherType);})*  T_RPAREN
-		
-		// some simple type (note that this includes identifiers, which may be complex object types..)	
-	|	r=simpleType {aTypeSymbol = r;}
-	;
-	finally
-		{fixupComplexType(aTypeSymbol);}
-
-	
-simpleType 
-	returns [UlyssesType aTypeSymbol]
-	@init{ 
-		aTypeSymbol = null;
-	}
-	:	T_BOOL  {aTypeSymbol = createBoolType();}
-	
-		// ints plus subtypes
-	|	T_INT T_LSQPAREN rangeLow=(T_INTNUMBER|T_INFTY|T_IDENTIFIER) T_RANGETO rangeHigh=(T_INTNUMBER|T_INFTY|T_IDENTIFIER) T_RSQPAREN  
-			{aTypeSymbol = createIntType(rangeLow,rangeHigh);}
-			
-		// floats plus subtypes
-	|	T_FLOAT  T_LSQPAREN rangeLow=(T_FLOATNUMBER|T_INFTY|T_IDENTIFIER) T_RANGETO rangeHigh=(T_FLOATNUMBER|T_INFTY|T_IDENTIFIER) T_RSQPAREN 
-			{aTypeSymbol = createFloatType(rangeLow,rangeHigh);}
-			
-		// char
-	|	T_CHAR {aTypeSymbol = createCharType();}
-		
-		// simple type, domain restricted to the values within the given set. (operators supported: equal, not equal) - may be casted to integer if
-		// explicit int values are given
-	|	T_CBRL aRangeValue=T_IDENTIFIER (T_EQUAL optVal=T_INTNUMBER)? {aTypeSymbol = createEnumType(aRangeValue, optVal);} 
-			(T_COMMA otherRangeValue=T_IDENTIFIER (T_EQUAL otherOptVal=T_INTNUMBER)? {addToEnumType(aTypeSymbol,otherRangeValue,otherOptVal); otherOptVal=null;})* T_CBRR
-			
-	|	aType=T_IDENTIFIER {aTypeSymbol = getNamedType(aType);} // alias could be simple type - otherwise, it's a complex type!!
-	;
-	finally
-		{fixupSimpleType(aTypeSymbol);}
-
-
-
-
-
-
-ooActionSystem 
-	returns [OoActionSystemType aTypeSymbol]
-	@init{ 
-		boolean autoCons = false; 
-		aTypeSymbol = null;
-		refinesSystemName = null;
-	}
-	:      (T_AUTOCONS {autoCons = true;})? 
-		T_SYSTEM (T_LPAREN refinesSystemName=T_IDENTIFIER T_RPAREN)?		 
-		{aTypeSymbol = createOoaType(refinesSystemName,autoCons);}
-		'|['
-			(T_VAR attrList)?
-			(T_METHODS methodList)?
-			(T_ACTIONS namedActionList)?
-			(T_DO (bl=actionBlock[null] {addActionBlock(aTypeSymbol,bl);})? T_OD)?
-		']|'
-	;
-	finally
-		{fixupOoaType(aTypeSymbol);}
-	
-
-
-	
-//
-//  ------------   variables (objects and simple types)    ------------ 
-//
-attrList
-	:	{BeginParsingAttributes();}
-	 	attr (T_SEMICOLON attr)*
-	;
-	finally {
-		EndParsingAttributes();
-	}
-
-attr
-	@init{ 
-		boolean isStatic = false; 
-		boolean isCtr = false;
-		boolean isObs = false;				
-		
-	}
-	: 	(T_STATIC {isStatic = true;})? (T_OBS {isObs = true;} | T_CTRL {isCtr = true;})? 
-		varname=T_IDENTIFIER  T_COLON aType=complexType (T_EQUAL anExpr=expression)?
-		{createAttribute(varname, isStatic, isObs, isCtr, aType, anExpr);}
-	;
-
-//
-//  ------------   methods    ------------ 
-//	
-methodList 
-	: 	method (T_SEMICOLON method)*
-	;
-
-method	
-	@init {	
-		FunctionIdentifier newMethod = null;
-	}
-	:	mname=T_IDENTIFIER  {newMethod = createMethodSymbol(mname);}
-		(T_LPAREN methodParameterList[newMethod]  T_RPAREN)? 
-		(T_COLON rt=complexType {setMethodReturnType(newMethod,rt);})?	// actions can not have a return type!!					
-		 T_EQUAL 
-		 ( T_VAR localActionVars[newMethod] 'begin')?                                   // var here always means vars of the method. This disables the var of the actionBody!
-		                                                                                                                 // If that is wanted, the user needs to use parens... Alternatively we could force the "begin" which feels cumbersome.
-		                                                                                                                 // Using a semantic predicate here triggers a bug in the codegen it seems..
-		statements=actionBody[null] {addMethodBody(newMethod,statements);} 
-		T_END		
-	;
-	finally
-		{popResolveStack(newMethod);}
-
-methodParameterList[FunctionIdentifier newMethod]
-	:	 paramName=T_IDENTIFIER T_COLON atype=complexType {addMethodParameter(newMethod,paramName,atype);}
-			(T_COMMA otherparam=T_IDENTIFIER T_COLON othertype=complexType
-			{addMethodParameter(newMethod,otherparam,othertype);} )*		
-	;
-
-
-//
-//  ------------   named, anonymous actions    ------------ 
-//	
-
-namedActionList 
-	:	namedAction (T_SEMICOLON namedAction)*
-	;
-
-namedAction 
-	@init {
-		FunctionTypeEnum actionType;
-		FunctionIdentifier newAction = null;
-	}
-	:	//_CONT cactionname=T_IDENTIFIER  {newAction = createNamedContinuousAction(cactionname, FunctionTypeEnum.Continuous);}
-		//T_LPAREN methodParameterList[newAction]  T_RPAREN)? 
-		//_EQUAL	constraints=continuousActionBody {addContinuousActionBody(newAction,constraints);}
-		
-//	|	
-		{actionType = FunctionTypeEnum.Internal;}
-		(T_CTRL {actionType = FunctionTypeEnum.Controllable;}| T_OBS {actionType = FunctionTypeEnum.Observable;}| )
-		 actionname=T_IDENTIFIER  {newAction = createNamedAction(actionname,actionType);}
-		(T_LPAREN methodParameterList[newAction]  T_RPAREN)? 
-		T_EQUAL	
-		(T_VAR localActionVars[newAction] )? 
-		body=discreteActionBody  
-		{addActionBody(newAction,body);}
-	;	
-	finally
-		{popResolveStack(newAction);}
-
-
-localActionVars[FunctionIdentifier newMethod]
-	:	// a named, discrete action may have local variables.
-		id1=T_IDENTIFIER T_COLON t1=complexType  {addLocalVariableToNamedAction(newMethod,id1,t1);}
-		 (T_SEMICOLON id2=T_IDENTIFIER T_COLON t2=complexType
-		 {addLocalVariableToNamedAction(newMethod,id2,t2);} )*
-	;	
-
-
-
-anonymousAction 
-	returns [GuardedCommand result]
-	:	//a=continuousActionBody {result = a;}
-	//|	
-		b=discreteActionBody {result = b;}
-	;
-
-continuousActionBody 
-	returns [GuardedCommand result]
-	@init {
-		result = null;
-	}
-	:	T_CONT T_REQUIRES expr=expression T_COLON
-			bdy=qualConstraintList	
-		T_END
-		{result = createGuardedCommandStatement(expr,bdy,true);}
-	;
-	
-qualConstraintList
-	returns [Block result]
-	@init{
-		result = createSeqBlock(null);
-		pushBlockToResolveStack(result);
-	}
-	:	stmt=qualConstraint {addToBlockList(result,stmt);}
-		(T_COMMA ostmt=qualConstraint {addToBlockList(result,ostmt);})*
-	;
-	finally
-		{popBlockFromResolveStack(result);}
-
-
-
-qualConstraint
-	returns [QualitativeConstraintStatement result]
-	:	id1=T_IDENTIFIER T_EQUAL 
-		(	T_DERIV derivid=T_IDENTIFIER 
-			{result = createQualDerivConstraintStatement(id1,derivid);}
-		
-	        |	
-	        	id2=T_IDENTIFIER 
-	        	( 
-	        		(	op=T_SUM
-	        		|	op=T_DIFF
-	        		|	op=T_PROD
-	        		) 
-	        		id3=T_IDENTIFIER
-	        		{result = createQualArithConstraintStatement(id1,id2,id3,op);}
-	        	|
-	        		{result = createQualEqualConstraintStatement(id1,id2);}
-	        	)
-	        )
-	;
-
-
-	
-
-discreteActionBody 
-	returns [GuardedCommand result]
-	@init{
-		result = null;
-	}
-	:
-		{result = createGuardedCommandStatement(); pushBlockToResolveStack(result);}	
-		T_REQUIRES expr=expression T_COLON
-			bdy=actionBody[null]
-		T_END
-		{addExprAndBlockToGuardedCommand(result,expr,bdy);}
-	;
-	finally
-		{popBlockFromResolveStack(result);}
-	
-	
-//
-//  ------------   do-od block    ------------ 
-//	
-
-actionBlock [Block top]
-	returns [Block prioList]
-	:  	{prioList = createPrioBlock(top);  pushBlockToResolveStack(prioList);}
-		 actionBlockParallel[prioList] (T_PRIO actionBlockParallel[prioList])* 
-	;	
-	finally
-		{popBlockFromResolveStack(prioList);}
-	
-actionBlockParallel [Block top]
-	@init 	{	Block parList = createNondetBlock(top); 
-		 	pushBlockToResolveStack(parList);
-		}
-	:	actionBlockSequential[parList] (T_NONDET actionBlockSequential[parList])*
-	;	
-	finally
-		{popBlockFromResolveStack(parList);}
-// atomic sequential composition of actions	
-actionBlockSequential [Block top]
-	@init  	{
-			Block seqList = createSeqBlock(top);
-			pushBlockToResolveStack(seqList);
-		}
-	:	 (T_VAR syms=blockvarlist[seqList] ('&' sexpr=expression {addSeqBlockExpression(seqList,sexpr);} )? T_COLON )? 
-		 actionBlockParen[seqList] (T_SEMICOLON actionBlockParen[seqList])*
-	;	
-	finally
-		{popBlockFromResolveStack(seqList);}
-
-actionBlockParen [Block top]
-	:	T_LPAREN actionBlock[top] T_RPAREN
-	|	anonymousOrNamedAction[top]
-	;	
-
-anonymousOrNamedAction [Block top]
-	:	gcmd=anonymousAction {addToBlockList(top,gcmd);}
-	|	aname=T_IDENTIFIER 
-	         (T_LPAREN  m_params=methodCallParams T_RPAREN)? 
-	         (amap=(T_FOLDLR|T_FOLDRL) '(' amapexpr=expression ')')?
-		{addNamedActionCallToBlockList(top,aname,m_params,amap,amapexpr);}
-	|	T_SKIP	{addSkipStatementToBlockList(top);}
-	;
-
-
-blockvarlist [Block seqList]
-	:	blockvar[seqList]  (T_SEMICOLON blockvar[seqList] )*
-	;
-
-blockvar [Block seqList]
-	: 	varname=T_IDENTIFIER  T_COLON aType=complexType 
-		{addBlockVariable(seqList,varname,aType);}
-	;
-
-		
-
-//
-//  ------------  action body  of non-continuous actions ------------ 
-//
-	
-actionBody[Block top]
-	returns [Block result]
-	:	{result = createPrioBlock(top); pushBlockToResolveStack(result);}
-		actionBodyParallel[result] (T_PRIO actionBodyParallel[result])? 
-	;  
-	finally
-		{popBlockFromResolveStack(result);}
-	
-actionBodyParallel[Block top]
-	returns [Block result]
-	:	{result = createNondetBlock(top); pushBlockToResolveStack(result);}
-		actionBodySequential[result]
-		(T_NONDET olst=actionBodySequential[result])*
-	;	
-	finally
-		{popBlockFromResolveStack(result);}
-
-	
-// seq binds stronger than nondet, i.e. a;b;cd;e is read as (a;b;c)[](d;e)	
-actionBodySequential[Block top]
-	returns [SeqBlock result]
-	:	{result = createSeqBlock(top); pushBlockToResolveStack(result);}
-		(T_VAR syms=blockvarlist[result] ('&' sexpr=expression {addSeqBlockExpression(result,sexpr);} )? T_COLON )?
-		 actionBodyParen[result] (T_SEMICOLON actionBodyParen[result])*
-	;	
-	finally
-		{popBlockFromResolveStack(result);}
-	
-	
-actionBodyParen [SeqBlock top]
-	:	 T_LPAREN actionBody[top]  T_RPAREN
-	|	stmt=statement
-		{addToStatementList(top,stmt);}
-	;	
-
-
-statement
-	returns [Statement result]
-	@init {
-		boolean popFromResolveStack = false;
-		result = null;
-	}
-	:	T_ABORT {result = createAbortStatement();}
-	|	T_SKIP	{result = createSkipStatement();}
-	|	T_BREAK {result = createBreakStatement();}
-	|	T_KILL T_LPAREN aname=(T_IDENTIFIER | T_SELF) T_RPAREN	{result = createKillStatement(aname);}
-	| 	gc=discreteActionBody {result = gc;}
-	|	aqname=reference 
-			   ( 	    // single assignment			   	    
-			   	    T_ASSIGNMENT  aexp=expression  {result = createSingleAssignmentStatement(aqname,aexp);}
-			           (T_WITH ndexp=expression {addConstraintToAssignment(result,ndexp);})? // nondet assignment
-			           
-			           // multi assignment
-				|  {result = createMultipleAssignmentStatementLHS(aqname);}
-				  (T_COMMA malhs=reference  {addMultipleAssignmentStatementLHS(result,malhs);})+ 
-				   T_ASSIGNMENT 
-				   {pushAssignmentOnResolveStack(result); popFromResolveStack = true;} 
-				   mexp=expression
-				   {addMutlipleAssignmentStatementRHS(result,mexp);}
-				   (T_COMMA mexp2=expression {addMutlipleAssignmentStatementRHS(result,mexp2);})+
-				   (T_WITH ndex2=expression {addConstraintToAssignment(result,ndex2);})? // nondet assignment
-				   
-				   // just a call of a method.
-				| {result = createCallStatement(aqname);}
-		     	    )
-	;	
-	finally {
-	       if (popFromResolveStack == true)
-	            popAssignmentOffResolveStack(result);
-	}
-
-//
-//  ------------   expression    ------------ 
-//
-expression
-	returns [Expression expr]
-	@init{
-		ArrayList<BinaryOperator> operators = new ArrayList<BinaryOperator>();
-		ArrayList<Expression> expressions = new ArrayList<Expression>();		
-	}
-	:	left=atomExpression	
-		{expressions.add(left);}
-		( op=binoperator
-		  right=atomExpression
-		  {
-		  	if (op != null) {
-		  		operators.add(op);
-		  		expressions.add(right);
-		  	}
-		  }
-		)*
-		{expr = createPrecedenceTree(expressions,operators);}
-	;
-
-
-binoperator	
-	returns [BinaryOperator binop]
-	:	T_BIIMPLIES
-		{binop = createBinaryOperator(ExpressionKind.biimplies);}
-	|	T_GREATER	
-		{binop = createBinaryOperator(ExpressionKind.greater);}
-	|	T_GREATEREQUAL
-		{binop = createBinaryOperator(ExpressionKind.greaterequal);}
-	|	T_LESS	
-		{binop = createBinaryOperator(ExpressionKind.less);}
-	|	T_LESSEQUAL
-		{binop = createBinaryOperator(ExpressionKind.lessequal);}
-	|	T_EQUAL			// bool, numeric, char, lists, maps
-		{binop = createBinaryOperator(ExpressionKind.equal);}
-	|	T_NOTEQUAL		// bool, numeric, char, lists, maps
-		{binop = createBinaryOperator(ExpressionKind.notequal);}
-	|	T_IMPLIES
-		{binop = createBinaryOperator(ExpressionKind.implies);}
-	|	T_MINUS	
-		{binop = createBinaryOperator(ExpressionKind.minus);}
-	|	T_SUM	
-		{binop = createBinaryOperator(ExpressionKind.sum);}
-	|	T_IN T_SET?	// A * list of A -> bool
-		{binop = createBinaryOperator(ExpressionKind.elemin);}
-	|	T_NOT T_IN T_SET?	// A * list of A -> bool
-		{binop = createBinaryOperator(ExpressionKind.notelemin);}
-	|	T_SUBSET	// list of A * list of A -> bool (does not respect dupes)
-		{binop = createBinaryOperator(ExpressionKind.subset);}
-	|	T_OR
-		{binop = createBinaryOperator(ExpressionKind.or);}
-	|	T_DIV
-		{binop = createBinaryOperator(ExpressionKind.div);}
-	|	T_PROD	
-		{binop = createBinaryOperator(ExpressionKind.prod);}
-	|	T_IDIV	
-		{binop = createBinaryOperator(ExpressionKind.idiv);}
-	|	T_MOD	
-		{binop = createBinaryOperator(ExpressionKind.mod);}
-	|	T_UNION		// list of A * list of A -> list of A (does not respect dupes)
-		{binop = createBinaryOperator(ExpressionKind.union);}
-	|	T_DIFF		// list of A * list of A -> list of A (does not respect dupes)
-		{binop = createBinaryOperator(ExpressionKind.diff);}
-	|	T_INTER		// list of A * list of A -> list of A (does not respect dupes)
-		{binop = createBinaryOperator(ExpressionKind.inter);}
-	|	T_AND  
-		{binop = createBinaryOperator(ExpressionKind.and);}				
-	|	T_POW  
-		{binop = createBinaryOperator(ExpressionKind.pow);}				
-	|	T_CONC	// list of A * list of A -> list of A
-		{binop = createBinaryOperator(ExpressionKind.conc);}			
-	|	T_DOMRESBY	// list of A * map A to B -> map A to B
-		{binop = createBinaryOperator(ExpressionKind.domresby);}
-	|	T_DOMRESTO	// list of A * map A to B -> map A to B
-		{binop = createBinaryOperator(ExpressionKind.domresto);}
-	|	T_RNGRESBY	// map A to B * list of B -> map A to B
-		{binop = createBinaryOperator(ExpressionKind.rngresby);}
-	|	T_RNGRESTO	// map A to B * list of B -> map A to B
-		{binop = createBinaryOperator(ExpressionKind.rngresto);}
-	|	T_MUNION	// map A to B * map A to B -> map A to B
-		{binop = createBinaryOperator(ExpressionKind.munion);}
-	|	T_SEQMOD_MAPOVERRIDE	// list of A * map int to A -> list of A or
-					// map A to B * map A to B -> map A to B
-		{binop = createBinaryOperator(ExpressionKind.seqmod_mapoverride);}
-	;
-
-	
-atomExpression
-	returns [Expression expr]
-	@init {
-		expr = null;
-	}
-	:	(unexpr=op_un? (   
-		     e=identifierExpression
-		  |  e=qvalExpression
-		  |  e=constant
-		  |  e=initializedComplexType 
-		  |  e=quantifierExpression
-		  |  T_LPAREN e=expression T_RPAREN		   
-		     ( 
-			  (T_POINT 
-			    idn=T_IDENTIFIER 
-			    {e = addIdentifierAccessExpression(e,idn);})+
-			    (res=accessExpression[e] {e=res;})?
-			| 
-			  e=accessExpression[e]
-		      )?
-		) ('as' cid=T_IDENTIFIER {e=addCastExpression(e,cid);})?
-		{expr = addUnaryExpression(unexpr,e);}
-		)
-		|  ie=T_IF ce=expression T_THEN te=expression T_ELSE ee=expression T_END
-		{expr = createConditionalExpression(ce,te,ee,ie);}
-	;	
-	
-
-quantifierExpression
-	returns [Quantifier result]
-	@init {
-		result = null;
-	}
-	: 	t=(T_FORALL | T_EXISTS)
-		{result = createQuantifierExpression(t);}
-		(id=T_IDENTIFIER (T_COLON id_type=simpleType {addBoundVarToQuantifierExpression(result,id,id_type);}) 
-		  (T_COMMA id2=T_IDENTIFIER (T_COLON id_type2=simpleType){addBoundVarToQuantifierExpression(result,id2,id_type2);})*) 
-		T_COLON T_LPAREN e=expression T_RPAREN
-		{addExpressionToQuantifier(result,e);}
-	;
-	finally
-		{removeBoundVarsFromResolveStack(result);}
-
-constant
-	returns [LeafExpression result]
-	@init {
-		result = null;
-	}
-	: 	T_TRUE  {result = createBoolConstant(true);}
-	|	T_FALSE {result = createBoolConstant(false);}
-	|	T_NIL 	{result = createNullPointerConstant();}
-	|	T_SELF  {result = createSelfPointer();}
-	| 	t_fl=T_FLOATNUMBER {result = createFloatConstant(t_fl);}
-	|	t_in=T_INTNUMBER {result = createIntConstant(t_in);}
-	|	t_l=T_STRINGLITERAL {result = createStringConstant(t_l);}
-	;
-	
-initializedComplexType
-	returns [Expression result]
-	@init {
-		result = null;
-	}
-	:	res=initializedListType {result = res;}
-	|	res=initializedSetType {result = res;}
-	| 	T_NEW T_LPAREN anid=T_IDENTIFIER 
-			(
-				T_COMMA  aname=T_STRINGLITERAL T_RPAREN {result = createNamedObject(anid, aname);}
-			|	T_RPAREN {result = createObject(anid);}	// constructor call..
-			)
-	;
-	
-initializedListType
-	returns [ListConstructor result]
-	@init {
-		result = createInitializedList();
-		pushListVarsOnResolveStack(result); // need this here for list comprehension
-	}
-	:	T_LSQPAREN e=expression {addListElement(result,e);} ( 
-			(T_COMMA e2=expression {addListElement(result,e2);})+ 
-		| 	listComprehension[result]
-		)? T_RSQPAREN  
-	;		
-	finally
-		{popListVarsFromResolveStack(result);}
-
-listComprehension [ListConstructor result]
-	@init{	
-		result.SetHasComprehension(true);
-	}
-	:
-		T_BAR T_VAR
-		id=T_IDENTIFIER  T_COLON t1=complexType {addListComprVar(result,id,t1);} 
-			(T_SEMICOLON id2=T_IDENTIFIER  t2=complexType {addListComprVar(result,id2,t2);})* 
-		('&'
-		e=expression {addListComprExpr(result,e);})?
-	;
-	
-initializedSetType
-	returns[Expression result]
-	@init {
-		result = null;
-	}
-	:	T_CBRL T_MAPS T_CBRR {result = createEmptyMap();}  // empty map
-	|	res=initializedSet {result = res;}
-	;	
-	
-initializedSet
-	returns [Expression result]
-	@init {
-		SetConstructor theset = createSet(); 
-		pushSetVarsOnResolveStack(theset); // need this here for set comprehension
-		result = theset;
-	}
-	:	T_CBRL e1=expression 
-	        (    			// set constructor; empty set: {nil}
-			{addToSet(result,e1);}
-			(T_COMMA e2=expression {addToSet(result,e2);})*			  // set constructor for sets > 1 elem
-		| 	m=map[result, e1] {result = m;}  // we have a set in the resolution stack, but this should be fine (no syms)
-		|	{addToSet(result,e1);} setComprehension[(SetConstructor)result]   // set comprehension
-		) T_CBRR 
-	;	
-	finally
-		{popSetVarsFromResolveStack(theset);}
-	
-map[Expression _map, Expression e1]	
-	returns [Expression result]
-	@init {
-		result = null;
-	}
-	:	am=T_MAPS e2=expression  {result = createMap(e1,e2,am);}   (T_COMMA e3=expression T_MAPS e4=expression {addToMap(result,e3,e4);})*
-	;
-
-setComprehension[SetConstructor _set]
-	@init {
-		_set.SetHasComprehension(true);
-	}
-	:	T_BAR T_VAR id1=T_IDENTIFIER  T_COLON t1=complexType 
-		{ addSetComprVar(_set, id1, t1); }
-		(T_SEMICOLON id2=T_IDENTIFIER T_COLON t2=complexType
-		 { addSetComprVar(_set, id2, t2); })*  
-		('&'
-		epx=expression
-		{ addSetComprExpr(_set,epx); })?
-	;
-
-
-qvalExpression 
-	returns [QValConstructor result]
-	@init {
-		boolean minus = false;
-		result = null;		
-	}
-	:	// constructor for qualitative values
-		aval='qval' T_LPAREN 
-		{result = createQualitativeValue(aval);}
-		(
-			T_NIL
-			{setQualitativeValueDontCare(result);}
-		| 		
-			(	expr=qualifiedIdentifier
-			 	{setQualitativeValueLandmark(result,expr);}
-			|
-				('-' {minus = true;})? T_INFTY
-				{setQualitativeValueInfinity(result,minus);}
-			) 
-			(T_RANGETO 
-			(	expr2=qualifiedIdentifier
-				{setQualitativeValueRange(result,expr2);}
-			| 
-				T_INFTY
-				{setQualitativeValueRangeInfinity(result,false);}
-			) )?  
-		)
-		T_COMMA 
-		(
-			T_NIL
-			{setQualitativeDerivDontCare(result);}
-		|
-			(	'steady'
-				{setQualitativeDerivSteady(result);}
-			|	'inc'
-				{setQualitativeDerivInc(result);}
-			|	'dec'
-				{setQualitativeDerivDec(result);}
-			) 		
-		)
-		T_RPAREN  
-	;
-
-
-identifierExpression
-	returns [Expression result]
-	:  	// if next token is a tuple-type then create an initialized tuple!
-		{isTuple(input.LT(1).getText())}? 		
-		aName=T_IDENTIFIER T_LPAREN m_params=methodCallParams T_RPAREN
-		{result = createInitializedTuple(aName,m_params);}
-	| 	// is some sort of reference
-		res=reference
-	  	{result = res;}	
-	;
-
-
-reference 
-	returns [Expression  result]
-	@init {
-		result = null;
-		init = null;
-	}
-	:	{!isTuple(input.LT(1).getText())}? // check that the next token is not a reference to a tuple-type
-		aName=qualifiedIdentifier {result = aName;}		
-		(	output=accessExpression[result] {result = output;}
-			// call expression
-		|	// variable access or method call that takes no params? (do we allow for that? - answer: no!)
-		)
-		( 	pr=T_PRIMED {result = setIdentifierExpressionPrimed(result,pr);} 
-		 |	
-		 	('::' T_LPAREN init=expression T_RPAREN)? afold=(T_FOLDLR|T_FOLDRL) T_LPAREN anexpr=expression T_RPAREN 
-		 	{result = createFoldExpression(result,afold,init,anexpr);}
-		)?
-	;
-
-accessExpression[Expression subexpr]
-	returns [Expression result]
-	@init{
-		UnaryOperator newExpr = null;
-		result = subexpr;
-	}
-	:	
-    		(	tcall=T_LSQPAREN ac=expression T_RSQPAREN 			// access tuples, maps 
-    			{ result = createTupleMapAccessExpression(result,ac,tcall); } 
-		|     	bcall=T_LPAREN m_params=methodCallParams T_RPAREN // access method
-			{ result = createMethodAccessExpression(result,m_params,bcall); }
-		)+
-		(	// a[1].c.e()...
-			(T_POINT 
-			idn=T_IDENTIFIER 
-			{result = addIdentifierAccessExpression(result,idn);})+
-			(res=accessExpression[result] {result=res;})?
-		)?	
-	;
-	
-qualifiedIdentifier
-	returns [Expression top]
-	@init {
-		IdentifierExpression selfexpr = null;
-		top = null;
-	}
-	:
-		(self=T_SELF T_POINT		{selfexpr = createSelfIdentifierExpression(self);})? 
-		idb=T_IDENTIFIER 		{top = createIdentifierAccessExpression(selfexpr,idb);}
-		(T_POINT idd=T_IDENTIFIER 	{top = addIdentifierAccessExpression(top,idd);})* 
-	;
-	
-
-methodCallParams
-	returns [ArrayList<Expression> result]
-	@init {
-		result = new ArrayList<Expression>();
-	}
-	:	(expa=expression {result.add(expa);} (T_COMMA expb=expression {result.add(expb);})*)?
-	;
-
-
-
-//
-//  ------------  unary  Operators    ------------ 
-//
-	
-	
-op_un
-	returns [UnaryOperator expr]
-	@init {
-		expr = null;
-	}
-	:	r=op_un_set_list {expr = r;}
-	|	r2=op_un_map 	{expr = r2;}
-	|	T_MINUS 	{expr = createUnaryOperator(ExpressionKind.unminus);}
-	|	T_NOT		{expr = createUnaryOperator(ExpressionKind.not);}
-	|	T_ABS		{expr = createUnaryOperator(ExpressionKind.abs);}
-	;	
-
-
-op_un_set_list
-	returns [UnaryOperator expr]
-	@init {
-		expr = null;
-	}
-	:	T_CARD		// list of A -> int (does not respect dupes, i.e. dupes do not count)
-		{expr = createUnaryOperator(ExpressionKind.card);}
-	|	T_DCONC		// list of list of A -> list of A
-		{expr = createUnaryOperator(ExpressionKind.dconc);}
-	|	T_DINTER	// list of list of A -> list of A (intersection, does not respect dupes)
-		{expr = createUnaryOperator(ExpressionKind.dinter);}
-	|	T_DUNION	// list of list of A -> list of A (union, does not respect dupes)
-		{expr = createUnaryOperator(ExpressionKind.dunion);}
-	|	T_ELEMS		// list of A -> list of A (does not respect dupes)
-		{expr = createUnaryOperator(ExpressionKind.elems);}
-	|	T_HEAD		// list of A -> A
-		{expr = createUnaryOperator(ExpressionKind.head);}
-	|	T_INDS		// list of A -> list of int
-		{expr = createUnaryOperator(ExpressionKind.inds);}
-	|	T_LEN		// list of A -> int (dupes count)
-		{expr = createUnaryOperator(ExpressionKind.len);}
-	|	T_TAIL		// list of A -> list of A	
-		{expr = createUnaryOperator(ExpressionKind.tail);}
-	;
-
-
-op_un_map
-	returns [UnaryOperator expr]
-	@init {
-		expr = null;
-	}
-	:	T_DOM		// map A to B -> list of A
-		{expr = createUnaryOperator(ExpressionKind.dom);}
-	|	T_RNG		// map A to B -> list of B
-		{expr = createUnaryOperator(ExpressionKind.range);}
-	|	T_MERGE		// list of map A to B -> map A to B
-		{expr = createUnaryOperator(ExpressionKind.merge);}
-	;
-
-
-
-
-
-
-//
-//  ==============   LEXER   =================
-//
-T_WS  	: (' '|'\r'|'\t'|'\u000C'|'\n') {$channel=HIDDEN;}
-    	;
-    	
-T_COMMENT
-    	: '/*' .* '*/' {$channel=HIDDEN;}
-    	;
-    	
-LINE_COMMENT
-    	: '#' ~('\n'|'\r')* '\r'? '\n' {$channel=HIDDEN;}
-    	;
-
-T_PRIMED
-	:	'\'';
-
-T_STRINGLITERAL
-	:	'"' 
-		(
-     			( '"' '"' )=>  '"' 
-      		|  	~'"'
-  		)*
- 		'"'
-	;
-
-
-T_ABORT	:	'abort';
-T_ACTIONS
-	:	'actions';
-T_ASSIGNMENT
-	:	':=';
-T_AUTOCONS:	'autocons';
-T_BAR	:	'|';
-T_BOOL	:	'bool';
-T_CBRL	:	'{';
-T_CBRR	:	'}';
-T_COLON	:	':';
-T_COMMA	:	',';
-T_CONT	:	'qual';
-T_CHAR	:	'char';
-T_CTRL 	:	'ctr';
-T_SYSTEM
-	:	'system';
-T_DO	:	'do';
-T_ELSE	:	'else';
-T_END	:	'end';
-T_EQUAL	:	'=';
-T_EXISTS:	'exists';
-T_FLOAT	:	'float';
-T_FORALL:	'forall';
-T_FALSE :	'false';	
-T_IF	:	'if';
-T_IN	:	'in';
-T_INT	:	'int';
-T_KILL	:	'kill';
-T_LIST	:	'list';
-T_LPAREN:	'(';
-T_LSQPAREN:	'[';
-T_MAP	:	'map';
-T_MAPS	:	'->';
-T_METHODS
-	:	'methods';
-T_NEW	:	'new';
-T_NIL	:	'nil';
-T_NONDET:	'[]';
-T_OBS	:	'obs';
-T_OD	:	'od';
-T_OF	:	'of';
-T_PRIO	:	'//';
-T_REQUIRES
-	:	'requires';
-T_RPAREN:	')';
-T_RSQPAREN:	']';
-T_QUANTITY
-	:	'qspace';
-T_SELF	:	'self';
-T_SET 	:	'set';
-T_SEMICOLON
-	:	';';
-T_STATIC:	'static';	
-T_SKIP	:	'skip';
-T_BREAK	:	'break';
-T_THEN	:	'then';
-T_TRUE  :	'true';
-T_TO	:	'to';
-T_TYPES	:	'types';
-T_VAR	:	'var';
-T_WITH	:	'with';     // for nondet assignment
-
-
-//T_ACTION:	'action';
-
-//BOOL
-T_AND	:	'and';
-T_BIIMPLIES
-	:	'<=>';
-T_IMPLIES
-	:	'=>';  //VDM-Style
-T_NOT	:	'not'; //VDM-Style
-T_NOTEQUAL:	'<>';  //VDM-Style
-T_OR	:	'or';
-
-//Numeric (equal, not equal same as in BOOL)
-T_ABS	:	'abs';
-T_DIV	:	'/';
-T_GREATER
-	:	'>';
-T_GREATEREQUAL
-	:	'>=';
-T_IDIV	:	'div';
-T_LESS	:	'<';
-T_LESSEQUAL
-	:	'<='; //VDM-Style
-T_MOD	:	'mod'; //VDM-Style
-T_POW	:	'**';
-T_PROD	:	'*';
-T_DERIV	:	'dt';
-
-// set/list
-T_CARD	:	'card';
-T_CONC	:	'^'; 
-T_DCONC	:	'conc';
-T_DIFF	:	'\\';
-T_DINTER:	'dinter';
-T_DUNION:	'dunion';
-T_ELEMS	:	'elems';
-T_HEAD	:	'hd';
-T_INDS	:	'inds';
-T_INTER	:	'inter';
-T_LEN	:	'len'; // differs from T_CARD, as card does not count dupes..
-T_SEQMOD_MAPOVERRIDE
-	:	'++';
-T_SUBSET:	'subset';
-T_TAIL	:	'tl';
-T_UNION	:	'union';
-T_FOLDLR	
-	:	':>:';
-T_FOLDRL
-	:	':<:';
-
-
-// maps
-T_DOM	:	'dom';
-T_DOMRESBY
-	:	'<-:';
-T_DOMRESTO
-	:	'<:';		
-T_RNG	:	'rng';
-T_RNGRESBY
-	:	':->';
-T_RNGRESTO
-	:	':>';
-T_MERGE	:	'merge';
-T_MUNION:	'munion';
-
-T_CONSTS:	'consts';
-
-// numbers
-
-T_INFTY	:	(T_MINUS|T_SUM)? 'inf'
-	;	
-
-
-// INTNUMBER, FLOATNUMBER, RANGETO, T_MINUS, T_PLUS are set within
-// FLOAT_OR_INT_OR_RANGE
-fragment T_INTNUMBER
-	:	;
-fragment T_FLOATNUMBER
-	:	;
-fragment T_RANGETO	
-	:	;
-
-FLOAT_OR_INT_OR_RANGE
-	: 	(T_MINUS|T_SUM)? T_DIGIT+
-		( // at this stage, we could face an int, int..int (=range), int.exp (=float), int.exp..int.exp (=float range) etc..
-				(T_POINT T_POINT) => {$type=T_INTNUMBER;}
-			|	(T_POINT T_DIGIT) => T_POINT T_DIGIT+ (('e'|'E') (T_MINUS|T_SUM)? T_DIGIT+)? {$type=T_FLOATNUMBER;}				
-			|	{$type=T_INTNUMBER;}
-		)
-	|	T_POINT
-		( // could be point or range..
-				T_POINT {$type=T_RANGETO;}
-			| 	      {$type=T_POINT;}
-		)
-	|	T_MINUS	{$type=T_MINUS;}
-	|	T_SUM	{$type=T_SUM;}
-	;	
-
-
-
-fragment T_MINUS:	'-';
-fragment T_SUM	:	'+';
-fragment T_POINT:	'.';
-
-
-
-// identifiers
-T_IDENTIFIER
-	:	T_LETTER (T_LETTER|T_DIGIT)* 
-	;
-	
-//T_PRIMEDIDENTIFIER
-//	:	T_IDENTIFIER '\'';
-	
-fragment
-T_LETTER
-	:	'$'
-	|	'A'..'Z'
-	|	'a'..'z'
-	|	'_'
-	;
-
-fragment 
-T_DIGIT:	'0'..'9';
-
+/*  
+			ANTLR Grammar for OO-Action Systems
+			 (C) Willibald Krenn, 2009 - 2015
+
+
+  Notes
+  ~~~~~
+  	(*) No recursion
+  	(*) float acutally is fixed-point!
+	(*) Named actions can only be "called" within the do-od block 
+	(*) Methods can be called from within an action and a method.
+	    Attention: Mutual Recursion not supported!
+
+  FixMe
+  ~~~~~
+  	(*) List-Enum: Length Restriction! (Defaults to 500 for now)
+	(*) subseteq missing
+	
+
+			 
+  History
+  ~~~~~~~
+  Changes 1.07 to 1.08
+    ~ remove support for Qualitative Action Systems
+
+  Changes 1.06 to 1.07
+    ~ move to org.momut naming
+  
+  Changes 1.05 to 1.06
+  	~ make action blocks more capable, add the projection feature already available in the do-od block.
+	- disable support for continuous actions
+  
+  Changes 1.04 to 1.05
+  	~ Fix bug with set constuctor: set with only one element produced wrong AST (inner element wasn't added correctly).
+  
+  Changes 1.03 to 1.04
+        ~ Move to JAVA
+  
+  Changes 1.02 to 1.03
+  	+ option to name objects when they are constructed: new (<class>,"<name>")
+  
+  Changes 1.00 to 1.02
+  	+ cast operator for objects ( ... as <typename> )
+
+  Changes 1.00 to 1.01
+  	+ enum-type with fixed integer values
+  
+  Changes 0.99b to 1.00
+  	+ constant section added (consts a=4; b=4)
+  	+ limits of simple types and lists can be const
+  	+ local vars allowed in methods (... = var... begin...end)
+  	+ prioritized composition on statement level
+  	+ skip in do-od block
+  	+ filter expression in do-od block sequential var statement
+  	+ fold operator
+  	
+  Changes 0.99 to 0.99b
+        - disabled sequential composition of action systems (remains in grammar, though out-commented)
+        
+  Changes 0.98 to 0.99
+        ~ changed QR syntax.
+  
+  Changes 0.97 to 0.98
+  	~ changed syntax for list and set comprehension
+  	  list comprehension:
+  	  '[' expression '|' 'var' id ':' type (';' id ':' type)* ('&' expression)? ']'
+  	  set comprehension
+  	  '{' expression '|' 'var' id ':' type (';' id ':' type)* ('&' expression)? '}'
+  	  
+  	  Usage: defined variables will sweep over value-range. If the latter expression
+  	  (after '&') evaluates to true (hence this expression must return a bool) with
+  	  the current valuation of the defined vars, the values are used to evaluate the
+  	  first expression, which has to return a value of the correct type.
+  	  
+  	  Example:
+  	  type
+  	    myint = int [0..300000];
+  	    mytuple = (myint, myint)
+  	  var
+  	     l_tuple : list of mytuple = [nil];
+  	     l_int : list of myint = [nil];
+  	    ...
+  	      l_int := [l_tuple[x][0] | var x: myint & x < len l_tuple ]
+  	  
+  	  
+  	+ list element access by '[int]' allowed!
+
+
+  Changes 0.96 to 0.97
+  	+ tuple-type initialization now properly supported
+  	+ binary operator precedence handling
+  	+ local variables in named actions
+  	+ support for (<expression>).<reference> and
+  	              (<expression>).<accessExpression>
+  	~ conditional expression: End required.
+  	- remove support for power-operator 
+  	  (may be we need to do calculation backwards)
+
+  Changes 0.95 to 0.96
+  	~ string literals now ".."
+  	~ priming of identifier access only supported at the end of the
+  	  expression
+
+  Changes 0.9 to 0.95
+  	+ composition of action systems in 'system' block
+  	~ Produce C# code
+  	~ Operator Precedence
+  	~ vars in action composition
+  	~ forall/extists now with colon instead of in
+
+
+  Earlier changes  removed.
+			 
+*/
+
+
+grammar ooa;
+
+options {	
+  k = 2;
+  superClass = ooaCustomParser;
+}
+
+
+@lexer::header
+{
+/*
+    Ulysses OO-Action System Parser
+    
+    Copyright Graz University of Technology 2009
+    Copyright AIT Austrian Institute of Technology 2013
+ */
+ package org.momut.ooas.parser;
+}
+
+
+@parser::header
+{
+ /*
+    Ulysses OO-Action System Parser
+
+    Copyright Graz University of Technology 2009
+    Copyright AIT Austrian Institute of Technology 2013
+ */
+ package org.momut.ooas.parser;
+
+ import org.momut.ooas.ast.expressions.*;
+ import org.momut.ooas.ast.statements.*;
+ import org.momut.ooas.ast.identifiers.*;
+ import org.momut.ooas.ast.types.*;
+ import org.momut.ooas.ast.types.FunctionType.FunctionTypeEnum;
+}
+
+ooActionSystems 
+	:	{initializeTopLevelParserState();}
+
+	         (T_CONSTS namedConstList)?
+		
+		 T_TYPES 
+		  	namedTypeList
+		 T_SYSTEM
+			comp=asTypeComposition[null]
+			{fixUpRun(comp);}
+	;
+
+
+
+//
+//  ------------   named consts  ------------ 
+//
+
+namedConstList
+	:	namedConst (T_SEMICOLON namedConst)*
+	;
+	
+namedConst
+	:	aName=T_IDENTIFIER
+		T_EQUAL
+		anExpr=expression
+		{addNamedConst(aName,anExpr);}
+	;
+
+
+//
+//  ------------   named types  ------------ 
+//
+namedTypeList 
+	:	namedType (T_SEMICOLON namedType)*
+	;
+
+namedType 
+	:	aName=T_IDENTIFIER 
+		T_EQUAL 
+		(
+			aType=complexType 	 {createNamedType(aName,aType);}
+		|	anOoaType=ooActionSystem {createNamedType(aName,anOoaType);}
+		)		
+		
+	;
+
+
+asTypeComposition [IdentifierList top]
+	returns [IdentifierList prioList]
+	:  	{prioList = new PrioIdentifierList(top);}
+		asTypeCompositionParallel[prioList]  (T_PRIO asTypeCompositionParallel[prioList] )*
+	;
+
+asTypeCompositionParallel [IdentifierList top]
+	:  	{IdentifierList parList = new NondetIdentifierList(top);}
+		asTypeCompositionSequential[parList] (T_NONDET asTypeCompositionSequential[parList])*
+	;
+
+asTypeCompositionSequential [IdentifierList top]
+	:  	{IdentifierList seqList = new SeqIdentifierList(top);}
+		asTypeCompositionBlockParen[seqList] //(T_SEMICOLON asTypeCompositionBlockParen[seqList])*
+	;
+
+asTypeCompositionBlockParen [IdentifierList top]
+	: T_LPAREN asTypeComposition[top] T_RPAREN
+	| aName=T_IDENTIFIER {addToIdentifierList(top,aName);}
+	;
+	
+
+//
+//  ------------   basic types    ------------ 
+//
+
+complexType 
+	returns [Type aTypeSymbol]
+	@init{ 
+		aTypeSymbol = null;
+	}	
+	:	T_LIST  T_LSQPAREN numOfElements=(T_INTNUMBER|T_IDENTIFIER) T_RSQPAREN T_OF  innertype=complexType 
+			{aTypeSymbol = createListType(numOfElements,innertype);}
+
+		// list type with predefined elements (dupes of each element as many as needed) FIXME: Length Restriction!
+	|	T_LSQPAREN alistelem=T_IDENTIFIER {aTypeSymbol = createListEnumType(alistelem);} 
+			(T_COMMA otherlistelem=T_IDENTIFIER {addToListEnumType(aTypeSymbol,otherlistelem);})* T_RSQPAREN // set of identifiers..
+
+		// maps do not really need a length restriction, as simpleType already is restricted..
+	|	T_MAP   (T_LSQPAREN numOfElements=(T_INTNUMBER|T_IDENTIFIER) T_RSQPAREN)? mapfromtype=simpleType T_TO maptotype=complexType 
+			{aTypeSymbol = createMapType(numOfElements,mapfromtype,maptotype);}
+		// tuple
+	|	 T_LPAREN aType=complexType {aTypeSymbol = createTupleType(aType);} 
+			(T_COMMA anotherType=complexType {addToTupleType(aTypeSymbol,anotherType);})*  T_RPAREN
+		
+		// some simple type (note that this includes identifiers, which may be complex object types..)	
+	|	r=simpleType {aTypeSymbol = r;}
+	;
+	finally
+		{fixupComplexType(aTypeSymbol);}
+
+	
+simpleType 
+	returns [Type aTypeSymbol]
+	@init{ 
+		aTypeSymbol = null;
+	}
+	:	T_BOOL  {aTypeSymbol = createBoolType();}
+	
+		// ints plus subtypes
+	|	T_INT T_LSQPAREN rangeLow=(T_INTNUMBER|T_INFTY|T_IDENTIFIER) T_RANGETO rangeHigh=(T_INTNUMBER|T_INFTY|T_IDENTIFIER) T_RSQPAREN  
+			{aTypeSymbol = createIntType(rangeLow,rangeHigh);}
+			
+		// floats plus subtypes
+	|	T_FLOAT  T_LSQPAREN rangeLow=(T_FLOATNUMBER|T_INFTY|T_IDENTIFIER) T_RANGETO rangeHigh=(T_FLOATNUMBER|T_INFTY|T_IDENTIFIER) T_RSQPAREN 
+			{aTypeSymbol = createFloatType(rangeLow,rangeHigh);}
+			
+		// char
+	|	T_CHAR {aTypeSymbol = createCharType();}
+		
+		// simple type, domain restricted to the values within the given set. (operators supported: equal, not equal) - may be casted to integer if
+		// explicit int values are given
+	|	T_CBRL aRangeValue=T_IDENTIFIER (T_EQUAL optVal=T_INTNUMBER)? {aTypeSymbol = createEnumType(aRangeValue, optVal);} 
+			(T_COMMA otherRangeValue=T_IDENTIFIER (T_EQUAL otherOptVal=T_INTNUMBER)? {addToEnumType(aTypeSymbol,otherRangeValue,otherOptVal); otherOptVal=null;})* T_CBRR
+			
+	|	aType=T_IDENTIFIER {aTypeSymbol = getNamedType(aType);} // alias could be simple type - otherwise, it's a complex type!!
+	;
+	finally
+		{fixupSimpleType(aTypeSymbol);}
+
+
+
+
+
+
+ooActionSystem 
+	returns [OoActionSystemType aTypeSymbol]
+	@init{ 
+		boolean autoCons = false; 
+		aTypeSymbol = null;
+		refinesSystemName = null;
+	}
+	:      (T_AUTOCONS {autoCons = true;})? 
+		T_SYSTEM (T_LPAREN refinesSystemName=T_IDENTIFIER T_RPAREN)?		 
+		{aTypeSymbol = createOoaType(refinesSystemName,autoCons);}
+		'|['
+			(T_VAR attrList)?
+			(T_METHODS methodList)?
+			(T_ACTIONS namedActionList)?
+			(T_DO (bl=actionBlock[null] {addActionBlock(aTypeSymbol,bl);})? T_OD)?
+		']|'
+	;
+	finally
+		{fixupOoaType(aTypeSymbol);}
+	
+
+
+	
+//
+//  ------------   variables (objects and simple types)    ------------ 
+//
+attrList
+	:	{BeginParsingAttributes();}
+	 	attr (T_SEMICOLON attr)*
+	;
+	finally {
+		EndParsingAttributes();
+	}
+
+attr
+	@init{ 
+		boolean isStatic = false; 
+		boolean isCtr = false;
+		boolean isObs = false;				
+		
+	}
+	: 	(T_STATIC {isStatic = true;})? (T_OBS {isObs = true;} | T_CTRL {isCtr = true;})? 
+		varname=T_IDENTIFIER  T_COLON aType=complexType (T_EQUAL anExpr=expression)?
+		{createAttribute(varname, isStatic, isObs, isCtr, aType, anExpr);}
+	;
+
+//
+//  ------------   methods    ------------ 
+//	
+methodList 
+	: 	method (T_SEMICOLON method)*
+	;
+
+method	
+	@init {	
+		FunctionIdentifier newMethod = null;
+	}
+	:	mname=T_IDENTIFIER  {newMethod = createMethodSymbol(mname);}
+		(T_LPAREN methodParameterList[newMethod]  T_RPAREN)? 
+		(T_COLON rt=complexType {setMethodReturnType(newMethod,rt);})?	// actions can not have a return type!!					
+		 T_EQUAL 
+		 ( T_VAR localActionVars[newMethod] 'begin')?                                   // var here always means vars of the method. This disables the var of the actionBody!
+		                                                                                                                 // If that is wanted, the user needs to use parens... Alternatively we could force the "begin" which feels cumbersome.
+		                                                                                                                 // Using a semantic predicate here triggers a bug in the codegen it seems..
+		statements=actionBody[null] {addMethodBody(newMethod,statements);} 
+		T_END		
+	;
+	finally
+		{popResolveStack(newMethod);}
+
+methodParameterList[FunctionIdentifier newMethod]
+	:	 paramName=T_IDENTIFIER T_COLON atype=complexType {addMethodParameter(newMethod,paramName,atype);}
+			(T_COMMA otherparam=T_IDENTIFIER T_COLON othertype=complexType
+			{addMethodParameter(newMethod,otherparam,othertype);} )*		
+	;
+
+
+//
+//  ------------   named, anonymous actions    ------------ 
+//	
+
+namedActionList 
+	:	namedAction (T_SEMICOLON namedAction)*
+	;
+
+namedAction 
+	@init {
+		FunctionTypeEnum actionType;
+		FunctionIdentifier newAction = null;
+	}
+	:	{actionType = FunctionTypeEnum.Internal;}
+		(T_CTRL {actionType = FunctionTypeEnum.Controllable;}| T_OBS {actionType = FunctionTypeEnum.Observable;}| )
+		 actionname=T_IDENTIFIER  {newAction = createNamedAction(actionname,actionType);}
+		(T_LPAREN methodParameterList[newAction]  T_RPAREN)? 
+		T_EQUAL	
+		(T_VAR localActionVars[newAction] )? 
+		body=discreteActionBody  
+		{addActionBody(newAction,body);}
+	;	
+	finally
+		{popResolveStack(newAction);}
+
+
+localActionVars[FunctionIdentifier newMethod]
+	:	// a named, discrete action may have local variables.
+		id1=T_IDENTIFIER T_COLON t1=complexType  {addLocalVariableToNamedAction(newMethod,id1,t1);}
+		 (T_SEMICOLON id2=T_IDENTIFIER T_COLON t2=complexType
+		 {addLocalVariableToNamedAction(newMethod,id2,t2);} )*
+	;	
+
+
+
+anonymousAction 
+	returns [GuardedCommand result]
+	:	
+		b=discreteActionBody {result = b;}
+	;
+
+discreteActionBody 
+	returns [GuardedCommand result]
+	@init{
+		result = null;
+	}
+	:
+		{result = createGuardedCommandStatement(); pushBlockToResolveStack(result);}	
+		T_REQUIRES expr=expression T_COLON
+			bdy=actionBody[null]
+		T_END
+		{addExprAndBlockToGuardedCommand(result,expr,bdy);}
+	;
+	finally
+		{popBlockFromResolveStack(result);}
+	
+	
+//
+//  ------------   do-od block    ------------ 
+//	
+
+actionBlock [Block top]
+	returns [Block prioList]
+	:  	{prioList = createPrioBlock(top);  pushBlockToResolveStack(prioList);}
+		 actionBlockParallel[prioList] (T_PRIO actionBlockParallel[prioList])* 
+	;	
+	finally
+		{popBlockFromResolveStack(prioList);}
+	
+actionBlockParallel [Block top]
+	@init 	{	Block parList = createNondetBlock(top); 
+		 	pushBlockToResolveStack(parList);
+		}
+	:	actionBlockSequential[parList] (T_NONDET actionBlockSequential[parList])*
+	;	
+	finally
+		{popBlockFromResolveStack(parList);}
+// atomic sequential composition of actions	
+actionBlockSequential [Block top]
+	@init  	{
+			Block seqList = createSeqBlock(top);
+			pushBlockToResolveStack(seqList);
+		}
+	:	 (T_VAR syms=blockvarlist[seqList] ('&' sexpr=expression {addSeqBlockExpression(seqList,sexpr);} )? T_COLON )? 
+		 actionBlockParen[seqList] (T_SEMICOLON actionBlockParen[seqList])*
+	;	
+	finally
+		{popBlockFromResolveStack(seqList);}
+
+actionBlockParen [Block top]
+	:	T_LPAREN actionBlock[top] T_RPAREN
+	|	anonymousOrNamedAction[top]
+	;	
+
+anonymousOrNamedAction [Block top]
+	:	gcmd=anonymousAction {addToBlockList(top,gcmd);}
+	|	aname=T_IDENTIFIER 
+	         (T_LPAREN  m_params=methodCallParams T_RPAREN)? 
+	         (amap=(T_FOLDLR|T_FOLDRL) '(' amapexpr=expression ')')?
+		{addNamedActionCallToBlockList(top,aname,m_params,amap,amapexpr);}
+	|	T_SKIP	{addSkipStatementToBlockList(top);}
+	;
+
+
+blockvarlist [Block seqList]
+	:	blockvar[seqList]  (T_SEMICOLON blockvar[seqList] )*
+	;
+
+blockvar [Block seqList]
+	: 	varname=T_IDENTIFIER  T_COLON aType=complexType 
+		{addBlockVariable(seqList,varname,aType);}
+	;
+
+		
+
+//
+//  ------------  action body  of non-continuous actions ------------ 
+//
+	
+actionBody[Block top]
+	returns [Block result]
+	:	{result = createPrioBlock(top); pushBlockToResolveStack(result);}
+		actionBodyParallel[result] (T_PRIO actionBodyParallel[result])? 
+	;  
+	finally
+		{popBlockFromResolveStack(result);}
+	
+actionBodyParallel[Block top]
+	returns [Block result]
+	:	{result = createNondetBlock(top); pushBlockToResolveStack(result);}
+		actionBodySequential[result]
+		(T_NONDET olst=actionBodySequential[result])*
+	;	
+	finally
+		{popBlockFromResolveStack(result);}
+
+	
+// seq binds stronger than nondet, i.e. a;b;cd;e is read as (a;b;c)[](d;e)	
+actionBodySequential[Block top]
+	returns [SeqBlock result]
+	:	{result = createSeqBlock(top); pushBlockToResolveStack(result);}
+		(T_VAR syms=blockvarlist[result] ('&' sexpr=expression {addSeqBlockExpression(result,sexpr);} )? T_COLON )?
+		 actionBodyParen[result] (T_SEMICOLON actionBodyParen[result])*
+	;	
+	finally
+		{popBlockFromResolveStack(result);}
+	
+	
+actionBodyParen [SeqBlock top]
+	:	 T_LPAREN actionBody[top]  T_RPAREN
+	|	stmt=statement
+		{addToStatementList(top,stmt);}
+	;	
+
+
+statement
+	returns [Statement result]
+	@init {
+		boolean popFromResolveStack = false;
+		result = null;
+	}
+	:	T_ABORT {result = createAbortStatement();}
+	|	T_SKIP	{result = createSkipStatement();}
+	|	T_BREAK {result = createBreakStatement();}
+	|	T_KILL T_LPAREN aname=(T_IDENTIFIER | T_SELF) T_RPAREN	{result = createKillStatement(aname);}
+	| 	gc=discreteActionBody {result = gc;}
+	|	aqname=reference 
+			   ( 	    // single assignment			   	    
+			   	    T_ASSIGNMENT  aexp=expression  {result = createSingleAssignmentStatement(aqname,aexp);}
+			           (T_WITH ndexp=expression {addConstraintToAssignment(result,ndexp);})? // nondet assignment
+			           
+			           // multi assignment
+				|  {result = createMultipleAssignmentStatementLHS(aqname);}
+				  (T_COMMA malhs=reference  {addMultipleAssignmentStatementLHS(result,malhs);})+ 
+				   T_ASSIGNMENT 
+				   {pushAssignmentOnResolveStack(result); popFromResolveStack = true;} 
+				   mexp=expression
+				   {addMutlipleAssignmentStatementRHS(result,mexp);}
+				   (T_COMMA mexp2=expression {addMutlipleAssignmentStatementRHS(result,mexp2);})+
+				   (T_WITH ndex2=expression {addConstraintToAssignment(result,ndex2);})? // nondet assignment
+				   
+				   // just a call of a method.
+				| {result = createCallStatement(aqname);}
+		     	    )
+	;	
+	finally {
+	       if (popFromResolveStack == true)
+	            popAssignmentOffResolveStack(result);
+	}
+
+//
+//  ------------   expression    ------------ 
+//
+expression
+	returns [Expression expr]
+	@init{
+		ArrayList<BinaryOperator> operators = new ArrayList<BinaryOperator>();
+		ArrayList<Expression> expressions = new ArrayList<Expression>();		
+	}
+	:	left=atomExpression	
+		{expressions.add(left);}
+		( op=binoperator
+		  right=atomExpression
+		  {
+		  	if (op != null) {
+		  		operators.add(op);
+		  		expressions.add(right);
+		  	}
+		  }
+		)*
+		{expr = createPrecedenceTree(expressions,operators);}
+	;
+
+
+binoperator	
+	returns [BinaryOperator binop]
+	:	T_BIIMPLIES
+		{binop = createBinaryOperator(ExpressionKind.biimplies);}
+	|	T_GREATER	
+		{binop = createBinaryOperator(ExpressionKind.greater);}
+	|	T_GREATEREQUAL
+		{binop = createBinaryOperator(ExpressionKind.greaterequal);}
+	|	T_LESS	
+		{binop = createBinaryOperator(ExpressionKind.less);}
+	|	T_LESSEQUAL
+		{binop = createBinaryOperator(ExpressionKind.lessequal);}
+	|	T_EQUAL			// bool, numeric, char, lists, maps
+		{binop = createBinaryOperator(ExpressionKind.equal);}
+	|	T_NOTEQUAL		// bool, numeric, char, lists, maps
+		{binop = createBinaryOperator(ExpressionKind.notequal);}
+	|	T_IMPLIES
+		{binop = createBinaryOperator(ExpressionKind.implies);}
+	|	T_MINUS	
+		{binop = createBinaryOperator(ExpressionKind.minus);}
+	|	T_SUM	
+		{binop = createBinaryOperator(ExpressionKind.sum);}
+	|	T_IN T_SET?	// A * list of A -> bool
+		{binop = createBinaryOperator(ExpressionKind.elemin);}
+	|	T_NOT T_IN T_SET?	// A * list of A -> bool
+		{binop = createBinaryOperator(ExpressionKind.notelemin);}
+	|	T_SUBSET	// list of A * list of A -> bool (does not respect dupes)
+		{binop = createBinaryOperator(ExpressionKind.subset);}
+	|	T_OR
+		{binop = createBinaryOperator(ExpressionKind.or);}
+	|	T_DIV
+		{binop = createBinaryOperator(ExpressionKind.div);}
+	|	T_PROD	
+		{binop = createBinaryOperator(ExpressionKind.prod);}
+	|	T_IDIV	
+		{binop = createBinaryOperator(ExpressionKind.idiv);}
+	|	T_MOD	
+		{binop = createBinaryOperator(ExpressionKind.mod);}
+	|	T_UNION		// list of A * list of A -> list of A (does not respect dupes)
+		{binop = createBinaryOperator(ExpressionKind.union);}
+	|	T_DIFF		// list of A * list of A -> list of A (does not respect dupes)
+		{binop = createBinaryOperator(ExpressionKind.diff);}
+	|	T_INTER		// list of A * list of A -> list of A (does not respect dupes)
+		{binop = createBinaryOperator(ExpressionKind.inter);}
+	|	T_AND  
+		{binop = createBinaryOperator(ExpressionKind.and);}				
+	|	T_POW  
+		{binop = createBinaryOperator(ExpressionKind.pow);}				
+	|	T_CONC	// list of A * list of A -> list of A
+		{binop = createBinaryOperator(ExpressionKind.conc);}			
+	|	T_DOMRESBY	// list of A * map A to B -> map A to B
+		{binop = createBinaryOperator(ExpressionKind.domresby);}
+	|	T_DOMRESTO	// list of A * map A to B -> map A to B
+		{binop = createBinaryOperator(ExpressionKind.domresto);}
+	|	T_RNGRESBY	// map A to B * list of B -> map A to B
+		{binop = createBinaryOperator(ExpressionKind.rngresby);}
+	|	T_RNGRESTO	// map A to B * list of B -> map A to B
+		{binop = createBinaryOperator(ExpressionKind.rngresto);}
+	|	T_MUNION	// map A to B * map A to B -> map A to B
+		{binop = createBinaryOperator(ExpressionKind.munion);}
+	|	T_SEQMOD_MAPOVERRIDE	// list of A * map int to A -> list of A or
+					// map A to B * map A to B -> map A to B
+		{binop = createBinaryOperator(ExpressionKind.seqmod_mapoverride);}
+	;
+
+	
+atomExpression
+	returns [Expression expr]
+	@init {
+		expr = null;
+	}
+	:	(unexpr=op_un? (   
+		     e=identifierExpression
+		  |  e=constant
+		  |  e=initializedComplexType 
+		  |  e=quantifierExpression
+		  |  T_LPAREN e=expression T_RPAREN		   
+		     ( 
+			  (T_POINT 
+			    idn=T_IDENTIFIER 
+			    {e = addIdentifierAccessExpression(e,idn);})+
+			    (res=accessExpression[e] {e=res;})?
+			| 
+			  e=accessExpression[e]
+		      )?
+		) ('as' cid=T_IDENTIFIER {e=addCastExpression(e,cid);})?
+		{expr = addUnaryExpression(unexpr,e);}
+		)
+		|  ie=T_IF ce=expression T_THEN te=expression T_ELSE ee=expression T_END
+		{expr = createConditionalExpression(ce,te,ee,ie);}
+	;	
+	
+
+quantifierExpression
+	returns [Quantifier result]
+	@init {
+		result = null;
+	}
+	: 	t=(T_FORALL | T_EXISTS)
+		{result = createQuantifierExpression(t);}
+		(id=T_IDENTIFIER (T_COLON id_type=simpleType {addBoundVarToQuantifierExpression(result,id,id_type);}) 
+		  (T_COMMA id2=T_IDENTIFIER (T_COLON id_type2=simpleType){addBoundVarToQuantifierExpression(result,id2,id_type2);})*) 
+		T_COLON T_LPAREN e=expression T_RPAREN
+		{addExpressionToQuantifier(result,e);}
+	;
+	finally
+		{removeBoundVarsFromResolveStack(result);}
+
+constant
+	returns [LeafExpression result]
+	@init {
+		result = null;
+	}
+	: 	T_TRUE  {result = createBoolConstant(true);}
+	|	T_FALSE {result = createBoolConstant(false);}
+	|	T_NIL 	{result = createNullPointerConstant();}
+	|	T_SELF  {result = createSelfPointer();}
+	| 	t_fl=T_FLOATNUMBER {result = createFloatConstant(t_fl);}
+	|	t_in=T_INTNUMBER {result = createIntConstant(t_in);}
+	|	t_l=T_STRINGLITERAL {result = createStringConstant(t_l);}
+	;
+	
+initializedComplexType
+	returns [Expression result]
+	@init {
+		result = null;
+	}
+	:	res=initializedListType {result = res;}
+	|	res=initializedSetType {result = res;}
+	| 	T_NEW T_LPAREN anid=T_IDENTIFIER 
+			(
+				T_COMMA  aname=T_STRINGLITERAL T_RPAREN {result = createNamedObject(anid, aname);}
+			|	T_RPAREN {result = createObject(anid);}	// constructor call..
+			)
+	;
+	
+initializedListType
+	returns [ListConstructor result]
+	@init {
+		result = createInitializedList();
+		pushListVarsOnResolveStack(result); // need this here for list comprehension
+	}
+	:	T_LSQPAREN e=expression {addListElement(result,e);} ( 
+			(T_COMMA e2=expression {addListElement(result,e2);})+ 
+		| 	listComprehension[result]
+		)? T_RSQPAREN  
+	;		
+	finally
+		{popListVarsFromResolveStack(result);}
+
+listComprehension [ListConstructor result]
+	@init{	
+		result.SetHasComprehension(true);
+	}
+	:
+		T_BAR T_VAR
+		id=T_IDENTIFIER  T_COLON t1=complexType {addListComprVar(result,id,t1);} 
+			(T_SEMICOLON id2=T_IDENTIFIER  t2=complexType {addListComprVar(result,id2,t2);})* 
+		('&'
+		e=expression {addListComprExpr(result,e);})?
+	;
+	
+initializedSetType
+	returns[Expression result]
+	@init {
+		result = null;
+	}
+	:	T_CBRL T_MAPS T_CBRR {result = createEmptyMap();}  // empty map
+	|	res=initializedSet {result = res;}
+	;	
+	
+initializedSet
+	returns [Expression result]
+	@init {
+		SetConstructor theset = createSet(); 
+		pushSetVarsOnResolveStack(theset); // need this here for set comprehension
+		result = theset;
+	}
+	:	T_CBRL e1=expression 
+	        (    			// set constructor; empty set: {nil}
+			{addToSet(result,e1);}
+			(T_COMMA e2=expression {addToSet(result,e2);})*			  // set constructor for sets > 1 elem
+		| 	m=map[result, e1] {result = m;}  // we have a set in the resolution stack, but this should be fine (no syms)
+		|	{addToSet(result,e1);} setComprehension[(SetConstructor)result]   // set comprehension
+		) T_CBRR 
+	;	
+	finally
+		{popSetVarsFromResolveStack(theset);}
+	
+map[Expression _map, Expression e1]	
+	returns [Expression result]
+	@init {
+		result = null;
+	}
+	:	am=T_MAPS e2=expression  {result = createMap(e1,e2,am);}   (T_COMMA e3=expression T_MAPS e4=expression {addToMap(result,e3,e4);})*
+	;
+
+setComprehension[SetConstructor _set]
+	@init {
+		_set.SetHasComprehension(true);
+	}
+	:	T_BAR T_VAR id1=T_IDENTIFIER  T_COLON t1=complexType 
+		{ addSetComprVar(_set, id1, t1); }
+		(T_SEMICOLON id2=T_IDENTIFIER T_COLON t2=complexType
+		 { addSetComprVar(_set, id2, t2); })*  
+		('&'
+		epx=expression
+		{ addSetComprExpr(_set,epx); })?
+	;
+
+identifierExpression
+	returns [Expression result]
+	:  	// if next token is a tuple-type then create an initialized tuple!
+		{isTuple(input.LT(1).getText())}? 		
+		aName=T_IDENTIFIER T_LPAREN m_params=methodCallParams T_RPAREN
+		{result = createInitializedTuple(aName,m_params);}
+	| 	// is some sort of reference
+		res=reference
+	  	{result = res;}	
+	;
+
+
+reference 
+	returns [Expression  result]
+	@init {
+		result = null;
+		init = null;
+	}
+	:	{!isTuple(input.LT(1).getText())}? // check that the next token is not a reference to a tuple-type
+		aName=qualifiedIdentifier {result = aName;}		
+		(	output=accessExpression[result] {result = output;}
+			// call expression
+		|	// variable access or method call that takes no params? (do we allow for that? - answer: no!)
+		)
+		( 	pr=T_PRIMED {result = setIdentifierExpressionPrimed(result,pr);} 
+		 |	
+		 	('::' T_LPAREN init=expression T_RPAREN)? afold=(T_FOLDLR|T_FOLDRL) T_LPAREN anexpr=expression T_RPAREN 
+		 	{result = createFoldExpression(result,afold,init,anexpr);}
+		)?
+	;
+
+accessExpression[Expression subexpr]
+	returns [Expression result]
+	@init{
+		UnaryOperator newExpr = null;
+		result = subexpr;
+	}
+	:	
+    		(	tcall=T_LSQPAREN ac=expression T_RSQPAREN 			// access tuples, maps 
+    			{ result = createTupleMapAccessExpression(result,ac,tcall); } 
+		|     	bcall=T_LPAREN m_params=methodCallParams T_RPAREN // access method
+			{ result = createMethodAccessExpression(result,m_params,bcall); }
+		)+
+		(	// a[1].c.e()...
+			(T_POINT 
+			idn=T_IDENTIFIER 
+			{result = addIdentifierAccessExpression(result,idn);})+
+			(res=accessExpression[result] {result=res;})?
+		)?	
+	;
+	
+qualifiedIdentifier
+	returns [Expression top]
+	@init {
+		IdentifierExpression selfexpr = null;
+		top = null;
+	}
+	:
+		(self=T_SELF T_POINT		{selfexpr = createSelfIdentifierExpression(self);})? 
+		idb=T_IDENTIFIER 		{top = createIdentifierAccessExpression(selfexpr,idb);}
+		(T_POINT idd=T_IDENTIFIER 	{top = addIdentifierAccessExpression(top,idd);})* 
+	;
+	
+
+methodCallParams
+	returns [ArrayList<Expression> result]
+	@init {
+		result = new ArrayList<Expression>();
+	}
+	:	(expa=expression {result.add(expa);} (T_COMMA expb=expression {result.add(expb);})*)?
+	;
+
+
+
+//
+//  ------------  unary  Operators    ------------ 
+//
+	
+	
+op_un
+	returns [UnaryOperator expr]
+	@init {
+		expr = null;
+	}
+	:	r=op_un_set_list {expr = r;}
+	|	r2=op_un_map 	{expr = r2;}
+	|	T_MINUS 	{expr = createUnaryOperator(ExpressionKind.unminus);}
+	|	T_NOT		{expr = createUnaryOperator(ExpressionKind.not);}
+	|	T_ABS		{expr = createUnaryOperator(ExpressionKind.abs);}
+	;	
+
+
+op_un_set_list
+	returns [UnaryOperator expr]
+	@init {
+		expr = null;
+	}
+	:	T_CARD		// list of A -> int (does not respect dupes, i.e. dupes do not count)
+		{expr = createUnaryOperator(ExpressionKind.card);}
+	|	T_DCONC		// list of list of A -> list of A
+		{expr = createUnaryOperator(ExpressionKind.dconc);}
+	|	T_DINTER	// list of list of A -> list of A (intersection, does not respect dupes)
+		{expr = createUnaryOperator(ExpressionKind.dinter);}
+	|	T_DUNION	// list of list of A -> list of A (union, does not respect dupes)
+		{expr = createUnaryOperator(ExpressionKind.dunion);}
+	|	T_ELEMS		// list of A -> list of A (does not respect dupes)
+		{expr = createUnaryOperator(ExpressionKind.elems);}
+	|	T_HEAD		// list of A -> A
+		{expr = createUnaryOperator(ExpressionKind.head);}
+	|	T_INDS		// list of A -> list of int
+		{expr = createUnaryOperator(ExpressionKind.inds);}
+	|	T_LEN		// list of A -> int (dupes count)
+		{expr = createUnaryOperator(ExpressionKind.len);}
+	|	T_TAIL		// list of A -> list of A	
+		{expr = createUnaryOperator(ExpressionKind.tail);}
+	;
+
+
+op_un_map
+	returns [UnaryOperator expr]
+	@init {
+		expr = null;
+	}
+	:	T_DOM		// map A to B -> list of A
+		{expr = createUnaryOperator(ExpressionKind.dom);}
+	|	T_RNG		// map A to B -> list of B
+		{expr = createUnaryOperator(ExpressionKind.range);}
+	|	T_MERGE		// list of map A to B -> map A to B
+		{expr = createUnaryOperator(ExpressionKind.merge);}
+	;
+
+
+
+
+
+
+//
+//  ==============   LEXER   =================
+//
+T_WS  	: (' '|'\r'|'\t'|'\u000C'|'\n') {$channel=HIDDEN;}
+    	;
+    	
+T_COMMENT
+    	: '/*' .* '*/' {$channel=HIDDEN;}
+    	;
+    	
+LINE_COMMENT
+    	: '#' ~('\n'|'\r')* '\r'? '\n' {$channel=HIDDEN;}
+    	;
+
+T_PRIMED
+	:	'\'';
+
+T_STRINGLITERAL
+	:	'"' 
+		(
+     			( '"' '"' )=>  '"' 
+      		|  	~'"'
+  		)*
+ 		'"'
+	;
+
+
+T_ABORT	:	'abort';
+T_ACTIONS
+	:	'actions';
+T_ASSIGNMENT
+	:	':=';
+T_AUTOCONS:	'autocons';
+T_BAR	:	'|';
+T_BOOL	:	'bool';
+T_CBRL	:	'{';
+T_CBRR	:	'}';
+T_COLON	:	':';
+T_COMMA	:	',';
+//T_CONT	:	'qual';
+T_CHAR	:	'char';
+T_CTRL 	:	'ctr';
+T_SYSTEM
+	:	'system';
+T_DO	:	'do';
+T_ELSE	:	'else';
+T_END	:	'end';
+T_EQUAL	:	'=';
+T_EXISTS	:	'exists';
+T_FLOAT	:	'float';
+T_FORALL	:	'forall';
+T_FALSE 	:	'false';	
+T_IF	:	'if';
+T_IN	:	'in';
+T_INT	:	'int';
+T_KILL	:	'kill';
+T_LIST	:	'list';
+T_LPAREN	:	'(';
+T_LSQPAREN:	'[';
+T_MAP	:	'map';
+T_MAPS	:	'->';
+T_METHODS
+	:	'methods';
+T_NEW	:	'new';
+T_NIL	:	'nil';
+T_NONDET	:	'[]';
+T_OBS	:	'obs';
+T_OD	:	'od';
+T_OF	:	'of';
+T_PRIO	:	'//';
+T_REQUIRES
+	:	'requires';
+T_RPAREN	:	')';
+T_RSQPAREN:	']';
+T_SELF	:	'self';
+T_SET 	:	'set';
+T_SEMICOLON
+	:	';';
+T_STATIC	:	'static';	
+T_SKIP	:	'skip';
+T_BREAK	:	'break';
+T_THEN	:	'then';
+T_TRUE  	:	'true';
+T_TO	:	'to';
+T_TYPES	:	'types';
+T_VAR	:	'var';
+T_WITH	:	'with';     // for nondet assignment
+
+
+//T_ACTION:	'action';
+
+//BOOL
+T_AND	:	'and';
+T_BIIMPLIES
+	:	'<=>';
+T_IMPLIES
+	:	'=>';  //VDM-Style
+T_NOT	:	'not'; //VDM-Style
+T_NOTEQUAL:	'<>';  //VDM-Style
+T_OR	:	'or';
+
+//Numeric (equal, not equal same as in BOOL)
+T_ABS	:	'abs';
+T_DIV	:	'/';
+T_GREATER
+	:	'>';
+T_GREATEREQUAL
+	:	'>=';
+T_IDIV	:	'div';
+T_LESS	:	'<';
+T_LESSEQUAL
+	:	'<='; //VDM-Style
+T_MOD	:	'mod'; //VDM-Style
+T_POW	:	'**';
+T_PROD	:	'*';
+T_DERIV	:	'dt';
+
+// set/list
+T_CARD	:	'card';
+T_CONC	:	'^'; 
+T_DCONC	:	'conc';
+T_DIFF	:	'\\';
+T_DINTER	:	'dinter';
+T_DUNION	:	'dunion';
+T_ELEMS	:	'elems';
+T_HEAD	:	'hd';
+T_INDS	:	'inds';
+T_INTER	:	'inter';
+T_LEN	:	'len'; // differs from T_CARD, as card does not count dupes..
+T_SEQMOD_MAPOVERRIDE
+	:	'++';
+T_SUBSET	:	'subset';
+T_TAIL	:	'tl';
+T_UNION	:	'union';
+T_FOLDLR	
+	:	':>:';
+T_FOLDRL
+	:	':<:';
+
+
+// maps
+T_DOM	:	'dom';
+T_DOMRESBY
+	:	'<-:';
+T_DOMRESTO
+	:	'<:';		
+T_RNG	:	'rng';
+T_RNGRESBY
+	:	':->';
+T_RNGRESTO
+	:	':>';
+T_MERGE	:	'merge';
+T_MUNION	:	'munion';
+
+T_CONSTS	:	'consts';
+
+// numbers
+
+T_INFTY	:	(T_MINUS|T_SUM)? 'inf'
+	;	
+
+
+// INTNUMBER, FLOATNUMBER, RANGETO, T_MINUS, T_PLUS are set within
+// FLOAT_OR_INT_OR_RANGE
+fragment T_INTNUMBER
+	:	;
+fragment T_FLOATNUMBER
+	:	;
+fragment T_RANGETO	
+	:	;
+
+FLOAT_OR_INT_OR_RANGE
+	: 	(T_MINUS|T_SUM)? T_DIGIT+
+		( // at this stage, we could face an int, int..int (=range), int.exp (=float), int.exp..int.exp (=float range) etc..
+				(T_POINT T_POINT) => {$type=T_INTNUMBER;}
+			|	(T_POINT T_DIGIT) => T_POINT T_DIGIT+ (('e'|'E') (T_MINUS|T_SUM)? T_DIGIT+)? {$type=T_FLOATNUMBER;}				
+			|	{$type=T_INTNUMBER;}
+		)
+	|	T_POINT
+		( // could be point or range..
+				T_POINT {$type=T_RANGETO;}
+			| 	      {$type=T_POINT;}
+		)
+	|	T_MINUS	{$type=T_MINUS;}
+	|	T_SUM	{$type=T_SUM;}
+	;	
+
+
+
+fragment T_MINUS:	'-';
+fragment T_SUM	:	'+';
+fragment T_POINT:	'.';
+
+
+
+// identifiers
+T_IDENTIFIER
+	:	T_LETTER (T_LETTER|T_DIGIT)* 
+	;
+	
+//T_PRIMEDIDENTIFIER
+//	:	T_IDENTIFIER '\'';
+	
+fragment
+T_LETTER
+	:	'$'
+	|	'A'..'Z'
+	|	'a'..'z'
+	|	'_'
+	;
+
+fragment 
+T_DIGIT:	'0'..'9';
+
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaCompleteAstTraversalVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaCompleteAstTraversalVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaCompleteAstTraversalVisitor.java	(revision 9)
@@ -42,7 +42,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
 import org.momut.ooas.ast.expressions.TupleConstructor;
@@ -57,7 +56,6 @@
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.ExpressionVariableIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
@@ -78,7 +76,6 @@
 import org.momut.ooas.ast.statements.KillStatement;
 import org.momut.ooas.ast.statements.NondetBlock;
 import org.momut.ooas.ast.statements.PrioBlock;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.SkipStatement;
 import org.momut.ooas.ast.statements.Statement;
@@ -94,9 +91,8 @@
 import org.momut.ooas.ast.types.NullType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserState;
 
 public abstract class OoaCompleteAstTraversalVisitor implements IAstVisitor
@@ -122,7 +118,7 @@
 	/// </summary>
 	/// <param name="element">to be visited</param>
 	/// <param name="parent">parent of the element in the ast</param>
-	protected /*virtual*/ void VisitAstElement(IAst element, IAst parent)
+	protected void VisitAstElement(IAst element, IAst parent)
 	{
 		element.Accept(this);
 	}
@@ -155,13 +151,13 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(EnumIdentifier enumIdentifier)
+	public void visit(EnumIdentifier enumIdentifier)
 	{
 		VisitSub(enumIdentifier.type(), enumIdentifier);
 	}
 
 	@Override
-	public /*virtual*/ void visit(ConstantIdentifier constantIdentifier)
+	public void visit(ConstantIdentifier constantIdentifier)
 	{
 		if (constantIdentifier.type() != null)
 			VisitSub(constantIdentifier.type(), constantIdentifier);
@@ -168,52 +164,45 @@
 		VisitSub(constantIdentifier.Value(), constantIdentifier);
 	}
 
-
 	@Override
-	public /*virtual*/ void visit(LandmarkIdentifier landmarkIdentifier)
+	public void visit(AttributeIdentifier attributeIdentifier)
 	{
-		VisitSub(landmarkIdentifier.type(), landmarkIdentifier);
-	}
-
-	@Override
-	public /*virtual*/ void visit(AttributeIdentifier attributeIdentifier)
-	{
 		VisitSub(attributeIdentifier.type(), attributeIdentifier);
 		VisitSub(attributeIdentifier.initializer(), attributeIdentifier);
 	}
 
 	@Override
-	public /*virtual*/ void visit(ExpressionVariableIdentifier expressionVariableIdentifier)
+	public void visit(ExpressionVariableIdentifier expressionVariableIdentifier)
 	{
 		VisitSub(expressionVariableIdentifier.type(), expressionVariableIdentifier);
 	}
 
 	@Override
-	public /*virtual*/ void visit(ParameterIdentifier parameterIdentifier)
+	public void visit(ParameterIdentifier parameterIdentifier)
 	{
 		VisitSub(parameterIdentifier.type(), parameterIdentifier);
 	}
 
 	@Override
-	public /*virtual*/ void visit(LocalVariableIdentifier localVariableIdentifier)
+	public void visit(LocalVariableIdentifier localVariableIdentifier)
 	{
 		VisitSub(localVariableIdentifier.type(), localVariableIdentifier);
 	}
 
 	@Override
-	public /*virtual*/ void visit(TypeIdentifier typeIdentifier)
+	public void visit(TypeIdentifier typeIdentifier)
 	{
 		VisitSub(typeIdentifier.type(), typeIdentifier);
 	}
 
 	@Override
-	public /*virtual*/ void visit(SelfTypeIdentifier aself)
+	public void visit(SelfTypeIdentifier aself)
 	{
 		visit((TypeIdentifier)aself);
 	}
 
 	@Override
-	public /*virtual*/ void visit(MethodIdentifier methodIdentifier)
+	public void visit(MethodIdentifier methodIdentifier)
 	{
 		VisitSub(methodIdentifier.type(), methodIdentifier);
 		for (final Identifier sym: methodIdentifier.symbolTable().symbolList())
@@ -224,7 +213,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(NamedActionIdentifier namedActionIdentifier)
+	public void visit(NamedActionIdentifier namedActionIdentifier)
 	{
 		VisitSub(namedActionIdentifier.type(), namedActionIdentifier);
 		for (final Identifier sym : namedActionIdentifier.symbolTable().symbolList())
@@ -235,7 +224,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(MainModule mainModule)
+	public void visit(MainModule mainModule)
 	{
 		for (final Identifier sym: mainModule.symbolTable().symbolList())
 			VisitSub(sym, mainModule);
@@ -247,7 +236,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(Module module)
+	public void visit(Module module)
 	{
 		for (final Identifier sym: module.symbolTable().symbolList())
 			VisitSub(sym, module);
@@ -254,7 +243,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(NondetIdentifierList nondetIdentifierList)
+	public void visit(NondetIdentifierList nondetIdentifierList)
 	{
 		for (final Identifier id: nondetIdentifierList.identifiers())
 			VisitSub(id, nondetIdentifierList);
@@ -261,7 +250,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(SeqIdentifierList seqIdentifierList)
+	public void visit(SeqIdentifierList seqIdentifierList)
 	{
 		for (final Identifier id: seqIdentifierList.identifiers())
 			VisitSub(id, seqIdentifierList);
@@ -268,7 +257,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(PrioIdentifierList prioIdentifierList)
+	public void visit(PrioIdentifierList prioIdentifierList)
 	{
 		for (final Identifier id: prioIdentifierList.identifiers())
 			VisitSub(id, prioIdentifierList);
@@ -275,7 +264,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(UnspecIdentifierList unspecIdentifierList)
+	public void visit(UnspecIdentifierList unspecIdentifierList)
 	{
 		for (final Identifier id: unspecIdentifierList.identifiers())
 			VisitSub(id, unspecIdentifierList);
@@ -282,7 +271,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(NondetBlock nondetBlock)
+	public void visit(NondetBlock nondetBlock)
 	{
 		for (final Identifier id: nondetBlock.symbols().symbolList())
 			VisitSub(id, nondetBlock);
@@ -292,7 +281,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(SeqBlock seqBlock)
+	public void visit(SeqBlock seqBlock)
 	{
 		for (final Identifier id: seqBlock.symbols().symbolList())
 			VisitSub(id, seqBlock);
@@ -305,7 +294,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(PrioBlock prioBlock)
+	public void visit(PrioBlock prioBlock)
 	{
 		for (final Identifier id: prioBlock.symbols().symbolList())
 			VisitSub(id, prioBlock);
@@ -315,7 +304,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(GuardedCommand guardedCommand)
+	public void visit(GuardedCommand guardedCommand)
 	{
 		VisitSub(guardedCommand.guard(), guardedCommand);
 		VisitSub(guardedCommand.body(), guardedCommand);
@@ -322,7 +311,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(Assignment assignment)
+	public void visit(Assignment assignment)
 	{
 		for (final Expression vexp: assignment.places())
 			VisitSub(vexp, assignment);
@@ -333,13 +322,13 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(Call call)
+	public void visit(Call call)
 	{
 		VisitSub(call.callExpression(), call);
 	}
 
 	@Override
-	public /*virtual*/ void visit(SkipStatement skipStatement)
+	public void visit(SkipStatement skipStatement)
 	{ }
 
 	@Override
@@ -347,27 +336,27 @@
 	{ }
 
 	@Override
-	public /*virtual*/ void visit(AbortStatement abortStatement)
+	public void visit(AbortStatement abortStatement)
 	{ }
 
 	@Override
-	public /*virtual*/ void visit(KillStatement killStatement)
+	public void visit(KillStatement killStatement)
 	{
 		VisitSub(killStatement.someOne, killStatement);
 	}
 
 	@Override
-	public /*virtual*/ <T>void visit(ValueExpression<T> valueExpression)
+	public <T>void visit(ValueExpression<T> valueExpression)
 	{ }
 
 	@Override
-	public /*virtual*/ void visit(UnresolvedIdentifierExpression unresolvedIdentifierExpression)
+	public void visit(UnresolvedIdentifierExpression unresolvedIdentifierExpression)
 	{
 		VisitSub(unresolvedIdentifierExpression.type(), unresolvedIdentifierExpression);
 	}
 
 	@Override
-	public /*virtual*/ void visit(IdentifierExpression identifierExpression)
+	public void visit(IdentifierExpression identifierExpression)
 	{
 		VisitSub(identifierExpression.type(), identifierExpression);
 		VisitSub(identifierExpression.identifier(), identifierExpression);
@@ -374,13 +363,13 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(TypeExpression typeExpression)
+	public void visit(TypeExpression typeExpression)
 	{
 		VisitSub(typeExpression.type(), typeExpression);
 	}
 
 	@Override
-	public /*virtual*/ void visit(ListConstructor listConstructor)
+	public void visit(ListConstructor listConstructor)
 	{
 		for (final Identifier lvar: listConstructor.comprehensionVariables().symbolList())
 			VisitSub(lvar, listConstructor);
@@ -393,7 +382,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(SetConstructor setConstructor)
+	public void visit(SetConstructor setConstructor)
 	{
 		for (final Identifier svar: setConstructor.comprehensionVariables().symbolList())
 			VisitSub(svar, setConstructor);
@@ -405,7 +394,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(MapConstructor mapConstructor)
+	public void visit(MapConstructor mapConstructor)
 	{
 		/*foreach (var lvar in mapConstructor.localVariables.symbolList)
 			VisitSub(lvar, mapConstructor);*/
@@ -418,7 +407,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(TupleConstructor tupleConstructor)
+	public void visit(TupleConstructor tupleConstructor)
 	{
 		/*foreach (var lvar in tupleConstructor.localVariables.symbolList)
 			VisitSub(lvar, tupleConstructor);*/
@@ -428,7 +417,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(AccessExpression accessExpression)
+	public void visit(AccessExpression accessExpression)
 	{
 		VisitSub(accessExpression.left(), accessExpression);
 		VisitSub(accessExpression.right(), accessExpression);
@@ -435,7 +424,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(BinaryOperator binaryOperator)
+	public void visit(BinaryOperator binaryOperator)
 	{
 		VisitSub(binaryOperator.left(), binaryOperator);
 		VisitSub(binaryOperator.right(), binaryOperator);
@@ -442,7 +431,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(TernaryOperator ternaryOperator)
+	public void visit(TernaryOperator ternaryOperator)
 	{
 		VisitSub(ternaryOperator.left(), ternaryOperator);
 		VisitSub(ternaryOperator.mid(), ternaryOperator);
@@ -450,7 +439,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(TupleMapAccessExpression tupleMapAccessExpression)
+	public void visit(TupleMapAccessExpression tupleMapAccessExpression)
 	{
 		VisitSub(tupleMapAccessExpression.argument(), tupleMapAccessExpression);
 		VisitSub(tupleMapAccessExpression.child(), tupleMapAccessExpression);
@@ -457,7 +446,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(CallExpression callExpression)
+	public void visit(CallExpression callExpression)
 	{
 		if (callExpression.arguments() != null)
 			for (final Expression arg: callExpression.arguments())
@@ -466,7 +455,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(ForallQuantifier quantifier)
+	public void visit(ForallQuantifier quantifier)
 	{
 		for (final Identifier lvar: quantifier.symbols().symbolList())
 			VisitSub(lvar, quantifier);
@@ -475,7 +464,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(ExistsQuantifier quantifier)
+	public void visit(ExistsQuantifier quantifier)
 	{
 		for (final Identifier lvar: quantifier.symbols().symbolList())
 			VisitSub(lvar, quantifier);
@@ -484,7 +473,7 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(UnaryOperator unaryOperator)
+	public void visit(UnaryOperator unaryOperator)
 	{
 		VisitSub(unaryOperator.child(), unaryOperator);
 		if (unaryOperator.kind() == ExpressionKind.Cast)
@@ -494,27 +483,27 @@
 
 
 	@Override
-	public /*virtual*/ void visit(CharType charType)
+	public void visit(CharType charType)
 	{
 	}
 
 	@Override
-	public /*virtual*/ void visit(IntType intType)
+	public void visit(IntType intType)
 	{
 	}
 
 	@Override
-	public /*virtual*/ void visit(BoolType boolType)
+	public void visit(BoolType boolType)
 	{
 	}
 
 	@Override
-	public /*virtual*/ void visit(FloatType floatType)
+	public void visit(FloatType floatType)
 	{
 	}
 
 	@Override
-	public /*virtual*/ void visit(EnumType enumType)
+	public void visit(EnumType enumType)
 	{
 		for (final Identifier sym: enumType.listOfEnumSymbols())
 			VisitSub(sym, enumType);
@@ -521,13 +510,13 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(ListType listType)
+	public void visit(ListType listType)
 	{
 		VisitSub(listType.innerType(), listType);
 	}
 
 	@Override
-	public /*virtual*/ void visit(MapType mapType)
+	public void visit(MapType mapType)
 	{
 		VisitSub(mapType.fromType(), mapType);
 		VisitSub(mapType.toType(), mapType);
@@ -534,29 +523,22 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(QrType qrType)
+	public void visit(TupleType tupleType)
 	{
-		for (final Identifier m: qrType.landmarks())
-			VisitSub(m, qrType);
-	}
-
-	@Override
-	public /*virtual*/ void visit(TupleType tupleType)
-	{
-		for (final UlyssesType t: tupleType.innerTypes())
+		for (final Type t: tupleType.innerTypes())
 			VisitSub(t, tupleType);
 	}
 
 	@Override
-	public /*virtual*/ void visit(FunctionType functionType)
+	public void visit(FunctionType functionType)
 	{
-		for (final UlyssesType a: functionType.parameter())
+		for (final Type a: functionType.parameter())
 			VisitSub(a, functionType);
 		VisitSub(functionType.returnType(), functionType);
 	}
 
 	@Override
-	public /*virtual*/ void visit(OoActionSystemType ooActionSystemType)
+	public void visit(OoActionSystemType ooActionSystemType)
 	{
 		for (final Identifier s: ooActionSystemType.symbols().symbolList())
 			VisitSub(s, ooActionSystemType);
@@ -564,7 +546,7 @@
 		VisitSub(ooActionSystemType.doOdBlock(), ooActionSystemType);
 	}
 
-	public /*virtual*/ @Override
+	public @Override
 	void visit(OpaqueType opaqueType)
 	{
 		VisitSub(opaqueType.resolvedType(), opaqueType);
@@ -571,31 +553,17 @@
 	}
 
 	@Override
-	public /*virtual*/ void visit(NullType nullType)
+	public void visit(NullType nullType)
 	{ }
 
 	@Override
-	public /*virtual*/ void visit(AnyType anyType)
+	public void visit(AnyType anyType)
 	{ }
 
 	@Override
-	public /*virtual*/ void visit(ObjectConstructor objectConstructor)
+	public void visit(ObjectConstructor objectConstructor)
 	{
 		VisitSub(objectConstructor.type(), objectConstructor);
 	}
-
-	@Override
-	public /*virtual*/ void visit(QValConstructor qValConstructor)
-	{
-	}
-
-	@Override
-	public /*virtual*/ void visit(QualitativeConstraintStatement qalitativeConstraintStatement)
-	{
-		VisitSub(qalitativeConstraintStatement.variable0(), qalitativeConstraintStatement);
-		VisitSub(qalitativeConstraintStatement.variable1(), qalitativeConstraintStatement);
-		if (qalitativeConstraintStatement.variable2() != null)
-			VisitSub(qalitativeConstraintStatement.variable2(), qalitativeConstraintStatement);
-	}
 }
 
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaActionClassifierVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaActionClassifierVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaActionClassifierVisitor.java	(revision 9)
@@ -199,9 +199,6 @@
 			case Skip:
 			case Break:
 				break;
-			case QualConstraint:
-				w.m_hasUnsafeElement = true;
-				break;
 			case SeqBlock:
 				// seq block in seq block should not occur..
 			default:
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaParser.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaParser.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/parser/ooaParser.java	(revision 9)
@@ -1,4 +1,4 @@
-// $ANTLR 3.4 C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g 2015-03-30 18:21:32
+// $ANTLR 3.4 /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g 2015-08-31 13:32:37
 
  /*
     Ulysses OO-Action System Parser
@@ -16,27 +16,21 @@
 
 
 import org.antlr.runtime.*;
-import java.util.Stack;
-import java.util.List;
 import java.util.ArrayList;
 
 @SuppressWarnings({"all", "warnings", "unchecked"})
 public class ooaParser extends ooaCustomParser {
     public static final String[] tokenNames = new String[] {
-        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "FLOAT_OR_INT_OR_RANGE", "LINE_COMMENT", "T_ABORT", "T_ABS", "T_ACTIONS", "T_AND", "T_ASSIGNMENT", "T_AUTOCONS", "T_BAR", "T_BIIMPLIES", "T_BOOL", "T_BREAK", "T_CARD", "T_CBRL", "T_CBRR", "T_CHAR", "T_COLON", "T_COMMA", "T_COMMENT", "T_CONC", "T_CONSTS", "T_CONT", "T_CTRL", "T_DCONC", "T_DERIV", "T_DIFF", "T_DIGIT", "T_DINTER", "T_DIV", "T_DO", "T_DOM", "T_DOMRESBY", "T_DOMRESTO", "T_DUNION", "T_ELEMS", "T_ELSE", "T_END", "T_EQUAL", "T_EXISTS", "T_FALSE", "T_FLOAT", "T_FLOATNUMBER", "T_FOLDLR", "T_FOLDRL", "T_FORALL", "T_GREATER", "T_GREATEREQUAL", "T_HEAD", "T_IDENTIFIER", "T_IDIV", "T_IF", "T_IMPLIES", "T_IN", "T_INDS", "T_INFTY", "T_INT", "T_INTER", "T_INTNUMBER", "T_KILL", "T_LEN", "T_LESS", "T_LESSEQUAL", "T_LETTER", "T_LIST", "T_LPAREN", "T_LSQPAREN", "T_MAP", "T_MAPS", "T_MERGE", "T_METHODS", "T_MINUS", "T_MOD", "T_MUNION", "T_NEW", "T_NIL", "T_NONDET", "T_NOT", "T_NOTEQUAL", "T_OBS", "T_OD", "T_OF", "T_OR", "T_POINT", "T_POW", "T_PRIMED", "T_PRIO", "T_PROD", "T_QUANTITY", "T_RANGETO", "T_REQUIRES", "T_RNG", "T_RNGRESBY", "T_RNGRESTO", "T_RPAREN", "T_RSQPAREN", "T_SELF", "T_SEMICOLON", "T_SEQMOD_MAPOVERRIDE", "T_SET", "T_SKIP", "T_STATIC", "T_STRINGLITERAL", "T_SUBSET", "T_SUM", "T_SYSTEM", "T_TAIL", "T_THEN", "T_TO", "T_TRUE", "T_TYPES", "T_UNION", "T_VAR", "T_WITH", "T_WS", "'&'", "'::'", "']|'", "'as'", "'begin'", "'dec'", "'inc'", "'qval'", "'steady'", "'|['"
+        "<invalid>", "<EOR>", "<DOWN>", "<UP>", "FLOAT_OR_INT_OR_RANGE", "LINE_COMMENT", "T_ABORT", "T_ABS", "T_ACTIONS", "T_AND", "T_ASSIGNMENT", "T_AUTOCONS", "T_BAR", "T_BIIMPLIES", "T_BOOL", "T_BREAK", "T_CARD", "T_CBRL", "T_CBRR", "T_CHAR", "T_COLON", "T_COMMA", "T_COMMENT", "T_CONC", "T_CONSTS", "T_CTRL", "T_DCONC", "T_DERIV", "T_DIFF", "T_DIGIT", "T_DINTER", "T_DIV", "T_DO", "T_DOM", "T_DOMRESBY", "T_DOMRESTO", "T_DUNION", "T_ELEMS", "T_ELSE", "T_END", "T_EQUAL", "T_EXISTS", "T_FALSE", "T_FLOAT", "T_FLOATNUMBER", "T_FOLDLR", "T_FOLDRL", "T_FORALL", "T_GREATER", "T_GREATEREQUAL", "T_HEAD", "T_IDENTIFIER", "T_IDIV", "T_IF", "T_IMPLIES", "T_IN", "T_INDS", "T_INFTY", "T_INT", "T_INTER", "T_INTNUMBER", "T_KILL", "T_LEN", "T_LESS", "T_LESSEQUAL", "T_LETTER", "T_LIST", "T_LPAREN", "T_LSQPAREN", "T_MAP", "T_MAPS", "T_MERGE", "T_METHODS", "T_MINUS", "T_MOD", "T_MUNION", "T_NEW", "T_NIL", "T_NONDET", "T_NOT", "T_NOTEQUAL", "T_OBS", "T_OD", "T_OF", "T_OR", "T_POINT", "T_POW", "T_PRIMED", "T_PRIO", "T_PROD", "T_RANGETO", "T_REQUIRES", "T_RNG", "T_RNGRESBY", "T_RNGRESTO", "T_RPAREN", "T_RSQPAREN", "T_SELF", "T_SEMICOLON", "T_SEQMOD_MAPOVERRIDE", "T_SET", "T_SKIP", "T_STATIC", "T_STRINGLITERAL", "T_SUBSET", "T_SUM", "T_SYSTEM", "T_TAIL", "T_THEN", "T_TO", "T_TRUE", "T_TYPES", "T_UNION", "T_VAR", "T_WITH", "T_WS", "'&'", "'::'", "']|'", "'as'", "'begin'", "'|['"
     };
 
     public static final int EOF=-1;
+    public static final int T__116=116;
+    public static final int T__117=117;
     public static final int T__118=118;
     public static final int T__119=119;
     public static final int T__120=120;
     public static final int T__121=121;
-    public static final int T__122=122;
-    public static final int T__123=123;
-    public static final int T__124=124;
-    public static final int T__125=125;
-    public static final int T__126=126;
-    public static final int T__127=127;
     public static final int FLOAT_OR_INT_OR_RANGE=4;
     public static final int LINE_COMMENT=5;
     public static final int T_ABORT=6;
@@ -58,99 +52,97 @@
     public static final int T_COMMENT=22;
     public static final int T_CONC=23;
     public static final int T_CONSTS=24;
-    public static final int T_CONT=25;
-    public static final int T_CTRL=26;
-    public static final int T_DCONC=27;
-    public static final int T_DERIV=28;
-    public static final int T_DIFF=29;
-    public static final int T_DIGIT=30;
-    public static final int T_DINTER=31;
-    public static final int T_DIV=32;
-    public static final int T_DO=33;
-    public static final int T_DOM=34;
-    public static final int T_DOMRESBY=35;
-    public static final int T_DOMRESTO=36;
-    public static final int T_DUNION=37;
-    public static final int T_ELEMS=38;
-    public static final int T_ELSE=39;
-    public static final int T_END=40;
-    public static final int T_EQUAL=41;
-    public static final int T_EXISTS=42;
-    public static final int T_FALSE=43;
-    public static final int T_FLOAT=44;
-    public static final int T_FLOATNUMBER=45;
-    public static final int T_FOLDLR=46;
-    public static final int T_FOLDRL=47;
-    public static final int T_FORALL=48;
-    public static final int T_GREATER=49;
-    public static final int T_GREATEREQUAL=50;
-    public static final int T_HEAD=51;
-    public static final int T_IDENTIFIER=52;
-    public static final int T_IDIV=53;
-    public static final int T_IF=54;
-    public static final int T_IMPLIES=55;
-    public static final int T_IN=56;
-    public static final int T_INDS=57;
-    public static final int T_INFTY=58;
-    public static final int T_INT=59;
-    public static final int T_INTER=60;
-    public static final int T_INTNUMBER=61;
-    public static final int T_KILL=62;
-    public static final int T_LEN=63;
-    public static final int T_LESS=64;
-    public static final int T_LESSEQUAL=65;
-    public static final int T_LETTER=66;
-    public static final int T_LIST=67;
-    public static final int T_LPAREN=68;
-    public static final int T_LSQPAREN=69;
-    public static final int T_MAP=70;
-    public static final int T_MAPS=71;
-    public static final int T_MERGE=72;
-    public static final int T_METHODS=73;
-    public static final int T_MINUS=74;
-    public static final int T_MOD=75;
-    public static final int T_MUNION=76;
-    public static final int T_NEW=77;
-    public static final int T_NIL=78;
-    public static final int T_NONDET=79;
-    public static final int T_NOT=80;
-    public static final int T_NOTEQUAL=81;
-    public static final int T_OBS=82;
-    public static final int T_OD=83;
-    public static final int T_OF=84;
-    public static final int T_OR=85;
-    public static final int T_POINT=86;
-    public static final int T_POW=87;
-    public static final int T_PRIMED=88;
-    public static final int T_PRIO=89;
-    public static final int T_PROD=90;
-    public static final int T_QUANTITY=91;
-    public static final int T_RANGETO=92;
-    public static final int T_REQUIRES=93;
-    public static final int T_RNG=94;
-    public static final int T_RNGRESBY=95;
-    public static final int T_RNGRESTO=96;
-    public static final int T_RPAREN=97;
-    public static final int T_RSQPAREN=98;
-    public static final int T_SELF=99;
-    public static final int T_SEMICOLON=100;
-    public static final int T_SEQMOD_MAPOVERRIDE=101;
-    public static final int T_SET=102;
-    public static final int T_SKIP=103;
-    public static final int T_STATIC=104;
-    public static final int T_STRINGLITERAL=105;
-    public static final int T_SUBSET=106;
-    public static final int T_SUM=107;
-    public static final int T_SYSTEM=108;
-    public static final int T_TAIL=109;
-    public static final int T_THEN=110;
-    public static final int T_TO=111;
-    public static final int T_TRUE=112;
-    public static final int T_TYPES=113;
-    public static final int T_UNION=114;
-    public static final int T_VAR=115;
-    public static final int T_WITH=116;
-    public static final int T_WS=117;
+    public static final int T_CTRL=25;
+    public static final int T_DCONC=26;
+    public static final int T_DERIV=27;
+    public static final int T_DIFF=28;
+    public static final int T_DIGIT=29;
+    public static final int T_DINTER=30;
+    public static final int T_DIV=31;
+    public static final int T_DO=32;
+    public static final int T_DOM=33;
+    public static final int T_DOMRESBY=34;
+    public static final int T_DOMRESTO=35;
+    public static final int T_DUNION=36;
+    public static final int T_ELEMS=37;
+    public static final int T_ELSE=38;
+    public static final int T_END=39;
+    public static final int T_EQUAL=40;
+    public static final int T_EXISTS=41;
+    public static final int T_FALSE=42;
+    public static final int T_FLOAT=43;
+    public static final int T_FLOATNUMBER=44;
+    public static final int T_FOLDLR=45;
+    public static final int T_FOLDRL=46;
+    public static final int T_FORALL=47;
+    public static final int T_GREATER=48;
+    public static final int T_GREATEREQUAL=49;
+    public static final int T_HEAD=50;
+    public static final int T_IDENTIFIER=51;
+    public static final int T_IDIV=52;
+    public static final int T_IF=53;
+    public static final int T_IMPLIES=54;
+    public static final int T_IN=55;
+    public static final int T_INDS=56;
+    public static final int T_INFTY=57;
+    public static final int T_INT=58;
+    public static final int T_INTER=59;
+    public static final int T_INTNUMBER=60;
+    public static final int T_KILL=61;
+    public static final int T_LEN=62;
+    public static final int T_LESS=63;
+    public static final int T_LESSEQUAL=64;
+    public static final int T_LETTER=65;
+    public static final int T_LIST=66;
+    public static final int T_LPAREN=67;
+    public static final int T_LSQPAREN=68;
+    public static final int T_MAP=69;
+    public static final int T_MAPS=70;
+    public static final int T_MERGE=71;
+    public static final int T_METHODS=72;
+    public static final int T_MINUS=73;
+    public static final int T_MOD=74;
+    public static final int T_MUNION=75;
+    public static final int T_NEW=76;
+    public static final int T_NIL=77;
+    public static final int T_NONDET=78;
+    public static final int T_NOT=79;
+    public static final int T_NOTEQUAL=80;
+    public static final int T_OBS=81;
+    public static final int T_OD=82;
+    public static final int T_OF=83;
+    public static final int T_OR=84;
+    public static final int T_POINT=85;
+    public static final int T_POW=86;
+    public static final int T_PRIMED=87;
+    public static final int T_PRIO=88;
+    public static final int T_PROD=89;
+    public static final int T_RANGETO=90;
+    public static final int T_REQUIRES=91;
+    public static final int T_RNG=92;
+    public static final int T_RNGRESBY=93;
+    public static final int T_RNGRESTO=94;
+    public static final int T_RPAREN=95;
+    public static final int T_RSQPAREN=96;
+    public static final int T_SELF=97;
+    public static final int T_SEMICOLON=98;
+    public static final int T_SEQMOD_MAPOVERRIDE=99;
+    public static final int T_SET=100;
+    public static final int T_SKIP=101;
+    public static final int T_STATIC=102;
+    public static final int T_STRINGLITERAL=103;
+    public static final int T_SUBSET=104;
+    public static final int T_SUM=105;
+    public static final int T_SYSTEM=106;
+    public static final int T_TAIL=107;
+    public static final int T_THEN=108;
+    public static final int T_TO=109;
+    public static final int T_TRUE=110;
+    public static final int T_TYPES=111;
+    public static final int T_UNION=112;
+    public static final int T_VAR=113;
+    public static final int T_WITH=114;
+    public static final int T_WS=115;
 
     // delegates
     public ooaCustomParser[] getDelegates() {
@@ -167,26 +159,28 @@
         super(input, state);
     }
 
-    public String[] getTokenNames() { return ooaParser.tokenNames; }
-    public String getGrammarFileName() { return "C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g"; }
+    @Override
+	public String[] getTokenNames() { return ooaParser.tokenNames; }
+    @Override
+	public String getGrammarFileName() { return "/home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g"; }
 
 
 
     // $ANTLR start "ooActionSystems"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:152:1: ooActionSystems : ( T_CONSTS namedConstList )? T_TYPES namedTypeList T_SYSTEM comp= asTypeComposition[null] ;
-    public final void ooActionSystems()  {
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:154:1: ooActionSystems : ( T_CONSTS namedConstList )? T_TYPES namedTypeList T_SYSTEM comp= asTypeComposition[null] ;
+    public final void ooActionSystems() {
         IdentifierList comp =null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:153:2: ( ( T_CONSTS namedConstList )? T_TYPES namedTypeList T_SYSTEM comp= asTypeComposition[null] )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:153:4: ( T_CONSTS namedConstList )? T_TYPES namedTypeList T_SYSTEM comp= asTypeComposition[null]
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:155:2: ( ( T_CONSTS namedConstList )? T_TYPES namedTypeList T_SYSTEM comp= asTypeComposition[null] )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:155:4: ( T_CONSTS namedConstList )? T_TYPES namedTypeList T_SYSTEM comp= asTypeComposition[null]
             {
             initializeTopLevelParserState();
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:155:11: ( T_CONSTS namedConstList )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:157:11: ( T_CONSTS namedConstList )?
             int alt1=2;
-            int LA1_0 = input.LA(1);
+            final int LA1_0 = input.LA(1);
 
             if ( (LA1_0==T_CONSTS) ) {
                 alt1=1;
@@ -193,9 +187,9 @@
             }
             switch (alt1) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:155:12: T_CONSTS namedConstList
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:157:12: T_CONSTS namedConstList
                     {
-                    match(input,T_CONSTS,FOLLOW_T_CONSTS_in_ooActionSystems74); 
+                    match(input,T_CONSTS,FOLLOW_T_CONSTS_in_ooActionSystems74);
 
                     pushFollow(FOLLOW_namedConstList_in_ooActionSystems76);
                     namedConstList();
@@ -209,7 +203,7 @@
             }
 
 
-            match(input,T_TYPES,FOLLOW_T_TYPES_in_ooActionSystems86); 
+            match(input,T_TYPES,FOLLOW_T_TYPES_in_ooActionSystems86);
 
             pushFollow(FOLLOW_namedTypeList_in_ooActionSystems94);
             namedTypeList();
@@ -217,7 +211,7 @@
             state._fsp--;
 
 
-            match(input,T_SYSTEM,FOLLOW_T_SYSTEM_in_ooActionSystems99); 
+            match(input,T_SYSTEM,FOLLOW_T_SYSTEM_in_ooActionSystems99);
 
             pushFollow(FOLLOW_asTypeComposition_in_ooActionSystems106);
             comp=asTypeComposition(null);
@@ -230,7 +224,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -245,11 +239,11 @@
 
 
     // $ANTLR start "namedConstList"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:170:1: namedConstList : namedConst ( T_SEMICOLON namedConst )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:172:1: namedConstList : namedConst ( T_SEMICOLON namedConst )* ;
     public final void namedConstList() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:171:2: ( namedConst ( T_SEMICOLON namedConst )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:171:4: namedConst ( T_SEMICOLON namedConst )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:173:2: ( namedConst ( T_SEMICOLON namedConst )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:173:4: namedConst ( T_SEMICOLON namedConst )*
             {
             pushFollow(FOLLOW_namedConst_in_namedConstList129);
             namedConst();
@@ -257,11 +251,11 @@
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:171:15: ( T_SEMICOLON namedConst )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:173:15: ( T_SEMICOLON namedConst )*
             loop2:
             do {
                 int alt2=2;
-                int LA2_0 = input.LA(1);
+                final int LA2_0 = input.LA(1);
 
                 if ( (LA2_0==T_SEMICOLON) ) {
                     alt2=1;
@@ -270,9 +264,9 @@
 
                 switch (alt2) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:171:16: T_SEMICOLON namedConst
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:173:16: T_SEMICOLON namedConst
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_namedConstList132); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_namedConstList132);
 
             	    pushFollow(FOLLOW_namedConst_in_namedConstList134);
             	    namedConst();
@@ -292,7 +286,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -307,7 +301,7 @@
 
 
     // $ANTLR start "namedConst"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:174:1: namedConst : aName= T_IDENTIFIER T_EQUAL anExpr= expression ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:176:1: namedConst : aName= T_IDENTIFIER T_EQUAL anExpr= expression ;
     public final void namedConst() throws RecognitionException {
         Token aName=null;
         Expression anExpr =null;
@@ -314,12 +308,12 @@
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:175:2: (aName= T_IDENTIFIER T_EQUAL anExpr= expression )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:175:4: aName= T_IDENTIFIER T_EQUAL anExpr= expression
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:177:2: (aName= T_IDENTIFIER T_EQUAL anExpr= expression )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:177:4: aName= T_IDENTIFIER T_EQUAL anExpr= expression
             {
-            aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_namedConst150); 
+            aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_namedConst150);
 
-            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_namedConst154); 
+            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_namedConst154);
 
             pushFollow(FOLLOW_expression_in_namedConst160);
             anExpr=expression();
@@ -332,7 +326,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -347,11 +341,11 @@
 
 
     // $ANTLR start "namedTypeList"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:185:1: namedTypeList : namedType ( T_SEMICOLON namedType )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:187:1: namedTypeList : namedType ( T_SEMICOLON namedType )* ;
     public final void namedTypeList() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:186:2: ( namedType ( T_SEMICOLON namedType )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:186:4: namedType ( T_SEMICOLON namedType )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:188:2: ( namedType ( T_SEMICOLON namedType )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:188:4: namedType ( T_SEMICOLON namedType )*
             {
             pushFollow(FOLLOW_namedType_in_namedTypeList180);
             namedType();
@@ -359,11 +353,11 @@
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:186:14: ( T_SEMICOLON namedType )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:188:14: ( T_SEMICOLON namedType )*
             loop3:
             do {
                 int alt3=2;
-                int LA3_0 = input.LA(1);
+                final int LA3_0 = input.LA(1);
 
                 if ( (LA3_0==T_SEMICOLON) ) {
                     alt3=1;
@@ -372,9 +366,9 @@
 
                 switch (alt3) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:186:15: T_SEMICOLON namedType
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:188:15: T_SEMICOLON namedType
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_namedTypeList183); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_namedTypeList183);
 
             	    pushFollow(FOLLOW_namedType_in_namedTypeList185);
             	    namedType();
@@ -394,7 +388,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -409,27 +403,27 @@
 
 
     // $ANTLR start "namedType"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:189:1: namedType : aName= T_IDENTIFIER T_EQUAL (aType= complexType |anOoaType= ooActionSystem ) ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:191:1: namedType : aName= T_IDENTIFIER T_EQUAL (aType= complexType |anOoaType= ooActionSystem ) ;
     public final void namedType() throws RecognitionException {
         Token aName=null;
-        UlyssesType aType =null;
+        Type aType =null;
 
         OoActionSystemType anOoaType =null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:190:2: (aName= T_IDENTIFIER T_EQUAL (aType= complexType |anOoaType= ooActionSystem ) )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:190:4: aName= T_IDENTIFIER T_EQUAL (aType= complexType |anOoaType= ooActionSystem )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:192:2: (aName= T_IDENTIFIER T_EQUAL (aType= complexType |anOoaType= ooActionSystem ) )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:192:4: aName= T_IDENTIFIER T_EQUAL (aType= complexType |anOoaType= ooActionSystem )
             {
-            aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_namedType201); 
+            aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_namedType201);
 
-            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_namedType206); 
+            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_namedType206);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:192:3: (aType= complexType |anOoaType= ooActionSystem )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:194:3: (aType= complexType |anOoaType= ooActionSystem )
             int alt4=2;
-            int LA4_0 = input.LA(1);
+            final int LA4_0 = input.LA(1);
 
-            if ( (LA4_0==T_BOOL||LA4_0==T_CBRL||LA4_0==T_CHAR||LA4_0==T_FLOAT||LA4_0==T_IDENTIFIER||LA4_0==T_INT||(LA4_0 >= T_LIST && LA4_0 <= T_MAP)||LA4_0==T_QUANTITY) ) {
+            if ( (LA4_0==T_BOOL||LA4_0==T_CBRL||LA4_0==T_CHAR||LA4_0==T_FLOAT||LA4_0==T_IDENTIFIER||LA4_0==T_INT||(LA4_0 >= T_LIST && LA4_0 <= T_MAP)) ) {
                 alt4=1;
             }
             else if ( (LA4_0==T_AUTOCONS||LA4_0==T_SYSTEM) ) {
@@ -436,7 +430,7 @@
                 alt4=2;
             }
             else {
-                NoViableAltException nvae =
+                final NoViableAltException nvae =
                     new NoViableAltException("", 4, 0, input);
 
                 throw nvae;
@@ -444,7 +438,7 @@
             }
             switch (alt4) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:193:4: aType= complexType
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:195:4: aType= complexType
                     {
                     pushFollow(FOLLOW_complexType_in_namedType218);
                     aType=complexType();
@@ -457,7 +451,7 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:194:5: anOoaType= ooActionSystem
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:196:5: anOoaType= ooActionSystem
                     {
                     pushFollow(FOLLOW_ooActionSystem_in_namedType230);
                     anOoaType=ooActionSystem();
@@ -476,7 +470,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -491,14 +485,14 @@
 
 
     // $ANTLR start "asTypeComposition"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:200:1: asTypeComposition[IdentifierList top] returns [IdentifierList prioList] : asTypeCompositionParallel[prioList] ( T_PRIO asTypeCompositionParallel[prioList] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:202:1: asTypeComposition[IdentifierList top] returns [IdentifierList prioList] : asTypeCompositionParallel[prioList] ( T_PRIO asTypeCompositionParallel[prioList] )* ;
     public final IdentifierList asTypeComposition(IdentifierList top) throws RecognitionException {
         IdentifierList prioList = null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:202:2: ( asTypeCompositionParallel[prioList] ( T_PRIO asTypeCompositionParallel[prioList] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:202:6: asTypeCompositionParallel[prioList] ( T_PRIO asTypeCompositionParallel[prioList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:204:2: ( asTypeCompositionParallel[prioList] ( T_PRIO asTypeCompositionParallel[prioList] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:204:6: asTypeCompositionParallel[prioList] ( T_PRIO asTypeCompositionParallel[prioList] )*
             {
             prioList = new PrioIdentifierList(top);
 
@@ -508,11 +502,11 @@
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:203:40: ( T_PRIO asTypeCompositionParallel[prioList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:205:40: ( T_PRIO asTypeCompositionParallel[prioList] )*
             loop5:
             do {
                 int alt5=2;
-                int LA5_0 = input.LA(1);
+                final int LA5_0 = input.LA(1);
 
                 if ( (LA5_0==T_PRIO) ) {
                     alt5=1;
@@ -521,9 +515,9 @@
 
                 switch (alt5) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:203:41: T_PRIO asTypeCompositionParallel[prioList]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:205:41: T_PRIO asTypeCompositionParallel[prioList]
             	    {
-            	    match(input,T_PRIO,FOLLOW_T_PRIO_in_asTypeComposition271); 
+            	    match(input,T_PRIO,FOLLOW_T_PRIO_in_asTypeComposition271);
 
             	    pushFollow(FOLLOW_asTypeCompositionParallel_in_asTypeComposition273);
             	    asTypeCompositionParallel(prioList);
@@ -543,7 +537,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -558,13 +552,13 @@
 
 
     // $ANTLR start "asTypeCompositionParallel"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:206:1: asTypeCompositionParallel[IdentifierList top] : asTypeCompositionSequential[parList] ( T_NONDET asTypeCompositionSequential[parList] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:208:1: asTypeCompositionParallel[IdentifierList top] : asTypeCompositionSequential[parList] ( T_NONDET asTypeCompositionSequential[parList] )* ;
     public final void asTypeCompositionParallel(IdentifierList top) throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:207:2: ( asTypeCompositionSequential[parList] ( T_NONDET asTypeCompositionSequential[parList] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:207:6: asTypeCompositionSequential[parList] ( T_NONDET asTypeCompositionSequential[parList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:209:2: ( asTypeCompositionSequential[parList] ( T_NONDET asTypeCompositionSequential[parList] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:209:6: asTypeCompositionSequential[parList] ( T_NONDET asTypeCompositionSequential[parList] )*
             {
-            IdentifierList parList = new NondetIdentifierList(top);
+            final IdentifierList parList = new NondetIdentifierList(top);
 
             pushFollow(FOLLOW_asTypeCompositionSequential_in_asTypeCompositionParallel296);
             asTypeCompositionSequential(parList);
@@ -572,11 +566,11 @@
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:208:40: ( T_NONDET asTypeCompositionSequential[parList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:210:40: ( T_NONDET asTypeCompositionSequential[parList] )*
             loop6:
             do {
                 int alt6=2;
-                int LA6_0 = input.LA(1);
+                final int LA6_0 = input.LA(1);
 
                 if ( (LA6_0==T_NONDET) ) {
                     alt6=1;
@@ -585,9 +579,9 @@
 
                 switch (alt6) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:208:41: T_NONDET asTypeCompositionSequential[parList]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:210:41: T_NONDET asTypeCompositionSequential[parList]
             	    {
-            	    match(input,T_NONDET,FOLLOW_T_NONDET_in_asTypeCompositionParallel300); 
+            	    match(input,T_NONDET,FOLLOW_T_NONDET_in_asTypeCompositionParallel300);
 
             	    pushFollow(FOLLOW_asTypeCompositionSequential_in_asTypeCompositionParallel302);
             	    asTypeCompositionSequential(parList);
@@ -607,7 +601,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -622,13 +616,13 @@
 
 
     // $ANTLR start "asTypeCompositionSequential"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:211:1: asTypeCompositionSequential[IdentifierList top] : asTypeCompositionBlockParen[seqList] ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:213:1: asTypeCompositionSequential[IdentifierList top] : asTypeCompositionBlockParen[seqList] ;
     public final void asTypeCompositionSequential(IdentifierList top) throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:212:2: ( asTypeCompositionBlockParen[seqList] )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:212:6: asTypeCompositionBlockParen[seqList]
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:214:2: ( asTypeCompositionBlockParen[seqList] )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:214:6: asTypeCompositionBlockParen[seqList]
             {
-            IdentifierList seqList = new SeqIdentifierList(top);
+            final IdentifierList seqList = new SeqIdentifierList(top);
 
             pushFollow(FOLLOW_asTypeCompositionBlockParen_in_asTypeCompositionSequential324);
             asTypeCompositionBlockParen(seqList);
@@ -639,7 +633,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -654,14 +648,14 @@
 
 
     // $ANTLR start "asTypeCompositionBlockParen"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:216:1: asTypeCompositionBlockParen[IdentifierList top] : ( T_LPAREN asTypeComposition[top] T_RPAREN |aName= T_IDENTIFIER );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:218:1: asTypeCompositionBlockParen[IdentifierList top] : ( T_LPAREN asTypeComposition[top] T_RPAREN |aName= T_IDENTIFIER );
     public final void asTypeCompositionBlockParen(IdentifierList top) throws RecognitionException {
         Token aName=null;
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:217:2: ( T_LPAREN asTypeComposition[top] T_RPAREN |aName= T_IDENTIFIER )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:219:2: ( T_LPAREN asTypeComposition[top] T_RPAREN |aName= T_IDENTIFIER )
             int alt7=2;
-            int LA7_0 = input.LA(1);
+            final int LA7_0 = input.LA(1);
 
             if ( (LA7_0==T_LPAREN) ) {
                 alt7=1;
@@ -670,7 +664,7 @@
                 alt7=2;
             }
             else {
-                NoViableAltException nvae =
+                final NoViableAltException nvae =
                     new NoViableAltException("", 7, 0, input);
 
                 throw nvae;
@@ -678,9 +672,9 @@
             }
             switch (alt7) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:217:4: T_LPAREN asTypeComposition[top] T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:219:4: T_LPAREN asTypeComposition[top] T_RPAREN
                     {
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_asTypeCompositionBlockParen339); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_asTypeCompositionBlockParen339);
 
                     pushFollow(FOLLOW_asTypeComposition_in_asTypeCompositionBlockParen341);
                     asTypeComposition(top);
@@ -688,14 +682,14 @@
                     state._fsp--;
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_asTypeCompositionBlockParen344); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_asTypeCompositionBlockParen344);
 
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:218:4: aName= T_IDENTIFIER
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:220:4: aName= T_IDENTIFIER
                     {
-                    aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_asTypeCompositionBlockParen351); 
+                    aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_asTypeCompositionBlockParen351);
 
                     addToIdentifierList(top,aName);
 
@@ -704,7 +698,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -719,60 +713,52 @@
 
 
     // $ANTLR start "complexType"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:226:1: complexType returns [UlyssesType aTypeSymbol] : ( T_LIST T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN T_OF innertype= complexType | T_LSQPAREN alistelem= T_IDENTIFIER ( T_COMMA otherlistelem= T_IDENTIFIER )* T_RSQPAREN | T_MAP ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )? mapfromtype= simpleType T_TO maptotype= complexType | T_QUANTITY T_OF T_LSQPAREN (alandmark= T_IDENTIFIER |alandmark= T_MINUS T_INFTY ) ( T_COMMA (otherlandmark= T_IDENTIFIER |otherlandmark= T_INFTY ) )* T_RSQPAREN | T_LPAREN aType= complexType ( T_COMMA anotherType= complexType )* T_RPAREN |r= simpleType );
-    public final UlyssesType complexType() throws RecognitionException {
-        UlyssesType aTypeSymbol = null;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:228:1: complexType returns [Type aTypeSymbol] : ( T_LIST T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN T_OF innertype= complexType | T_LSQPAREN alistelem= T_IDENTIFIER ( T_COMMA otherlistelem= T_IDENTIFIER )* T_RSQPAREN | T_MAP ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )? mapfromtype= simpleType T_TO maptotype= complexType | T_LPAREN aType= complexType ( T_COMMA anotherType= complexType )* T_RPAREN |r= simpleType );
+    public final Type complexType() throws RecognitionException {
+        Type aTypeSymbol = null;
 
 
         Token numOfElements=null;
         Token alistelem=null;
         Token otherlistelem=null;
-        Token alandmark=null;
-        Token otherlandmark=null;
-        UlyssesType innertype =null;
+        Type innertype =null;
 
-        UlyssesType mapfromtype =null;
+        Type mapfromtype =null;
 
-        UlyssesType maptotype =null;
+        Type maptotype =null;
 
-        UlyssesType aType =null;
+        Type aType =null;
 
-        UlyssesType anotherType =null;
+        Type anotherType =null;
 
-        UlyssesType r =null;
+        Type r =null;
 
 
-         
+
         		aTypeSymbol = null;
-        		alandmark = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:232:2: ( T_LIST T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN T_OF innertype= complexType | T_LSQPAREN alistelem= T_IDENTIFIER ( T_COMMA otherlistelem= T_IDENTIFIER )* T_RSQPAREN | T_MAP ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )? mapfromtype= simpleType T_TO maptotype= complexType | T_QUANTITY T_OF T_LSQPAREN (alandmark= T_IDENTIFIER |alandmark= T_MINUS T_INFTY ) ( T_COMMA (otherlandmark= T_IDENTIFIER |otherlandmark= T_INFTY ) )* T_RSQPAREN | T_LPAREN aType= complexType ( T_COMMA anotherType= complexType )* T_RPAREN |r= simpleType )
-            int alt14=6;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:233:2: ( T_LIST T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN T_OF innertype= complexType | T_LSQPAREN alistelem= T_IDENTIFIER ( T_COMMA otherlistelem= T_IDENTIFIER )* T_RSQPAREN | T_MAP ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )? mapfromtype= simpleType T_TO maptotype= complexType | T_LPAREN aType= complexType ( T_COMMA anotherType= complexType )* T_RPAREN |r= simpleType )
+            int alt11=5;
             switch ( input.LA(1) ) {
             case T_LIST:
                 {
-                alt14=1;
+                alt11=1;
                 }
                 break;
             case T_LSQPAREN:
                 {
-                alt14=2;
+                alt11=2;
                 }
                 break;
             case T_MAP:
                 {
-                alt14=3;
+                alt11=3;
                 }
                 break;
-            case T_QUANTITY:
-                {
-                alt14=4;
-                }
-                break;
             case T_LPAREN:
                 {
-                alt14=5;
+                alt11=4;
                 }
                 break;
             case T_BOOL:
@@ -782,26 +768,26 @@
             case T_IDENTIFIER:
             case T_INT:
                 {
-                alt14=6;
+                alt11=5;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 14, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 11, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt14) {
+            switch (alt11) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:232:4: T_LIST T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN T_OF innertype= complexType
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:233:4: T_LIST T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN T_OF innertype= complexType
                     {
-                    match(input,T_LIST,FOLLOW_T_LIST_in_complexType382); 
+                    match(input,T_LIST,FOLLOW_T_LIST_in_complexType382);
 
-                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_complexType385); 
+                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_complexType385);
 
-                    numOfElements=(Token)input.LT(1);
+                    numOfElements=input.LT(1);
 
                     if ( input.LA(1)==T_IDENTIFIER||input.LA(1)==T_INTNUMBER ) {
                         input.consume();
@@ -808,14 +794,14 @@
                         state.errorRecovery=false;
                     }
                     else {
-                        MismatchedSetException mse = new MismatchedSetException(null,input);
+                        final MismatchedSetException mse = new MismatchedSetException(null,input);
                         throw mse;
                     }
 
 
-                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_complexType395); 
+                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_complexType395);
 
-                    match(input,T_OF,FOLLOW_T_OF_in_complexType397); 
+                    match(input,T_OF,FOLLOW_T_OF_in_complexType397);
 
                     pushFollow(FOLLOW_complexType_in_complexType402);
                     innertype=complexType();
@@ -828,19 +814,19 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:236:4: T_LSQPAREN alistelem= T_IDENTIFIER ( T_COMMA otherlistelem= T_IDENTIFIER )* T_RSQPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:237:4: T_LSQPAREN alistelem= T_IDENTIFIER ( T_COMMA otherlistelem= T_IDENTIFIER )* T_RSQPAREN
                     {
-                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_complexType417); 
+                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_complexType417);
 
-                    alistelem=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_complexType421); 
+                    alistelem=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_complexType421);
 
                     aTypeSymbol = createListEnumType(alistelem);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:237:4: ( T_COMMA otherlistelem= T_IDENTIFIER )*
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:238:4: ( T_COMMA otherlistelem= T_IDENTIFIER )*
                     loop8:
                     do {
                         int alt8=2;
-                        int LA8_0 = input.LA(1);
+                        final int LA8_0 = input.LA(1);
 
                         if ( (LA8_0==T_COMMA) ) {
                             alt8=1;
@@ -849,11 +835,11 @@
 
                         switch (alt8) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:237:5: T_COMMA otherlistelem= T_IDENTIFIER
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:238:5: T_COMMA otherlistelem= T_IDENTIFIER
                     	    {
-                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_complexType430); 
+                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_complexType430);
 
-                    	    otherlistelem=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_complexType434); 
+                    	    otherlistelem=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_complexType434);
 
                     	    addToListEnumType(aTypeSymbol,otherlistelem);
 
@@ -866,18 +852,18 @@
                     } while (true);
 
 
-                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_complexType440); 
+                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_complexType440);
 
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:240:4: T_MAP ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )? mapfromtype= simpleType T_TO maptotype= complexType
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:241:4: T_MAP ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )? mapfromtype= simpleType T_TO maptotype= complexType
                     {
-                    match(input,T_MAP,FOLLOW_T_MAP_in_complexType450); 
+                    match(input,T_MAP,FOLLOW_T_MAP_in_complexType450);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:240:12: ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )?
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:241:12: ( T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN )?
                     int alt9=2;
-                    int LA9_0 = input.LA(1);
+                    final int LA9_0 = input.LA(1);
 
                     if ( (LA9_0==T_LSQPAREN) ) {
                         alt9=1;
@@ -884,11 +870,11 @@
                     }
                     switch (alt9) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:240:13: T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:241:13: T_LSQPAREN numOfElements= ( T_INTNUMBER | T_IDENTIFIER ) T_RSQPAREN
                             {
-                            match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_complexType455); 
+                            match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_complexType455);
 
-                            numOfElements=(Token)input.LT(1);
+                            numOfElements=input.LT(1);
 
                             if ( input.LA(1)==T_IDENTIFIER||input.LA(1)==T_INTNUMBER ) {
                                 input.consume();
@@ -895,12 +881,12 @@
                                 state.errorRecovery=false;
                             }
                             else {
-                                MismatchedSetException mse = new MismatchedSetException(null,input);
+                                final MismatchedSetException mse = new MismatchedSetException(null,input);
                                 throw mse;
                             }
 
 
-                            match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_complexType465); 
+                            match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_complexType465);
 
                             }
                             break;
@@ -914,7 +900,7 @@
                     state._fsp--;
 
 
-                    match(input,T_TO,FOLLOW_T_TO_in_complexType473); 
+                    match(input,T_TO,FOLLOW_T_TO_in_complexType473);
 
                     pushFollow(FOLLOW_complexType_in_complexType477);
                     maptotype=complexType();
@@ -927,128 +913,11 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:243:4: T_QUANTITY T_OF T_LSQPAREN (alandmark= T_IDENTIFIER |alandmark= T_MINUS T_INFTY ) ( T_COMMA (otherlandmark= T_IDENTIFIER |otherlandmark= T_INFTY ) )* T_RSQPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:244:5: T_LPAREN aType= complexType ( T_COMMA anotherType= complexType )* T_RPAREN
                     {
-                    match(input,T_QUANTITY,FOLLOW_T_QUANTITY_in_complexType491); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_complexType492);
 
-                    match(input,T_OF,FOLLOW_T_OF_in_complexType493); 
-
-                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_complexType495); 
-
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:243:31: (alandmark= T_IDENTIFIER |alandmark= T_MINUS T_INFTY )
-                    int alt10=2;
-                    int LA10_0 = input.LA(1);
-
-                    if ( (LA10_0==T_IDENTIFIER) ) {
-                        alt10=1;
-                    }
-                    else if ( (LA10_0==T_MINUS) ) {
-                        alt10=2;
-                    }
-                    else {
-                        NoViableAltException nvae =
-                            new NoViableAltException("", 10, 0, input);
-
-                        throw nvae;
-
-                    }
-                    switch (alt10) {
-                        case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:243:32: alandmark= T_IDENTIFIER
-                            {
-                            alandmark=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_complexType500); 
-
-                            }
-                            break;
-                        case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:243:56: alandmark= T_MINUS T_INFTY
-                            {
-                            alandmark=(Token)match(input,T_MINUS,FOLLOW_T_MINUS_in_complexType505); 
-
-                            match(input,T_INFTY,FOLLOW_T_INFTY_in_complexType507); 
-
-                            }
-                            break;
-
-                    }
-
-
-                    aTypeSymbol = createQrType(alandmark);
-
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:244:4: ( T_COMMA (otherlandmark= T_IDENTIFIER |otherlandmark= T_INFTY ) )*
-                    loop12:
-                    do {
-                        int alt12=2;
-                        int LA12_0 = input.LA(1);
-
-                        if ( (LA12_0==T_COMMA) ) {
-                            alt12=1;
-                        }
-
-
-                        switch (alt12) {
-                    	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:244:5: T_COMMA (otherlandmark= T_IDENTIFIER |otherlandmark= T_INFTY )
-                    	    {
-                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_complexType517); 
-
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:244:13: (otherlandmark= T_IDENTIFIER |otherlandmark= T_INFTY )
-                    	    int alt11=2;
-                    	    int LA11_0 = input.LA(1);
-
-                    	    if ( (LA11_0==T_IDENTIFIER) ) {
-                    	        alt11=1;
-                    	    }
-                    	    else if ( (LA11_0==T_INFTY) ) {
-                    	        alt11=2;
-                    	    }
-                    	    else {
-                    	        NoViableAltException nvae =
-                    	            new NoViableAltException("", 11, 0, input);
-
-                    	        throw nvae;
-
-                    	    }
-                    	    switch (alt11) {
-                    	        case 1 :
-                    	            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:244:14: otherlandmark= T_IDENTIFIER
-                    	            {
-                    	            otherlandmark=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_complexType522); 
-
-                    	            }
-                    	            break;
-                    	        case 2 :
-                    	            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:244:41: otherlandmark= T_INFTY
-                    	            {
-                    	            otherlandmark=(Token)match(input,T_INFTY,FOLLOW_T_INFTY_in_complexType526); 
-
-                    	            }
-                    	            break;
-
-                    	    }
-
-
-                    	    addToQrType(aTypeSymbol,otherlandmark);
-
-                    	    }
-                    	    break;
-
-                    	default :
-                    	    break loop12;
-                        }
-                    } while (true);
-
-
-                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_complexType533); 
-
-                    }
-                    break;
-                case 5 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:246:5: T_LPAREN aType= complexType ( T_COMMA anotherType= complexType )* T_RPAREN
-                    {
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_complexType543); 
-
-                    pushFollow(FOLLOW_complexType_in_complexType547);
+                    pushFollow(FOLLOW_complexType_in_complexType496);
                     aType=complexType();
 
                     state._fsp--;
@@ -1056,24 +925,24 @@
 
                     aTypeSymbol = createTupleType(aType);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:247:4: ( T_COMMA anotherType= complexType )*
-                    loop13:
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:245:4: ( T_COMMA anotherType= complexType )*
+                    loop10:
                     do {
-                        int alt13=2;
-                        int LA13_0 = input.LA(1);
+                        int alt10=2;
+                        final int LA10_0 = input.LA(1);
 
-                        if ( (LA13_0==T_COMMA) ) {
-                            alt13=1;
+                        if ( (LA10_0==T_COMMA) ) {
+                            alt10=1;
                         }
 
 
-                        switch (alt13) {
+                        switch (alt10) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:247:5: T_COMMA anotherType= complexType
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:245:5: T_COMMA anotherType= complexType
                     	    {
-                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_complexType556); 
+                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_complexType505);
 
-                    	    pushFollow(FOLLOW_complexType_in_complexType560);
+                    	    pushFollow(FOLLOW_complexType_in_complexType509);
                     	    anotherType=complexType();
 
                     	    state._fsp--;
@@ -1085,19 +954,19 @@
                     	    break;
 
                     	default :
-                    	    break loop13;
+                    	    break loop10;
                         }
                     } while (true);
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_complexType567); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_complexType516);
 
                     }
                     break;
-                case 6 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:250:4: r= simpleType
+                case 5 :
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:248:4: r= simpleType
                     {
-                    pushFollow(FOLLOW_simpleType_in_complexType580);
+                    pushFollow(FOLLOW_simpleType_in_complexType529);
                     r=simpleType();
 
                     state._fsp--;
@@ -1110,7 +979,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -1126,9 +995,9 @@
 
 
     // $ANTLR start "simpleType"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:256:1: simpleType returns [UlyssesType aTypeSymbol] : ( T_BOOL | T_INT T_LSQPAREN rangeLow= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_FLOAT T_LSQPAREN rangeLow= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_CHAR | T_CBRL aRangeValue= T_IDENTIFIER ( T_EQUAL optVal= T_INTNUMBER )? ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )* T_CBRR |aType= T_IDENTIFIER );
-    public final UlyssesType simpleType() throws RecognitionException {
-        UlyssesType aTypeSymbol = null;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:254:1: simpleType returns [Type aTypeSymbol] : ( T_BOOL | T_INT T_LSQPAREN rangeLow= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_FLOAT T_LSQPAREN rangeLow= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_CHAR | T_CBRL aRangeValue= T_IDENTIFIER ( T_EQUAL optVal= T_INTNUMBER )? ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )* T_CBRR |aType= T_IDENTIFIER );
+    public final Type simpleType() throws RecognitionException {
+        Type aTypeSymbol = null;
 
 
         Token rangeLow=null;
@@ -1139,56 +1008,56 @@
         Token otherOptVal=null;
         Token aType=null;
 
-         
+
         		aTypeSymbol = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:261:2: ( T_BOOL | T_INT T_LSQPAREN rangeLow= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_FLOAT T_LSQPAREN rangeLow= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_CHAR | T_CBRL aRangeValue= T_IDENTIFIER ( T_EQUAL optVal= T_INTNUMBER )? ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )* T_CBRR |aType= T_IDENTIFIER )
-            int alt18=6;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:259:2: ( T_BOOL | T_INT T_LSQPAREN rangeLow= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_FLOAT T_LSQPAREN rangeLow= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN | T_CHAR | T_CBRL aRangeValue= T_IDENTIFIER ( T_EQUAL optVal= T_INTNUMBER )? ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )* T_CBRR |aType= T_IDENTIFIER )
+            int alt15=6;
             switch ( input.LA(1) ) {
             case T_BOOL:
                 {
-                alt18=1;
+                alt15=1;
                 }
                 break;
             case T_INT:
                 {
-                alt18=2;
+                alt15=2;
                 }
                 break;
             case T_FLOAT:
                 {
-                alt18=3;
+                alt15=3;
                 }
                 break;
             case T_CHAR:
                 {
-                alt18=4;
+                alt15=4;
                 }
                 break;
             case T_CBRL:
                 {
-                alt18=5;
+                alt15=5;
                 }
                 break;
             case T_IDENTIFIER:
                 {
-                alt18=6;
+                alt15=6;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 18, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 15, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt18) {
+            switch (alt15) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:261:4: T_BOOL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:259:4: T_BOOL
                     {
-                    match(input,T_BOOL,FOLLOW_T_BOOL_in_simpleType613); 
+                    match(input,T_BOOL,FOLLOW_T_BOOL_in_simpleType562);
 
                     aTypeSymbol = createBoolType();
 
@@ -1195,13 +1064,13 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:264:4: T_INT T_LSQPAREN rangeLow= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:262:4: T_INT T_LSQPAREN rangeLow= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_INTNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN
                     {
-                    match(input,T_INT,FOLLOW_T_INT_in_simpleType626); 
+                    match(input,T_INT,FOLLOW_T_INT_in_simpleType575);
 
-                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_simpleType628); 
+                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_simpleType577);
 
-                    rangeLow=(Token)input.LT(1);
+                    rangeLow=input.LT(1);
 
                     if ( input.LA(1)==T_IDENTIFIER||input.LA(1)==T_INFTY||input.LA(1)==T_INTNUMBER ) {
                         input.consume();
@@ -1208,14 +1077,14 @@
                         state.errorRecovery=false;
                     }
                     else {
-                        MismatchedSetException mse = new MismatchedSetException(null,input);
+                        final MismatchedSetException mse = new MismatchedSetException(null,input);
                         throw mse;
                     }
 
 
-                    match(input,T_RANGETO,FOLLOW_T_RANGETO_in_simpleType640); 
+                    match(input,T_RANGETO,FOLLOW_T_RANGETO_in_simpleType589);
 
-                    rangeHigh=(Token)input.LT(1);
+                    rangeHigh=input.LT(1);
 
                     if ( input.LA(1)==T_IDENTIFIER||input.LA(1)==T_INFTY||input.LA(1)==T_INTNUMBER ) {
                         input.consume();
@@ -1222,12 +1091,12 @@
                         state.errorRecovery=false;
                     }
                     else {
-                        MismatchedSetException mse = new MismatchedSetException(null,input);
+                        final MismatchedSetException mse = new MismatchedSetException(null,input);
                         throw mse;
                     }
 
 
-                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_simpleType652); 
+                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_simpleType601);
 
                     aTypeSymbol = createIntType(rangeLow,rangeHigh);
 
@@ -1234,13 +1103,13 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:268:4: T_FLOAT T_LSQPAREN rangeLow= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:266:4: T_FLOAT T_LSQPAREN rangeLow= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RANGETO rangeHigh= ( T_FLOATNUMBER | T_INFTY | T_IDENTIFIER ) T_RSQPAREN
                     {
-                    match(input,T_FLOAT,FOLLOW_T_FLOAT_in_simpleType671); 
+                    match(input,T_FLOAT,FOLLOW_T_FLOAT_in_simpleType620);
 
-                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_simpleType674); 
+                    match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_simpleType623);
 
-                    rangeLow=(Token)input.LT(1);
+                    rangeLow=input.LT(1);
 
                     if ( input.LA(1)==T_FLOATNUMBER||input.LA(1)==T_IDENTIFIER||input.LA(1)==T_INFTY ) {
                         input.consume();
@@ -1247,14 +1116,14 @@
                         state.errorRecovery=false;
                     }
                     else {
-                        MismatchedSetException mse = new MismatchedSetException(null,input);
+                        final MismatchedSetException mse = new MismatchedSetException(null,input);
                         throw mse;
                     }
 
 
-                    match(input,T_RANGETO,FOLLOW_T_RANGETO_in_simpleType686); 
+                    match(input,T_RANGETO,FOLLOW_T_RANGETO_in_simpleType635);
 
-                    rangeHigh=(Token)input.LT(1);
+                    rangeHigh=input.LT(1);
 
                     if ( input.LA(1)==T_FLOATNUMBER||input.LA(1)==T_IDENTIFIER||input.LA(1)==T_INFTY ) {
                         input.consume();
@@ -1261,12 +1130,12 @@
                         state.errorRecovery=false;
                     }
                     else {
-                        MismatchedSetException mse = new MismatchedSetException(null,input);
+                        final MismatchedSetException mse = new MismatchedSetException(null,input);
                         throw mse;
                     }
 
 
-                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_simpleType698); 
+                    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_simpleType647);
 
                     aTypeSymbol = createFloatType(rangeLow,rangeHigh);
 
@@ -1273,9 +1142,9 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:272:4: T_CHAR
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:270:4: T_CHAR
                     {
-                    match(input,T_CHAR,FOLLOW_T_CHAR_in_simpleType716); 
+                    match(input,T_CHAR,FOLLOW_T_CHAR_in_simpleType665);
 
                     aTypeSymbol = createCharType();
 
@@ -1282,26 +1151,26 @@
                     }
                     break;
                 case 5 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:276:4: T_CBRL aRangeValue= T_IDENTIFIER ( T_EQUAL optVal= T_INTNUMBER )? ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )* T_CBRR
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:274:4: T_CBRL aRangeValue= T_IDENTIFIER ( T_EQUAL optVal= T_INTNUMBER )? ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )* T_CBRR
                     {
-                    match(input,T_CBRL,FOLLOW_T_CBRL_in_simpleType732); 
+                    match(input,T_CBRL,FOLLOW_T_CBRL_in_simpleType681);
 
-                    aRangeValue=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_simpleType736); 
+                    aRangeValue=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_simpleType685);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:276:36: ( T_EQUAL optVal= T_INTNUMBER )?
-                    int alt15=2;
-                    int LA15_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:274:36: ( T_EQUAL optVal= T_INTNUMBER )?
+                    int alt12=2;
+                    final int LA12_0 = input.LA(1);
 
-                    if ( (LA15_0==T_EQUAL) ) {
-                        alt15=1;
+                    if ( (LA12_0==T_EQUAL) ) {
+                        alt12=1;
                     }
-                    switch (alt15) {
+                    switch (alt12) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:276:37: T_EQUAL optVal= T_INTNUMBER
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:274:37: T_EQUAL optVal= T_INTNUMBER
                             {
-                            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_simpleType739); 
+                            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_simpleType688);
 
-                            optVal=(Token)match(input,T_INTNUMBER,FOLLOW_T_INTNUMBER_in_simpleType743); 
+                            optVal=(Token)match(input,T_INTNUMBER,FOLLOW_T_INTNUMBER_in_simpleType692);
 
                             }
                             break;
@@ -1311,39 +1180,39 @@
 
                     aTypeSymbol = createEnumType(aRangeValue, optVal);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:277:4: ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )*
-                    loop17:
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:275:4: ( T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )? )*
+                    loop14:
                     do {
-                        int alt17=2;
-                        int LA17_0 = input.LA(1);
+                        int alt14=2;
+                        final int LA14_0 = input.LA(1);
 
-                        if ( (LA17_0==T_COMMA) ) {
-                            alt17=1;
+                        if ( (LA14_0==T_COMMA) ) {
+                            alt14=1;
                         }
 
 
-                        switch (alt17) {
+                        switch (alt14) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:277:5: T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )?
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:275:5: T_COMMA otherRangeValue= T_IDENTIFIER ( T_EQUAL otherOptVal= T_INTNUMBER )?
                     	    {
-                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_simpleType754); 
+                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_simpleType703);
 
-                    	    otherRangeValue=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_simpleType758); 
+                    	    otherRangeValue=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_simpleType707);
 
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:277:42: ( T_EQUAL otherOptVal= T_INTNUMBER )?
-                    	    int alt16=2;
-                    	    int LA16_0 = input.LA(1);
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:275:42: ( T_EQUAL otherOptVal= T_INTNUMBER )?
+                    	    int alt13=2;
+                    	    final int LA13_0 = input.LA(1);
 
-                    	    if ( (LA16_0==T_EQUAL) ) {
-                    	        alt16=1;
+                    	    if ( (LA13_0==T_EQUAL) ) {
+                    	        alt13=1;
                     	    }
-                    	    switch (alt16) {
+                    	    switch (alt13) {
                     	        case 1 :
-                    	            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:277:43: T_EQUAL otherOptVal= T_INTNUMBER
+                    	            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:275:43: T_EQUAL otherOptVal= T_INTNUMBER
                     	            {
-                    	            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_simpleType761); 
+                    	            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_simpleType710);
 
-                    	            otherOptVal=(Token)match(input,T_INTNUMBER,FOLLOW_T_INTNUMBER_in_simpleType765); 
+                    	            otherOptVal=(Token)match(input,T_INTNUMBER,FOLLOW_T_INTNUMBER_in_simpleType714);
 
                     	            }
                     	            break;
@@ -1357,19 +1226,19 @@
                     	    break;
 
                     	default :
-                    	    break loop17;
+                    	    break loop14;
                         }
                     } while (true);
 
 
-                    match(input,T_CBRR,FOLLOW_T_CBRR_in_simpleType773); 
+                    match(input,T_CBRR,FOLLOW_T_CBRR_in_simpleType722);
 
                     }
                     break;
                 case 6 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:279:4: aType= T_IDENTIFIER
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:277:4: aType= T_IDENTIFIER
                     {
-                    aType=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_simpleType784); 
+                    aType=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_simpleType733);
 
                     aTypeSymbol = getNamedType(aType);
 
@@ -1378,7 +1247,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -1394,7 +1263,7 @@
 
 
     // $ANTLR start "ooActionSystem"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:289:1: ooActionSystem returns [OoActionSystemType aTypeSymbol] : ( T_AUTOCONS )? T_SYSTEM ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )? '|[' ( T_VAR attrList )? ( T_METHODS methodList )? ( T_ACTIONS namedActionList )? ( T_DO (bl= actionBlock[null] )? T_OD )? ']|' ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:287:1: ooActionSystem returns [OoActionSystemType aTypeSymbol] : ( T_AUTOCONS )? T_SYSTEM ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )? '|[' ( T_VAR attrList )? ( T_METHODS methodList )? ( T_ACTIONS namedActionList )? ( T_DO (bl= actionBlock[null] )? T_OD )? ']|' ;
     public final OoActionSystemType ooActionSystem() throws RecognitionException {
         OoActionSystemType aTypeSymbol = null;
 
@@ -1403,27 +1272,27 @@
         Block bl =null;
 
 
-         
-        		boolean autoCons = false; 
+
+        		boolean autoCons = false;
         		aTypeSymbol = null;
         		refinesSystemName = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:296:2: ( ( T_AUTOCONS )? T_SYSTEM ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )? '|[' ( T_VAR attrList )? ( T_METHODS methodList )? ( T_ACTIONS namedActionList )? ( T_DO (bl= actionBlock[null] )? T_OD )? ']|' )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:296:9: ( T_AUTOCONS )? T_SYSTEM ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )? '|[' ( T_VAR attrList )? ( T_METHODS methodList )? ( T_ACTIONS namedActionList )? ( T_DO (bl= actionBlock[null] )? T_OD )? ']|'
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:294:2: ( ( T_AUTOCONS )? T_SYSTEM ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )? '|[' ( T_VAR attrList )? ( T_METHODS methodList )? ( T_ACTIONS namedActionList )? ( T_DO (bl= actionBlock[null] )? T_OD )? ']|' )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:294:9: ( T_AUTOCONS )? T_SYSTEM ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )? '|[' ( T_VAR attrList )? ( T_METHODS methodList )? ( T_ACTIONS namedActionList )? ( T_DO (bl= actionBlock[null] )? T_OD )? ']|'
             {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:296:9: ( T_AUTOCONS )?
-            int alt19=2;
-            int LA19_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:294:9: ( T_AUTOCONS )?
+            int alt16=2;
+            final int LA16_0 = input.LA(1);
 
-            if ( (LA19_0==T_AUTOCONS) ) {
-                alt19=1;
+            if ( (LA16_0==T_AUTOCONS) ) {
+                alt16=1;
             }
-            switch (alt19) {
+            switch (alt16) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:296:10: T_AUTOCONS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:294:10: T_AUTOCONS
                     {
-                    match(input,T_AUTOCONS,FOLLOW_T_AUTOCONS_in_ooActionSystem827); 
+                    match(input,T_AUTOCONS,FOLLOW_T_AUTOCONS_in_ooActionSystem776);
 
                     autoCons = true;
 
@@ -1433,24 +1302,24 @@
             }
 
 
-            match(input,T_SYSTEM,FOLLOW_T_SYSTEM_in_ooActionSystem836); 
+            match(input,T_SYSTEM,FOLLOW_T_SYSTEM_in_ooActionSystem785);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:297:12: ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )?
-            int alt20=2;
-            int LA20_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:295:12: ( T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN )?
+            int alt17=2;
+            final int LA17_0 = input.LA(1);
 
-            if ( (LA20_0==T_LPAREN) ) {
-                alt20=1;
+            if ( (LA17_0==T_LPAREN) ) {
+                alt17=1;
             }
-            switch (alt20) {
+            switch (alt17) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:297:13: T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:295:13: T_LPAREN refinesSystemName= T_IDENTIFIER T_RPAREN
                     {
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_ooActionSystem839); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_ooActionSystem788);
 
-                    refinesSystemName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_ooActionSystem843); 
+                    refinesSystemName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_ooActionSystem792);
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_ooActionSystem845); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_ooActionSystem794);
 
                     }
                     break;
@@ -1460,22 +1329,22 @@
 
             aTypeSymbol = createOoaType(refinesSystemName,autoCons);
 
-            match(input,127,FOLLOW_127_in_ooActionSystem858); 
+            match(input,121,FOLLOW_121_in_ooActionSystem807);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:300:4: ( T_VAR attrList )?
-            int alt21=2;
-            int LA21_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:298:4: ( T_VAR attrList )?
+            int alt18=2;
+            final int LA18_0 = input.LA(1);
 
-            if ( (LA21_0==T_VAR) ) {
-                alt21=1;
+            if ( (LA18_0==T_VAR) ) {
+                alt18=1;
             }
-            switch (alt21) {
+            switch (alt18) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:300:5: T_VAR attrList
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:298:5: T_VAR attrList
                     {
-                    match(input,T_VAR,FOLLOW_T_VAR_in_ooActionSystem864); 
+                    match(input,T_VAR,FOLLOW_T_VAR_in_ooActionSystem813);
 
-                    pushFollow(FOLLOW_attrList_in_ooActionSystem866);
+                    pushFollow(FOLLOW_attrList_in_ooActionSystem815);
                     attrList();
 
                     state._fsp--;
@@ -1487,20 +1356,20 @@
             }
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:301:4: ( T_METHODS methodList )?
-            int alt22=2;
-            int LA22_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:299:4: ( T_METHODS methodList )?
+            int alt19=2;
+            final int LA19_0 = input.LA(1);
 
-            if ( (LA22_0==T_METHODS) ) {
-                alt22=1;
+            if ( (LA19_0==T_METHODS) ) {
+                alt19=1;
             }
-            switch (alt22) {
+            switch (alt19) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:301:5: T_METHODS methodList
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:299:5: T_METHODS methodList
                     {
-                    match(input,T_METHODS,FOLLOW_T_METHODS_in_ooActionSystem874); 
+                    match(input,T_METHODS,FOLLOW_T_METHODS_in_ooActionSystem823);
 
-                    pushFollow(FOLLOW_methodList_in_ooActionSystem876);
+                    pushFollow(FOLLOW_methodList_in_ooActionSystem825);
                     methodList();
 
                     state._fsp--;
@@ -1512,20 +1381,20 @@
             }
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:302:4: ( T_ACTIONS namedActionList )?
-            int alt23=2;
-            int LA23_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:300:4: ( T_ACTIONS namedActionList )?
+            int alt20=2;
+            final int LA20_0 = input.LA(1);
 
-            if ( (LA23_0==T_ACTIONS) ) {
-                alt23=1;
+            if ( (LA20_0==T_ACTIONS) ) {
+                alt20=1;
             }
-            switch (alt23) {
+            switch (alt20) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:302:5: T_ACTIONS namedActionList
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:300:5: T_ACTIONS namedActionList
                     {
-                    match(input,T_ACTIONS,FOLLOW_T_ACTIONS_in_ooActionSystem884); 
+                    match(input,T_ACTIONS,FOLLOW_T_ACTIONS_in_ooActionSystem833);
 
-                    pushFollow(FOLLOW_namedActionList_in_ooActionSystem886);
+                    pushFollow(FOLLOW_namedActionList_in_ooActionSystem835);
                     namedActionList();
 
                     state._fsp--;
@@ -1537,31 +1406,31 @@
             }
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:303:4: ( T_DO (bl= actionBlock[null] )? T_OD )?
-            int alt25=2;
-            int LA25_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:301:4: ( T_DO (bl= actionBlock[null] )? T_OD )?
+            int alt22=2;
+            final int LA22_0 = input.LA(1);
 
-            if ( (LA25_0==T_DO) ) {
-                alt25=1;
+            if ( (LA22_0==T_DO) ) {
+                alt22=1;
             }
-            switch (alt25) {
+            switch (alt22) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:303:5: T_DO (bl= actionBlock[null] )? T_OD
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:301:5: T_DO (bl= actionBlock[null] )? T_OD
                     {
-                    match(input,T_DO,FOLLOW_T_DO_in_ooActionSystem894); 
+                    match(input,T_DO,FOLLOW_T_DO_in_ooActionSystem843);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:303:10: (bl= actionBlock[null] )?
-                    int alt24=2;
-                    int LA24_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:301:10: (bl= actionBlock[null] )?
+                    int alt21=2;
+                    final int LA21_0 = input.LA(1);
 
-                    if ( (LA24_0==T_IDENTIFIER||LA24_0==T_LPAREN||LA24_0==T_REQUIRES||LA24_0==T_SKIP||LA24_0==T_VAR) ) {
-                        alt24=1;
+                    if ( (LA21_0==T_IDENTIFIER||LA21_0==T_LPAREN||LA21_0==T_REQUIRES||LA21_0==T_SKIP||LA21_0==T_VAR) ) {
+                        alt21=1;
                     }
-                    switch (alt24) {
+                    switch (alt21) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:303:11: bl= actionBlock[null]
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:301:11: bl= actionBlock[null]
                             {
-                            pushFollow(FOLLOW_actionBlock_in_ooActionSystem899);
+                            pushFollow(FOLLOW_actionBlock_in_ooActionSystem848);
                             bl=actionBlock(null);
 
                             state._fsp--;
@@ -1575,7 +1444,7 @@
                     }
 
 
-                    match(input,T_OD,FOLLOW_T_OD_in_ooActionSystem906); 
+                    match(input,T_OD,FOLLOW_T_OD_in_ooActionSystem855);
 
                     }
                     break;
@@ -1583,12 +1452,12 @@
             }
 
 
-            match(input,120,FOLLOW_120_in_ooActionSystem912); 
+            match(input,118,FOLLOW_118_in_ooActionSystem861);
 
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -1604,38 +1473,38 @@
 
 
     // $ANTLR start "attrList"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:315:1: attrList : attr ( T_SEMICOLON attr )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:313:1: attrList : attr ( T_SEMICOLON attr )* ;
     public final void attrList() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:316:2: ( attr ( T_SEMICOLON attr )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:316:4: attr ( T_SEMICOLON attr )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:314:2: ( attr ( T_SEMICOLON attr )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:314:4: attr ( T_SEMICOLON attr )*
             {
             BeginParsingAttributes();
 
-            pushFollow(FOLLOW_attr_in_attrList943);
+            pushFollow(FOLLOW_attr_in_attrList892);
             attr();
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:317:9: ( T_SEMICOLON attr )*
-            loop26:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:315:9: ( T_SEMICOLON attr )*
+            loop23:
             do {
-                int alt26=2;
-                int LA26_0 = input.LA(1);
+                int alt23=2;
+                final int LA23_0 = input.LA(1);
 
-                if ( (LA26_0==T_SEMICOLON) ) {
-                    alt26=1;
+                if ( (LA23_0==T_SEMICOLON) ) {
+                    alt23=1;
                 }
 
 
-                switch (alt26) {
+                switch (alt23) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:317:10: T_SEMICOLON attr
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:315:10: T_SEMICOLON attr
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_attrList946); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_attrList895);
 
-            	    pushFollow(FOLLOW_attr_in_attrList948);
+            	    pushFollow(FOLLOW_attr_in_attrList897);
             	    attr();
 
             	    state._fsp--;
@@ -1645,7 +1514,7 @@
             	    break;
 
             	default :
-            	    break loop26;
+            	    break loop23;
                 }
             } while (true);
 
@@ -1653,7 +1522,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -1662,7 +1531,7 @@
         	// do for sure before leaving
 
             		EndParsingAttributes();
-            	
+
         }
         return ;
     }
@@ -1671,36 +1540,36 @@
 
 
     // $ANTLR start "attr"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:323:1: attr : ( T_STATIC )? ( T_OBS | T_CTRL )? varname= T_IDENTIFIER T_COLON aType= complexType ( T_EQUAL anExpr= expression )? ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:321:1: attr : ( T_STATIC )? ( T_OBS | T_CTRL )? varname= T_IDENTIFIER T_COLON aType= complexType ( T_EQUAL anExpr= expression )? ;
     public final void attr() throws RecognitionException {
         Token varname=null;
-        UlyssesType aType =null;
+        Type aType =null;
 
         Expression anExpr =null;
 
 
-         
-        		boolean isStatic = false; 
+
+        		boolean isStatic = false;
         		boolean isCtr = false;
-        		boolean isObs = false;				
-        		
-        	
+        		boolean isObs = false;
+
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:330:2: ( ( T_STATIC )? ( T_OBS | T_CTRL )? varname= T_IDENTIFIER T_COLON aType= complexType ( T_EQUAL anExpr= expression )? )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:330:5: ( T_STATIC )? ( T_OBS | T_CTRL )? varname= T_IDENTIFIER T_COLON aType= complexType ( T_EQUAL anExpr= expression )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:328:2: ( ( T_STATIC )? ( T_OBS | T_CTRL )? varname= T_IDENTIFIER T_COLON aType= complexType ( T_EQUAL anExpr= expression )? )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:328:5: ( T_STATIC )? ( T_OBS | T_CTRL )? varname= T_IDENTIFIER T_COLON aType= complexType ( T_EQUAL anExpr= expression )?
             {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:330:5: ( T_STATIC )?
-            int alt27=2;
-            int LA27_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:328:5: ( T_STATIC )?
+            int alt24=2;
+            final int LA24_0 = input.LA(1);
 
-            if ( (LA27_0==T_STATIC) ) {
-                alt27=1;
+            if ( (LA24_0==T_STATIC) ) {
+                alt24=1;
             }
-            switch (alt27) {
+            switch (alt24) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:330:6: T_STATIC
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:328:6: T_STATIC
                     {
-                    match(input,T_STATIC,FOLLOW_T_STATIC_in_attr973); 
+                    match(input,T_STATIC,FOLLOW_T_STATIC_in_attr922);
 
                     isStatic = true;
 
@@ -1710,21 +1579,21 @@
             }
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:330:36: ( T_OBS | T_CTRL )?
-            int alt28=3;
-            int LA28_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:328:36: ( T_OBS | T_CTRL )?
+            int alt25=3;
+            final int LA25_0 = input.LA(1);
 
-            if ( (LA28_0==T_OBS) ) {
-                alt28=1;
+            if ( (LA25_0==T_OBS) ) {
+                alt25=1;
             }
-            else if ( (LA28_0==T_CTRL) ) {
-                alt28=2;
+            else if ( (LA25_0==T_CTRL) ) {
+                alt25=2;
             }
-            switch (alt28) {
+            switch (alt25) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:330:37: T_OBS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:328:37: T_OBS
                     {
-                    match(input,T_OBS,FOLLOW_T_OBS_in_attr980); 
+                    match(input,T_OBS,FOLLOW_T_OBS_in_attr929);
 
                     isObs = true;
 
@@ -1731,9 +1600,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:330:61: T_CTRL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:328:61: T_CTRL
                     {
-                    match(input,T_CTRL,FOLLOW_T_CTRL_in_attr986); 
+                    match(input,T_CTRL,FOLLOW_T_CTRL_in_attr935);
 
                     isCtr = true;
 
@@ -1743,30 +1612,30 @@
             }
 
 
-            varname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_attr997); 
+            varname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_attr946);
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_attr1000); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_attr949);
 
-            pushFollow(FOLLOW_complexType_in_attr1004);
+            pushFollow(FOLLOW_complexType_in_attr953);
             aType=complexType();
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:331:51: ( T_EQUAL anExpr= expression )?
-            int alt29=2;
-            int LA29_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:329:51: ( T_EQUAL anExpr= expression )?
+            int alt26=2;
+            final int LA26_0 = input.LA(1);
 
-            if ( (LA29_0==T_EQUAL) ) {
-                alt29=1;
+            if ( (LA26_0==T_EQUAL) ) {
+                alt26=1;
             }
-            switch (alt29) {
+            switch (alt26) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:331:52: T_EQUAL anExpr= expression
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:329:52: T_EQUAL anExpr= expression
                     {
-                    match(input,T_EQUAL,FOLLOW_T_EQUAL_in_attr1007); 
+                    match(input,T_EQUAL,FOLLOW_T_EQUAL_in_attr956);
 
-                    pushFollow(FOLLOW_expression_in_attr1011);
+                    pushFollow(FOLLOW_expression_in_attr960);
                     anExpr=expression();
 
                     state._fsp--;
@@ -1783,7 +1652,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -1798,36 +1667,36 @@
 
 
     // $ANTLR start "methodList"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:338:1: methodList : method ( T_SEMICOLON method )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:336:1: methodList : method ( T_SEMICOLON method )* ;
     public final void methodList() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:339:2: ( method ( T_SEMICOLON method )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:339:5: method ( T_SEMICOLON method )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:337:2: ( method ( T_SEMICOLON method )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:337:5: method ( T_SEMICOLON method )*
             {
-            pushFollow(FOLLOW_method_in_methodList1033);
+            pushFollow(FOLLOW_method_in_methodList982);
             method();
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:339:12: ( T_SEMICOLON method )*
-            loop30:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:337:12: ( T_SEMICOLON method )*
+            loop27:
             do {
-                int alt30=2;
-                int LA30_0 = input.LA(1);
+                int alt27=2;
+                final int LA27_0 = input.LA(1);
 
-                if ( (LA30_0==T_SEMICOLON) ) {
-                    alt30=1;
+                if ( (LA27_0==T_SEMICOLON) ) {
+                    alt27=1;
                 }
 
 
-                switch (alt30) {
+                switch (alt27) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:339:13: T_SEMICOLON method
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:337:13: T_SEMICOLON method
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_methodList1036); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_methodList985);
 
-            	    pushFollow(FOLLOW_method_in_methodList1038);
+            	    pushFollow(FOLLOW_method_in_methodList987);
             	    method();
 
             	    state._fsp--;
@@ -1837,7 +1706,7 @@
             	    break;
 
             	default :
-            	    break loop30;
+            	    break loop27;
                 }
             } while (true);
 
@@ -1845,7 +1714,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -1860,45 +1729,45 @@
 
 
     // $ANTLR start "method"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:342:1: method : mname= T_IDENTIFIER ( T_LPAREN methodParameterList[newMethod] T_RPAREN )? ( T_COLON rt= complexType )? T_EQUAL ( T_VAR localActionVars[newMethod] 'begin' )? statements= actionBody[null] T_END ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:340:1: method : mname= T_IDENTIFIER ( T_LPAREN methodParameterList[newMethod] T_RPAREN )? ( T_COLON rt= complexType )? T_EQUAL ( T_VAR localActionVars[newMethod] 'begin' )? statements= actionBody[null] T_END ;
     public final void method() throws RecognitionException {
         Token mname=null;
-        UlyssesType rt =null;
+        Type rt =null;
 
         Block statements =null;
 
 
-        	
+
         		FunctionIdentifier newMethod = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:346:2: (mname= T_IDENTIFIER ( T_LPAREN methodParameterList[newMethod] T_RPAREN )? ( T_COLON rt= complexType )? T_EQUAL ( T_VAR localActionVars[newMethod] 'begin' )? statements= actionBody[null] T_END )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:346:4: mname= T_IDENTIFIER ( T_LPAREN methodParameterList[newMethod] T_RPAREN )? ( T_COLON rt= complexType )? T_EQUAL ( T_VAR localActionVars[newMethod] 'begin' )? statements= actionBody[null] T_END
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:344:2: (mname= T_IDENTIFIER ( T_LPAREN methodParameterList[newMethod] T_RPAREN )? ( T_COLON rt= complexType )? T_EQUAL ( T_VAR localActionVars[newMethod] 'begin' )? statements= actionBody[null] T_END )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:344:4: mname= T_IDENTIFIER ( T_LPAREN methodParameterList[newMethod] T_RPAREN )? ( T_COLON rt= complexType )? T_EQUAL ( T_VAR localActionVars[newMethod] 'begin' )? statements= actionBody[null] T_END
             {
-            mname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_method1060); 
+            mname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_method1009);
 
             newMethod = createMethodSymbol(mname);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:347:3: ( T_LPAREN methodParameterList[newMethod] T_RPAREN )?
-            int alt31=2;
-            int LA31_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:345:3: ( T_LPAREN methodParameterList[newMethod] T_RPAREN )?
+            int alt28=2;
+            final int LA28_0 = input.LA(1);
 
-            if ( (LA31_0==T_LPAREN) ) {
-                alt31=1;
+            if ( (LA28_0==T_LPAREN) ) {
+                alt28=1;
             }
-            switch (alt31) {
+            switch (alt28) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:347:4: T_LPAREN methodParameterList[newMethod] T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:345:4: T_LPAREN methodParameterList[newMethod] T_RPAREN
                     {
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_method1068); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_method1017);
 
-                    pushFollow(FOLLOW_methodParameterList_in_method1070);
+                    pushFollow(FOLLOW_methodParameterList_in_method1019);
                     methodParameterList(newMethod);
 
                     state._fsp--;
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_method1074); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_method1023);
 
                     }
                     break;
@@ -1906,20 +1775,20 @@
             }
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:348:3: ( T_COLON rt= complexType )?
-            int alt32=2;
-            int LA32_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:346:3: ( T_COLON rt= complexType )?
+            int alt29=2;
+            final int LA29_0 = input.LA(1);
 
-            if ( (LA32_0==T_COLON) ) {
-                alt32=1;
+            if ( (LA29_0==T_COLON) ) {
+                alt29=1;
             }
-            switch (alt32) {
+            switch (alt29) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:348:4: T_COLON rt= complexType
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:346:4: T_COLON rt= complexType
                     {
-                    match(input,T_COLON,FOLLOW_T_COLON_in_method1082); 
+                    match(input,T_COLON,FOLLOW_T_COLON_in_method1031);
 
-                    pushFollow(FOLLOW_complexType_in_method1086);
+                    pushFollow(FOLLOW_complexType_in_method1035);
                     rt=complexType();
 
                     state._fsp--;
@@ -1933,32 +1802,32 @@
             }
 
 
-            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_method1096); 
+            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_method1045);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:350:4: ( T_VAR localActionVars[newMethod] 'begin' )?
-            int alt33=2;
-            int LA33_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:348:4: ( T_VAR localActionVars[newMethod] 'begin' )?
+            int alt30=2;
+            final int LA30_0 = input.LA(1);
 
-            if ( (LA33_0==T_VAR) ) {
-                int LA33_1 = input.LA(2);
+            if ( (LA30_0==T_VAR) ) {
+                final int LA30_1 = input.LA(2);
 
-                if ( (LA33_1==T_IDENTIFIER) ) {
-                    alt33=1;
+                if ( (LA30_1==T_IDENTIFIER) ) {
+                    alt30=1;
                 }
             }
-            switch (alt33) {
+            switch (alt30) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:350:6: T_VAR localActionVars[newMethod] 'begin'
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:348:6: T_VAR localActionVars[newMethod] 'begin'
                     {
-                    match(input,T_VAR,FOLLOW_T_VAR_in_method1104); 
+                    match(input,T_VAR,FOLLOW_T_VAR_in_method1053);
 
-                    pushFollow(FOLLOW_localActionVars_in_method1106);
+                    pushFollow(FOLLOW_localActionVars_in_method1055);
                     localActionVars(newMethod);
 
                     state._fsp--;
 
 
-                    match(input,122,FOLLOW_122_in_method1109); 
+                    match(input,120,FOLLOW_120_in_method1058);
 
                     }
                     break;
@@ -1966,7 +1835,7 @@
             }
 
 
-            pushFollow(FOLLOW_actionBody_in_method1384);
+            pushFollow(FOLLOW_actionBody_in_method1333);
             statements=actionBody(null);
 
             state._fsp--;
@@ -1974,12 +1843,12 @@
 
             addMethodBody(newMethod,statements);
 
-            match(input,T_END,FOLLOW_T_END_in_method1392); 
+            match(input,T_END,FOLLOW_T_END_in_method1341);
 
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -1995,24 +1864,24 @@
 
 
     // $ANTLR start "methodParameterList"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:359:1: methodParameterList[FunctionIdentifier newMethod] : paramName= T_IDENTIFIER T_COLON atype= complexType ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:357:1: methodParameterList[FunctionIdentifier newMethod] : paramName= T_IDENTIFIER T_COLON atype= complexType ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )* ;
     public final void methodParameterList(FunctionIdentifier newMethod) throws RecognitionException {
         Token paramName=null;
         Token otherparam=null;
-        UlyssesType atype =null;
+        Type atype =null;
 
-        UlyssesType othertype =null;
+        Type othertype =null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:360:2: (paramName= T_IDENTIFIER T_COLON atype= complexType ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:360:5: paramName= T_IDENTIFIER T_COLON atype= complexType ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:358:2: (paramName= T_IDENTIFIER T_COLON atype= complexType ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:358:5: paramName= T_IDENTIFIER T_COLON atype= complexType ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )*
             {
-            paramName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_methodParameterList1416); 
+            paramName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_methodParameterList1365);
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_methodParameterList1418); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_methodParameterList1367);
 
-            pushFollow(FOLLOW_complexType_in_methodParameterList1422);
+            pushFollow(FOLLOW_complexType_in_methodParameterList1371);
             atype=complexType();
 
             state._fsp--;
@@ -2020,28 +1889,28 @@
 
             addMethodParameter(newMethod,paramName,atype);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:361:4: ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )*
-            loop34:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:359:4: ( T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType )*
+            loop31:
             do {
-                int alt34=2;
-                int LA34_0 = input.LA(1);
+                int alt31=2;
+                final int LA31_0 = input.LA(1);
 
-                if ( (LA34_0==T_COMMA) ) {
-                    alt34=1;
+                if ( (LA31_0==T_COMMA) ) {
+                    alt31=1;
                 }
 
 
-                switch (alt34) {
+                switch (alt31) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:361:5: T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:359:5: T_COMMA otherparam= T_IDENTIFIER T_COLON othertype= complexType
             	    {
-            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_methodParameterList1430); 
+            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_methodParameterList1379);
 
-            	    otherparam=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_methodParameterList1434); 
+            	    otherparam=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_methodParameterList1383);
 
-            	    match(input,T_COLON,FOLLOW_T_COLON_in_methodParameterList1436); 
+            	    match(input,T_COLON,FOLLOW_T_COLON_in_methodParameterList1385);
 
-            	    pushFollow(FOLLOW_complexType_in_methodParameterList1440);
+            	    pushFollow(FOLLOW_complexType_in_methodParameterList1389);
             	    othertype=complexType();
 
             	    state._fsp--;
@@ -2053,7 +1922,7 @@
             	    break;
 
             	default :
-            	    break loop34;
+            	    break loop31;
                 }
             } while (true);
 
@@ -2061,7 +1930,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2076,36 +1945,36 @@
 
 
     // $ANTLR start "namedActionList"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:370:1: namedActionList : namedAction ( T_SEMICOLON namedAction )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:368:1: namedActionList : namedAction ( T_SEMICOLON namedAction )* ;
     public final void namedActionList() throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:371:2: ( namedAction ( T_SEMICOLON namedAction )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:371:4: namedAction ( T_SEMICOLON namedAction )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:369:2: ( namedAction ( T_SEMICOLON namedAction )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:369:4: namedAction ( T_SEMICOLON namedAction )*
             {
-            pushFollow(FOLLOW_namedAction_in_namedActionList1467);
+            pushFollow(FOLLOW_namedAction_in_namedActionList1416);
             namedAction();
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:371:16: ( T_SEMICOLON namedAction )*
-            loop35:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:369:16: ( T_SEMICOLON namedAction )*
+            loop32:
             do {
-                int alt35=2;
-                int LA35_0 = input.LA(1);
+                int alt32=2;
+                final int LA32_0 = input.LA(1);
 
-                if ( (LA35_0==T_SEMICOLON) ) {
-                    alt35=1;
+                if ( (LA32_0==T_SEMICOLON) ) {
+                    alt32=1;
                 }
 
 
-                switch (alt35) {
+                switch (alt32) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:371:17: T_SEMICOLON namedAction
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:369:17: T_SEMICOLON namedAction
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_namedActionList1470); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_namedActionList1419);
 
-            	    pushFollow(FOLLOW_namedAction_in_namedActionList1472);
+            	    pushFollow(FOLLOW_namedAction_in_namedActionList1421);
             	    namedAction();
 
             	    state._fsp--;
@@ -2115,7 +1984,7 @@
             	    break;
 
             	default :
-            	    break loop35;
+            	    break loop32;
                 }
             } while (true);
 
@@ -2123,7 +1992,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2138,7 +2007,7 @@
 
 
     // $ANTLR start "namedAction"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:374:1: namedAction : ( T_CTRL | T_OBS |) actionname= T_IDENTIFIER ( T_LPAREN methodParameterList[newAction] T_RPAREN )? T_EQUAL ( T_VAR localActionVars[newAction] )? body= discreteActionBody ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:372:1: namedAction : ( T_CTRL | T_OBS |) actionname= T_IDENTIFIER ( T_LPAREN methodParameterList[newAction] T_RPAREN )? T_EQUAL ( T_VAR localActionVars[newAction] )? body= discreteActionBody ;
     public final void namedAction() throws RecognitionException {
         Token actionname=null;
         GuardedCommand body =null;
@@ -2147,44 +2016,44 @@
 
         		FunctionTypeEnum actionType;
         		FunctionIdentifier newAction = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:379:2: ( ( T_CTRL | T_OBS |) actionname= T_IDENTIFIER ( T_LPAREN methodParameterList[newAction] T_RPAREN )? T_EQUAL ( T_VAR localActionVars[newAction] )? body= discreteActionBody )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:384:3: ( T_CTRL | T_OBS |) actionname= T_IDENTIFIER ( T_LPAREN methodParameterList[newAction] T_RPAREN )? T_EQUAL ( T_VAR localActionVars[newAction] )? body= discreteActionBody
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:377:2: ( ( T_CTRL | T_OBS |) actionname= T_IDENTIFIER ( T_LPAREN methodParameterList[newAction] T_RPAREN )? T_EQUAL ( T_VAR localActionVars[newAction] )? body= discreteActionBody )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:377:4: ( T_CTRL | T_OBS |) actionname= T_IDENTIFIER ( T_LPAREN methodParameterList[newAction] T_RPAREN )? T_EQUAL ( T_VAR localActionVars[newAction] )? body= discreteActionBody
             {
             actionType = FunctionTypeEnum.Internal;
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:385:3: ( T_CTRL | T_OBS |)
-            int alt36=3;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:378:3: ( T_CTRL | T_OBS |)
+            int alt33=3;
             switch ( input.LA(1) ) {
             case T_CTRL:
                 {
-                alt36=1;
+                alt33=1;
                 }
                 break;
             case T_OBS:
                 {
-                alt36=2;
+                alt33=2;
                 }
                 break;
             case T_IDENTIFIER:
                 {
-                alt36=3;
+                alt33=3;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 36, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 33, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt36) {
+            switch (alt33) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:385:4: T_CTRL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:378:4: T_CTRL
                     {
-                    match(input,T_CTRL,FOLLOW_T_CTRL_in_namedAction1510); 
+                    match(input,T_CTRL,FOLLOW_T_CTRL_in_namedAction1446);
 
                     actionType = FunctionTypeEnum.Controllable;
 
@@ -2191,9 +2060,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:385:58: T_OBS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:378:58: T_OBS
                     {
-                    match(input,T_OBS,FOLLOW_T_OBS_in_namedAction1515); 
+                    match(input,T_OBS,FOLLOW_T_OBS_in_namedAction1451);
 
                     actionType = FunctionTypeEnum.Observable;
 
@@ -2200,7 +2069,7 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:385:109: 
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:378:109:
                     {
                     }
                     break;
@@ -2208,30 +2077,30 @@
             }
 
 
-            actionname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_namedAction1527); 
+            actionname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_namedAction1463);
 
             newAction = createNamedAction(actionname,actionType);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:387:3: ( T_LPAREN methodParameterList[newAction] T_RPAREN )?
-            int alt37=2;
-            int LA37_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:380:3: ( T_LPAREN methodParameterList[newAction] T_RPAREN )?
+            int alt34=2;
+            final int LA34_0 = input.LA(1);
 
-            if ( (LA37_0==T_LPAREN) ) {
-                alt37=1;
+            if ( (LA34_0==T_LPAREN) ) {
+                alt34=1;
             }
-            switch (alt37) {
+            switch (alt34) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:387:4: T_LPAREN methodParameterList[newAction] T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:380:4: T_LPAREN methodParameterList[newAction] T_RPAREN
                     {
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_namedAction1535); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_namedAction1471);
 
-                    pushFollow(FOLLOW_methodParameterList_in_namedAction1537);
+                    pushFollow(FOLLOW_methodParameterList_in_namedAction1473);
                     methodParameterList(newAction);
 
                     state._fsp--;
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_namedAction1541); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_namedAction1477);
 
                     }
                     break;
@@ -2239,22 +2108,22 @@
             }
 
 
-            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_namedAction1548); 
+            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_namedAction1484);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:389:3: ( T_VAR localActionVars[newAction] )?
-            int alt38=2;
-            int LA38_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:382:3: ( T_VAR localActionVars[newAction] )?
+            int alt35=2;
+            final int LA35_0 = input.LA(1);
 
-            if ( (LA38_0==T_VAR) ) {
-                alt38=1;
+            if ( (LA35_0==T_VAR) ) {
+                alt35=1;
             }
-            switch (alt38) {
+            switch (alt35) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:389:4: T_VAR localActionVars[newAction]
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:382:4: T_VAR localActionVars[newAction]
                     {
-                    match(input,T_VAR,FOLLOW_T_VAR_in_namedAction1554); 
+                    match(input,T_VAR,FOLLOW_T_VAR_in_namedAction1490);
 
-                    pushFollow(FOLLOW_localActionVars_in_namedAction1556);
+                    pushFollow(FOLLOW_localActionVars_in_namedAction1492);
                     localActionVars(newAction);
 
                     state._fsp--;
@@ -2266,7 +2135,7 @@
             }
 
 
-            pushFollow(FOLLOW_discreteActionBody_in_namedAction1567);
+            pushFollow(FOLLOW_discreteActionBody_in_namedAction1503);
             body=discreteActionBody();
 
             state._fsp--;
@@ -2277,7 +2146,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2293,24 +2162,24 @@
 
 
     // $ANTLR start "localActionVars"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:397:1: localActionVars[FunctionIdentifier newMethod] : id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:390:1: localActionVars[FunctionIdentifier newMethod] : id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ;
     public final void localActionVars(FunctionIdentifier newMethod) throws RecognitionException {
         Token id1=null;
         Token id2=null;
-        UlyssesType t1 =null;
+        Type t1 =null;
 
-        UlyssesType t2 =null;
+        Type t2 =null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:398:2: (id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:399:3: id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:391:2: (id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:392:3: id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )*
             {
-            id1=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_localActionVars1599); 
+            id1=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_localActionVars1535);
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_localActionVars1601); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_localActionVars1537);
 
-            pushFollow(FOLLOW_complexType_in_localActionVars1605);
+            pushFollow(FOLLOW_complexType_in_localActionVars1541);
             t1=complexType();
 
             state._fsp--;
@@ -2318,28 +2187,28 @@
 
             addLocalVariableToNamedAction(newMethod,id1,t1);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:400:4: ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )*
-            loop39:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:393:4: ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )*
+            loop36:
             do {
-                int alt39=2;
-                int LA39_0 = input.LA(1);
+                int alt36=2;
+                final int LA36_0 = input.LA(1);
 
-                if ( (LA39_0==T_SEMICOLON) ) {
-                    alt39=1;
+                if ( (LA36_0==T_SEMICOLON) ) {
+                    alt36=1;
                 }
 
 
-                switch (alt39) {
+                switch (alt36) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:400:5: T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:393:5: T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_localActionVars1614); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_localActionVars1550);
 
-            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_localActionVars1618); 
+            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_localActionVars1554);
 
-            	    match(input,T_COLON,FOLLOW_T_COLON_in_localActionVars1620); 
+            	    match(input,T_COLON,FOLLOW_T_COLON_in_localActionVars1556);
 
-            	    pushFollow(FOLLOW_complexType_in_localActionVars1624);
+            	    pushFollow(FOLLOW_complexType_in_localActionVars1560);
             	    t2=complexType();
 
             	    state._fsp--;
@@ -2351,7 +2220,7 @@
             	    break;
 
             	default :
-            	    break loop39;
+            	    break loop36;
                 }
             } while (true);
 
@@ -2359,7 +2228,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2374,7 +2243,7 @@
 
 
     // $ANTLR start "anonymousAction"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:406:1: anonymousAction returns [GuardedCommand result] : b= discreteActionBody ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:399:1: anonymousAction returns [GuardedCommand result] : b= discreteActionBody ;
     public final GuardedCommand anonymousAction() throws RecognitionException {
         GuardedCommand result = null;
 
@@ -2383,10 +2252,10 @@
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:408:2: (b= discreteActionBody )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:410:3: b= discreteActionBody
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:401:2: (b= discreteActionBody )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:402:3: b= discreteActionBody
             {
-            pushFollow(FOLLOW_discreteActionBody_in_anonymousAction1659);
+            pushFollow(FOLLOW_discreteActionBody_in_anonymousAction1593);
             b=discreteActionBody();
 
             state._fsp--;
@@ -2397,7 +2266,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2411,311 +2280,8 @@
 
 
 
-    // $ANTLR start "continuousActionBody"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:413:1: continuousActionBody returns [GuardedCommand result] : T_CONT T_REQUIRES expr= expression T_COLON bdy= qualConstraintList T_END ;
-    public final GuardedCommand continuousActionBody() throws RecognitionException {
-        GuardedCommand result = null;
-
-
-        Expression expr =null;
-
-        Block bdy =null;
-
-
-
-        		result = null;
-        	
-        try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:418:2: ( T_CONT T_REQUIRES expr= expression T_COLON bdy= qualConstraintList T_END )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:418:4: T_CONT T_REQUIRES expr= expression T_COLON bdy= qualConstraintList T_END
-            {
-            match(input,T_CONT,FOLLOW_T_CONT_in_continuousActionBody1684); 
-
-            match(input,T_REQUIRES,FOLLOW_T_REQUIRES_in_continuousActionBody1686); 
-
-            pushFollow(FOLLOW_expression_in_continuousActionBody1690);
-            expr=expression();
-
-            state._fsp--;
-
-
-            match(input,T_COLON,FOLLOW_T_COLON_in_continuousActionBody1692); 
-
-            pushFollow(FOLLOW_qualConstraintList_in_continuousActionBody1699);
-            bdy=qualConstraintList();
-
-            state._fsp--;
-
-
-            match(input,T_END,FOLLOW_T_END_in_continuousActionBody1704); 
-
-            result = createGuardedCommandStatement(expr,bdy,true);
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-
-        finally {
-        	// do for sure before leaving
-        }
-        return result;
-    }
-    // $ANTLR end "continuousActionBody"
-
-
-
-    // $ANTLR start "qualConstraintList"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:424:1: qualConstraintList returns [Block result] : stmt= qualConstraint ( T_COMMA ostmt= qualConstraint )* ;
-    public final Block qualConstraintList() throws RecognitionException {
-        Block result = null;
-
-
-        QualitativeConstraintStatement stmt =null;
-
-        QualitativeConstraintStatement ostmt =null;
-
-
-
-        		result = createSeqBlock(null);
-        		pushBlockToResolveStack(result);
-        	
-        try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:430:2: (stmt= qualConstraint ( T_COMMA ostmt= qualConstraint )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:430:4: stmt= qualConstraint ( T_COMMA ostmt= qualConstraint )*
-            {
-            pushFollow(FOLLOW_qualConstraint_in_qualConstraintList1732);
-            stmt=qualConstraint();
-
-            state._fsp--;
-
-
-            addToBlockList(result,stmt);
-
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:431:3: ( T_COMMA ostmt= qualConstraint )*
-            loop40:
-            do {
-                int alt40=2;
-                int LA40_0 = input.LA(1);
-
-                if ( (LA40_0==T_COMMA) ) {
-                    alt40=1;
-                }
-
-
-                switch (alt40) {
-            	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:431:4: T_COMMA ostmt= qualConstraint
-            	    {
-            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_qualConstraintList1739); 
-
-            	    pushFollow(FOLLOW_qualConstraint_in_qualConstraintList1743);
-            	    ostmt=qualConstraint();
-
-            	    state._fsp--;
-
-
-            	    addToBlockList(result,ostmt);
-
-            	    }
-            	    break;
-
-            	default :
-            	    break loop40;
-                }
-            } while (true);
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-
-        finally {
-        	// do for sure before leaving
-            popBlockFromResolveStack(result);
-        }
-        return result;
-    }
-    // $ANTLR end "qualConstraintList"
-
-
-
-    // $ANTLR start "qualConstraint"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:438:1: qualConstraint returns [QualitativeConstraintStatement result] : id1= T_IDENTIFIER T_EQUAL ( T_DERIV derivid= T_IDENTIFIER |id2= T_IDENTIFIER ( (op= T_SUM |op= T_DIFF |op= T_PROD ) id3= T_IDENTIFIER |) ) ;
-    public final QualitativeConstraintStatement qualConstraint() throws RecognitionException {
-        QualitativeConstraintStatement result = null;
-
-
-        Token id1=null;
-        Token derivid=null;
-        Token id2=null;
-        Token op=null;
-        Token id3=null;
-
-        try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:440:2: (id1= T_IDENTIFIER T_EQUAL ( T_DERIV derivid= T_IDENTIFIER |id2= T_IDENTIFIER ( (op= T_SUM |op= T_DIFF |op= T_PROD ) id3= T_IDENTIFIER |) ) )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:440:4: id1= T_IDENTIFIER T_EQUAL ( T_DERIV derivid= T_IDENTIFIER |id2= T_IDENTIFIER ( (op= T_SUM |op= T_DIFF |op= T_PROD ) id3= T_IDENTIFIER |) )
-            {
-            id1=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualConstraint1774); 
-
-            match(input,T_EQUAL,FOLLOW_T_EQUAL_in_qualConstraint1776); 
-
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:441:3: ( T_DERIV derivid= T_IDENTIFIER |id2= T_IDENTIFIER ( (op= T_SUM |op= T_DIFF |op= T_PROD ) id3= T_IDENTIFIER |) )
-            int alt43=2;
-            int LA43_0 = input.LA(1);
-
-            if ( (LA43_0==T_DERIV) ) {
-                alt43=1;
-            }
-            else if ( (LA43_0==T_IDENTIFIER) ) {
-                alt43=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 43, 0, input);
-
-                throw nvae;
-
-            }
-            switch (alt43) {
-                case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:441:5: T_DERIV derivid= T_IDENTIFIER
-                    {
-                    match(input,T_DERIV,FOLLOW_T_DERIV_in_qualConstraint1783); 
-
-                    derivid=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualConstraint1787); 
-
-                    result = createQualDerivConstraintStatement(id1,derivid);
-
-                    }
-                    break;
-                case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:445:11: id2= T_IDENTIFIER ( (op= T_SUM |op= T_DIFF |op= T_PROD ) id3= T_IDENTIFIER |)
-                    {
-                    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualConstraint1822); 
-
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:446:11: ( (op= T_SUM |op= T_DIFF |op= T_PROD ) id3= T_IDENTIFIER |)
-                    int alt42=2;
-                    int LA42_0 = input.LA(1);
-
-                    if ( (LA42_0==T_DIFF||LA42_0==T_PROD||LA42_0==T_SUM) ) {
-                        alt42=1;
-                    }
-                    else if ( (LA42_0==T_COMMA||LA42_0==T_END) ) {
-                        alt42=2;
-                    }
-                    else {
-                        NoViableAltException nvae =
-                            new NoViableAltException("", 42, 0, input);
-
-                        throw nvae;
-
-                    }
-                    switch (alt42) {
-                        case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:447:12: (op= T_SUM |op= T_DIFF |op= T_PROD ) id3= T_IDENTIFIER
-                            {
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:447:12: (op= T_SUM |op= T_DIFF |op= T_PROD )
-                            int alt41=3;
-                            switch ( input.LA(1) ) {
-                            case T_SUM:
-                                {
-                                alt41=1;
-                                }
-                                break;
-                            case T_DIFF:
-                                {
-                                alt41=2;
-                                }
-                                break;
-                            case T_PROD:
-                                {
-                                alt41=3;
-                                }
-                                break;
-                            default:
-                                NoViableAltException nvae =
-                                    new NoViableAltException("", 41, 0, input);
-
-                                throw nvae;
-
-                            }
-
-                            switch (alt41) {
-                                case 1 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:447:14: op= T_SUM
-                                    {
-                                    op=(Token)match(input,T_SUM,FOLLOW_T_SUM_in_qualConstraint1853); 
-
-                                    }
-                                    break;
-                                case 2 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:448:14: op= T_DIFF
-                                    {
-                                    op=(Token)match(input,T_DIFF,FOLLOW_T_DIFF_in_qualConstraint1870); 
-
-                                    }
-                                    break;
-                                case 3 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:449:14: op= T_PROD
-                                    {
-                                    op=(Token)match(input,T_PROD,FOLLOW_T_PROD_in_qualConstraint1887); 
-
-                                    }
-                                    break;
-
-                            }
-
-
-                            id3=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualConstraint1916); 
-
-                            result = createQualArithConstraintStatement(id1,id2,id3,op);
-
-                            }
-                            break;
-                        case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:454:12: 
-                            {
-                            result = createQualEqualConstraintStatement(id1,id2);
-
-                            }
-                            break;
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-
-        finally {
-        	// do for sure before leaving
-        }
-        return result;
-    }
-    // $ANTLR end "qualConstraint"
-
-
-
     // $ANTLR start "discreteActionBody"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:462:1: discreteActionBody returns [GuardedCommand result] : T_REQUIRES expr= expression T_COLON bdy= actionBody[null] T_END ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:405:1: discreteActionBody returns [GuardedCommand result] : T_REQUIRES expr= expression T_COLON bdy= actionBody[null] T_END ;
     public final GuardedCommand discreteActionBody() throws RecognitionException {
         GuardedCommand result = null;
 
@@ -2727,30 +2293,30 @@
 
 
         		result = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:467:2: ( T_REQUIRES expr= expression T_COLON bdy= actionBody[null] T_END )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:468:3: T_REQUIRES expr= expression T_COLON bdy= actionBody[null] T_END
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:410:2: ( T_REQUIRES expr= expression T_COLON bdy= actionBody[null] T_END )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:411:3: T_REQUIRES expr= expression T_COLON bdy= actionBody[null] T_END
             {
             result = createGuardedCommandStatement(); pushBlockToResolveStack(result);
 
-            match(input,T_REQUIRES,FOLLOW_T_REQUIRES_in_discreteActionBody2010); 
+            match(input,T_REQUIRES,FOLLOW_T_REQUIRES_in_discreteActionBody1624);
 
-            pushFollow(FOLLOW_expression_in_discreteActionBody2014);
+            pushFollow(FOLLOW_expression_in_discreteActionBody1628);
             expr=expression();
 
             state._fsp--;
 
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_discreteActionBody2016); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_discreteActionBody1630);
 
-            pushFollow(FOLLOW_actionBody_in_discreteActionBody2023);
+            pushFollow(FOLLOW_actionBody_in_discreteActionBody1637);
             bdy=actionBody(null);
 
             state._fsp--;
 
 
-            match(input,T_END,FOLLOW_T_END_in_discreteActionBody2028); 
+            match(input,T_END,FOLLOW_T_END_in_discreteActionBody1642);
 
             addExprAndBlockToGuardedCommand(result,expr,bdy);
 
@@ -2757,7 +2323,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2773,41 +2339,41 @@
 
 
     // $ANTLR start "actionBlock"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:482:1: actionBlock[Block top] returns [Block prioList] : actionBlockParallel[prioList] ( T_PRIO actionBlockParallel[prioList] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:425:1: actionBlock[Block top] returns [Block prioList] : actionBlockParallel[prioList] ( T_PRIO actionBlockParallel[prioList] )* ;
     public final Block actionBlock(Block top) throws RecognitionException {
         Block prioList = null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:484:2: ( actionBlockParallel[prioList] ( T_PRIO actionBlockParallel[prioList] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:484:6: actionBlockParallel[prioList] ( T_PRIO actionBlockParallel[prioList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:427:2: ( actionBlockParallel[prioList] ( T_PRIO actionBlockParallel[prioList] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:427:6: actionBlockParallel[prioList] ( T_PRIO actionBlockParallel[prioList] )*
             {
             prioList = createPrioBlock(top);  pushBlockToResolveStack(prioList);
 
-            pushFollow(FOLLOW_actionBlockParallel_in_actionBlock2071);
+            pushFollow(FOLLOW_actionBlockParallel_in_actionBlock1685);
             actionBlockParallel(prioList);
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:485:34: ( T_PRIO actionBlockParallel[prioList] )*
-            loop44:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:428:34: ( T_PRIO actionBlockParallel[prioList] )*
+            loop37:
             do {
-                int alt44=2;
-                int LA44_0 = input.LA(1);
+                int alt37=2;
+                final int LA37_0 = input.LA(1);
 
-                if ( (LA44_0==T_PRIO) ) {
-                    alt44=1;
+                if ( (LA37_0==T_PRIO) ) {
+                    alt37=1;
                 }
 
 
-                switch (alt44) {
+                switch (alt37) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:485:35: T_PRIO actionBlockParallel[prioList]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:428:35: T_PRIO actionBlockParallel[prioList]
             	    {
-            	    match(input,T_PRIO,FOLLOW_T_PRIO_in_actionBlock2075); 
+            	    match(input,T_PRIO,FOLLOW_T_PRIO_in_actionBlock1689);
 
-            	    pushFollow(FOLLOW_actionBlockParallel_in_actionBlock2077);
+            	    pushFollow(FOLLOW_actionBlockParallel_in_actionBlock1691);
             	    actionBlockParallel(prioList);
 
             	    state._fsp--;
@@ -2817,7 +2383,7 @@
             	    break;
 
             	default :
-            	    break loop44;
+            	    break loop37;
                 }
             } while (true);
 
@@ -2825,7 +2391,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2841,39 +2407,39 @@
 
 
     // $ANTLR start "actionBlockParallel"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:490:1: actionBlockParallel[Block top] : actionBlockSequential[parList] ( T_NONDET actionBlockSequential[parList] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:433:1: actionBlockParallel[Block top] : actionBlockSequential[parList] ( T_NONDET actionBlockSequential[parList] )* ;
     public final void actionBlockParallel(Block top) throws RecognitionException {
-        	Block parList = createNondetBlock(top); 
+        	final Block parList = createNondetBlock(top);
         		 	pushBlockToResolveStack(parList);
-        		
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:494:2: ( actionBlockSequential[parList] ( T_NONDET actionBlockSequential[parList] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:494:4: actionBlockSequential[parList] ( T_NONDET actionBlockSequential[parList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:437:2: ( actionBlockSequential[parList] ( T_NONDET actionBlockSequential[parList] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:437:4: actionBlockSequential[parList] ( T_NONDET actionBlockSequential[parList] )*
             {
-            pushFollow(FOLLOW_actionBlockSequential_in_actionBlockParallel2110);
+            pushFollow(FOLLOW_actionBlockSequential_in_actionBlockParallel1724);
             actionBlockSequential(parList);
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:494:35: ( T_NONDET actionBlockSequential[parList] )*
-            loop45:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:437:35: ( T_NONDET actionBlockSequential[parList] )*
+            loop38:
             do {
-                int alt45=2;
-                int LA45_0 = input.LA(1);
+                int alt38=2;
+                final int LA38_0 = input.LA(1);
 
-                if ( (LA45_0==T_NONDET) ) {
-                    alt45=1;
+                if ( (LA38_0==T_NONDET) ) {
+                    alt38=1;
                 }
 
 
-                switch (alt45) {
+                switch (alt38) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:494:36: T_NONDET actionBlockSequential[parList]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:437:36: T_NONDET actionBlockSequential[parList]
             	    {
-            	    match(input,T_NONDET,FOLLOW_T_NONDET_in_actionBlockParallel2114); 
+            	    match(input,T_NONDET,FOLLOW_T_NONDET_in_actionBlockParallel1728);
 
-            	    pushFollow(FOLLOW_actionBlockSequential_in_actionBlockParallel2116);
+            	    pushFollow(FOLLOW_actionBlockSequential_in_actionBlockParallel1730);
             	    actionBlockSequential(parList);
 
             	    state._fsp--;
@@ -2883,7 +2449,7 @@
             	    break;
 
             	default :
-            	    break loop45;
+            	    break loop38;
                 }
             } while (true);
 
@@ -2891,7 +2457,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -2907,52 +2473,52 @@
 
 
     // $ANTLR start "actionBlockSequential"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:499:1: actionBlockSequential[Block top] : ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )? actionBlockParen[seqList] ( T_SEMICOLON actionBlockParen[seqList] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:442:1: actionBlockSequential[Block top] : ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )? actionBlockParen[seqList] ( T_SEMICOLON actionBlockParen[seqList] )* ;
     public final void actionBlockSequential(Block top) throws RecognitionException {
         Expression sexpr =null;
 
 
 
-        			Block seqList = createSeqBlock(top);
+        			final Block seqList = createSeqBlock(top);
         			pushBlockToResolveStack(seqList);
-        		
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:504:2: ( ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )? actionBlockParen[seqList] ( T_SEMICOLON actionBlockParen[seqList] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:504:5: ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )? actionBlockParen[seqList] ( T_SEMICOLON actionBlockParen[seqList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:447:2: ( ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )? actionBlockParen[seqList] ( T_SEMICOLON actionBlockParen[seqList] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:447:5: ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )? actionBlockParen[seqList] ( T_SEMICOLON actionBlockParen[seqList] )*
             {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:504:5: ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )?
-            int alt47=2;
-            int LA47_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:447:5: ( T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON )?
+            int alt40=2;
+            final int LA40_0 = input.LA(1);
 
-            if ( (LA47_0==T_VAR) ) {
-                alt47=1;
+            if ( (LA40_0==T_VAR) ) {
+                alt40=1;
             }
-            switch (alt47) {
+            switch (alt40) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:504:6: T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:447:6: T_VAR syms= blockvarlist[seqList] ( '&' sexpr= expression )? T_COLON
                     {
-                    match(input,T_VAR,FOLLOW_T_VAR_in_actionBlockSequential2150); 
+                    match(input,T_VAR,FOLLOW_T_VAR_in_actionBlockSequential1764);
 
-                    pushFollow(FOLLOW_blockvarlist_in_actionBlockSequential2154);
+                    pushFollow(FOLLOW_blockvarlist_in_actionBlockSequential1768);
                     blockvarlist(seqList);
 
                     state._fsp--;
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:504:39: ( '&' sexpr= expression )?
-                    int alt46=2;
-                    int LA46_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:447:39: ( '&' sexpr= expression )?
+                    int alt39=2;
+                    final int LA39_0 = input.LA(1);
 
-                    if ( (LA46_0==118) ) {
-                        alt46=1;
+                    if ( (LA39_0==116) ) {
+                        alt39=1;
                     }
-                    switch (alt46) {
+                    switch (alt39) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:504:40: '&' sexpr= expression
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:447:40: '&' sexpr= expression
                             {
-                            match(input,118,FOLLOW_118_in_actionBlockSequential2158); 
+                            match(input,116,FOLLOW_116_in_actionBlockSequential1772);
 
-                            pushFollow(FOLLOW_expression_in_actionBlockSequential2162);
+                            pushFollow(FOLLOW_expression_in_actionBlockSequential1776);
                             sexpr=expression();
 
                             state._fsp--;
@@ -2966,7 +2532,7 @@
                     }
 
 
-                    match(input,T_COLON,FOLLOW_T_COLON_in_actionBlockSequential2169); 
+                    match(input,T_COLON,FOLLOW_T_COLON_in_actionBlockSequential1783);
 
                     }
                     break;
@@ -2974,30 +2540,30 @@
             }
 
 
-            pushFollow(FOLLOW_actionBlockParen_in_actionBlockSequential2178);
+            pushFollow(FOLLOW_actionBlockParen_in_actionBlockSequential1792);
             actionBlockParen(seqList);
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:505:30: ( T_SEMICOLON actionBlockParen[seqList] )*
-            loop48:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:448:30: ( T_SEMICOLON actionBlockParen[seqList] )*
+            loop41:
             do {
-                int alt48=2;
-                int LA48_0 = input.LA(1);
+                int alt41=2;
+                final int LA41_0 = input.LA(1);
 
-                if ( (LA48_0==T_SEMICOLON) ) {
-                    alt48=1;
+                if ( (LA41_0==T_SEMICOLON) ) {
+                    alt41=1;
                 }
 
 
-                switch (alt48) {
+                switch (alt41) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:505:31: T_SEMICOLON actionBlockParen[seqList]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:448:31: T_SEMICOLON actionBlockParen[seqList]
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_actionBlockSequential2182); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_actionBlockSequential1796);
 
-            	    pushFollow(FOLLOW_actionBlockParen_in_actionBlockSequential2184);
+            	    pushFollow(FOLLOW_actionBlockParen_in_actionBlockSequential1798);
             	    actionBlockParen(seqList);
 
             	    state._fsp--;
@@ -3007,7 +2573,7 @@
             	    break;
 
             	default :
-            	    break loop48;
+            	    break loop41;
                 }
             } while (true);
 
@@ -3015,7 +2581,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3031,46 +2597,46 @@
 
 
     // $ANTLR start "actionBlockParen"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:510:1: actionBlockParen[Block top] : ( T_LPAREN actionBlock[top] T_RPAREN | anonymousOrNamedAction[top] );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:453:1: actionBlockParen[Block top] : ( T_LPAREN actionBlock[top] T_RPAREN | anonymousOrNamedAction[top] );
     public final void actionBlockParen(Block top) throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:511:2: ( T_LPAREN actionBlock[top] T_RPAREN | anonymousOrNamedAction[top] )
-            int alt49=2;
-            int LA49_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:454:2: ( T_LPAREN actionBlock[top] T_RPAREN | anonymousOrNamedAction[top] )
+            int alt42=2;
+            final int LA42_0 = input.LA(1);
 
-            if ( (LA49_0==T_LPAREN) ) {
-                alt49=1;
+            if ( (LA42_0==T_LPAREN) ) {
+                alt42=1;
             }
-            else if ( (LA49_0==T_IDENTIFIER||LA49_0==T_REQUIRES||LA49_0==T_SKIP) ) {
-                alt49=2;
+            else if ( (LA42_0==T_IDENTIFIER||LA42_0==T_REQUIRES||LA42_0==T_SKIP) ) {
+                alt42=2;
             }
             else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 49, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 42, 0, input);
 
                 throw nvae;
 
             }
-            switch (alt49) {
+            switch (alt42) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:511:4: T_LPAREN actionBlock[top] T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:454:4: T_LPAREN actionBlock[top] T_RPAREN
                     {
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_actionBlockParen2208); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_actionBlockParen1822);
 
-                    pushFollow(FOLLOW_actionBlock_in_actionBlockParen2210);
+                    pushFollow(FOLLOW_actionBlock_in_actionBlockParen1824);
                     actionBlock(top);
 
                     state._fsp--;
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_actionBlockParen2213); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_actionBlockParen1827);
 
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:512:4: anonymousOrNamedAction[top]
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:455:4: anonymousOrNamedAction[top]
                     {
-                    pushFollow(FOLLOW_anonymousOrNamedAction_in_actionBlockParen2218);
+                    pushFollow(FOLLOW_anonymousOrNamedAction_in_actionBlockParen1832);
                     anonymousOrNamedAction(top);
 
                     state._fsp--;
@@ -3081,7 +2647,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3096,7 +2662,7 @@
 
 
     // $ANTLR start "anonymousOrNamedAction"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:515:1: anonymousOrNamedAction[Block top] : (gcmd= anonymousAction |aname= T_IDENTIFIER ( T_LPAREN m_params= methodCallParams T_RPAREN )? (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )? | T_SKIP );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:458:1: anonymousOrNamedAction[Block top] : (gcmd= anonymousAction |aname= T_IDENTIFIER ( T_LPAREN m_params= methodCallParams T_RPAREN )? (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )? | T_SKIP );
     public final void anonymousOrNamedAction(Block top) throws RecognitionException {
         Token aname=null;
         Token amap=null;
@@ -3108,37 +2674,37 @@
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:516:2: (gcmd= anonymousAction |aname= T_IDENTIFIER ( T_LPAREN m_params= methodCallParams T_RPAREN )? (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )? | T_SKIP )
-            int alt52=3;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:459:2: (gcmd= anonymousAction |aname= T_IDENTIFIER ( T_LPAREN m_params= methodCallParams T_RPAREN )? (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )? | T_SKIP )
+            int alt45=3;
             switch ( input.LA(1) ) {
             case T_REQUIRES:
                 {
-                alt52=1;
+                alt45=1;
                 }
                 break;
             case T_IDENTIFIER:
                 {
-                alt52=2;
+                alt45=2;
                 }
                 break;
             case T_SKIP:
                 {
-                alt52=3;
+                alt45=3;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 52, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 45, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt52) {
+            switch (alt45) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:516:4: gcmd= anonymousAction
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:459:4: gcmd= anonymousAction
                     {
-                    pushFollow(FOLLOW_anonymousAction_in_anonymousOrNamedAction2235);
+                    pushFollow(FOLLOW_anonymousAction_in_anonymousOrNamedAction1849);
                     gcmd=anonymousAction();
 
                     state._fsp--;
@@ -3149,30 +2715,30 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:517:4: aname= T_IDENTIFIER ( T_LPAREN m_params= methodCallParams T_RPAREN )? (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )?
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:460:4: aname= T_IDENTIFIER ( T_LPAREN m_params= methodCallParams T_RPAREN )? (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )?
                     {
-                    aname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_anonymousOrNamedAction2244); 
+                    aname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_anonymousOrNamedAction1858);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:518:11: ( T_LPAREN m_params= methodCallParams T_RPAREN )?
-                    int alt50=2;
-                    int LA50_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:461:11: ( T_LPAREN m_params= methodCallParams T_RPAREN )?
+                    int alt43=2;
+                    final int LA43_0 = input.LA(1);
 
-                    if ( (LA50_0==T_LPAREN) ) {
-                        alt50=1;
+                    if ( (LA43_0==T_LPAREN) ) {
+                        alt43=1;
                     }
-                    switch (alt50) {
+                    switch (alt43) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:518:12: T_LPAREN m_params= methodCallParams T_RPAREN
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:461:12: T_LPAREN m_params= methodCallParams T_RPAREN
                             {
-                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_anonymousOrNamedAction2258); 
+                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_anonymousOrNamedAction1872);
 
-                            pushFollow(FOLLOW_methodCallParams_in_anonymousOrNamedAction2263);
+                            pushFollow(FOLLOW_methodCallParams_in_anonymousOrNamedAction1877);
                             m_params=methodCallParams();
 
                             state._fsp--;
 
 
-                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_anonymousOrNamedAction2265); 
+                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_anonymousOrNamedAction1879);
 
                             }
                             break;
@@ -3180,18 +2746,18 @@
                     }
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:519:11: (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )?
-                    int alt51=2;
-                    int LA51_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:462:11: (amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')' )?
+                    int alt44=2;
+                    final int LA44_0 = input.LA(1);
 
-                    if ( ((LA51_0 >= T_FOLDLR && LA51_0 <= T_FOLDRL)) ) {
-                        alt51=1;
+                    if ( ((LA44_0 >= T_FOLDLR && LA44_0 <= T_FOLDRL)) ) {
+                        alt44=1;
                     }
-                    switch (alt51) {
+                    switch (alt44) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:519:12: amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')'
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:462:12: amap= ( T_FOLDLR | T_FOLDRL ) '(' amapexpr= expression ')'
                             {
-                            amap=(Token)input.LT(1);
+                            amap=input.LT(1);
 
                             if ( (input.LA(1) >= T_FOLDLR && input.LA(1) <= T_FOLDRL) ) {
                                 input.consume();
@@ -3198,20 +2764,20 @@
                                 state.errorRecovery=false;
                             }
                             else {
-                                MismatchedSetException mse = new MismatchedSetException(null,input);
+                                final MismatchedSetException mse = new MismatchedSetException(null,input);
                                 throw mse;
                             }
 
 
-                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_anonymousOrNamedAction2289); 
+                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_anonymousOrNamedAction1903);
 
-                            pushFollow(FOLLOW_expression_in_anonymousOrNamedAction2293);
+                            pushFollow(FOLLOW_expression_in_anonymousOrNamedAction1907);
                             amapexpr=expression();
 
                             state._fsp--;
 
 
-                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_anonymousOrNamedAction2295); 
+                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_anonymousOrNamedAction1909);
 
                             }
                             break;
@@ -3224,9 +2790,9 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:521:4: T_SKIP
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:464:4: T_SKIP
                     {
-                    match(input,T_SKIP,FOLLOW_T_SKIP_in_anonymousOrNamedAction2306); 
+                    match(input,T_SKIP,FOLLOW_T_SKIP_in_anonymousOrNamedAction1920);
 
                     addSkipStatementToBlockList(top);
 
@@ -3235,7 +2801,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3250,36 +2816,36 @@
 
 
     // $ANTLR start "blockvarlist"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:525:1: blockvarlist[Block seqList] : blockvar[seqList] ( T_SEMICOLON blockvar[seqList] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:468:1: blockvarlist[Block seqList] : blockvar[seqList] ( T_SEMICOLON blockvar[seqList] )* ;
     public final void blockvarlist(Block seqList) throws RecognitionException {
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:526:2: ( blockvar[seqList] ( T_SEMICOLON blockvar[seqList] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:526:4: blockvar[seqList] ( T_SEMICOLON blockvar[seqList] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:469:2: ( blockvar[seqList] ( T_SEMICOLON blockvar[seqList] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:469:4: blockvar[seqList] ( T_SEMICOLON blockvar[seqList] )*
             {
-            pushFollow(FOLLOW_blockvar_in_blockvarlist2322);
+            pushFollow(FOLLOW_blockvar_in_blockvarlist1936);
             blockvar(seqList);
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:526:23: ( T_SEMICOLON blockvar[seqList] )*
-            loop53:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:469:23: ( T_SEMICOLON blockvar[seqList] )*
+            loop46:
             do {
-                int alt53=2;
-                int LA53_0 = input.LA(1);
+                int alt46=2;
+                final int LA46_0 = input.LA(1);
 
-                if ( (LA53_0==T_SEMICOLON) ) {
-                    alt53=1;
+                if ( (LA46_0==T_SEMICOLON) ) {
+                    alt46=1;
                 }
 
 
-                switch (alt53) {
+                switch (alt46) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:526:24: T_SEMICOLON blockvar[seqList]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:469:24: T_SEMICOLON blockvar[seqList]
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_blockvarlist2327); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_blockvarlist1941);
 
-            	    pushFollow(FOLLOW_blockvar_in_blockvarlist2329);
+            	    pushFollow(FOLLOW_blockvar_in_blockvarlist1943);
             	    blockvar(seqList);
 
             	    state._fsp--;
@@ -3289,7 +2855,7 @@
             	    break;
 
             	default :
-            	    break loop53;
+            	    break loop46;
                 }
             } while (true);
 
@@ -3297,7 +2863,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3312,21 +2878,21 @@
 
 
     // $ANTLR start "blockvar"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:529:1: blockvar[Block seqList] : varname= T_IDENTIFIER T_COLON aType= complexType ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:472:1: blockvar[Block seqList] : varname= T_IDENTIFIER T_COLON aType= complexType ;
     public final void blockvar(Block seqList) throws RecognitionException {
         Token varname=null;
-        UlyssesType aType =null;
+        Type aType =null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:530:2: (varname= T_IDENTIFIER T_COLON aType= complexType )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:530:5: varname= T_IDENTIFIER T_COLON aType= complexType
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:473:2: (varname= T_IDENTIFIER T_COLON aType= complexType )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:473:5: varname= T_IDENTIFIER T_COLON aType= complexType
             {
-            varname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_blockvar2349); 
+            varname=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_blockvar1963);
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_blockvar2352); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_blockvar1966);
 
-            pushFollow(FOLLOW_complexType_in_blockvar2356);
+            pushFollow(FOLLOW_complexType_in_blockvar1970);
             aType=complexType();
 
             state._fsp--;
@@ -3337,7 +2903,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3352,37 +2918,37 @@
 
 
     // $ANTLR start "actionBody"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:540:1: actionBody[Block top] returns [Block result] : actionBodyParallel[result] ( T_PRIO actionBodyParallel[result] )? ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:483:1: actionBody[Block top] returns [Block result] : actionBodyParallel[result] ( T_PRIO actionBodyParallel[result] )? ;
     public final Block actionBody(Block top) throws RecognitionException {
         Block result = null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:542:2: ( actionBodyParallel[result] ( T_PRIO actionBodyParallel[result] )? )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:542:4: actionBodyParallel[result] ( T_PRIO actionBodyParallel[result] )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:485:2: ( actionBodyParallel[result] ( T_PRIO actionBodyParallel[result] )? )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:485:4: actionBodyParallel[result] ( T_PRIO actionBodyParallel[result] )?
             {
             result = createPrioBlock(top); pushBlockToResolveStack(result);
 
-            pushFollow(FOLLOW_actionBodyParallel_in_actionBody2391);
+            pushFollow(FOLLOW_actionBodyParallel_in_actionBody2005);
             actionBodyParallel(result);
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:543:30: ( T_PRIO actionBodyParallel[result] )?
-            int alt54=2;
-            int LA54_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:486:30: ( T_PRIO actionBodyParallel[result] )?
+            int alt47=2;
+            final int LA47_0 = input.LA(1);
 
-            if ( (LA54_0==T_PRIO) ) {
-                alt54=1;
+            if ( (LA47_0==T_PRIO) ) {
+                alt47=1;
             }
-            switch (alt54) {
+            switch (alt47) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:543:31: T_PRIO actionBodyParallel[result]
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:486:31: T_PRIO actionBodyParallel[result]
                     {
-                    match(input,T_PRIO,FOLLOW_T_PRIO_in_actionBody2395); 
+                    match(input,T_PRIO,FOLLOW_T_PRIO_in_actionBody2009);
 
-                    pushFollow(FOLLOW_actionBodyParallel_in_actionBody2397);
+                    pushFollow(FOLLOW_actionBodyParallel_in_actionBody2011);
                     actionBodyParallel(result);
 
                     state._fsp--;
@@ -3397,7 +2963,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3413,7 +2979,7 @@
 
 
     // $ANTLR start "actionBodyParallel"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:548:1: actionBodyParallel[Block top] returns [Block result] : actionBodySequential[result] ( T_NONDET olst= actionBodySequential[result] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:491:1: actionBodyParallel[Block top] returns [Block result] : actionBodySequential[result] ( T_NONDET olst= actionBodySequential[result] )* ;
     public final Block actionBodyParallel(Block top) throws RecognitionException {
         Block result = null;
 
@@ -3422,35 +2988,35 @@
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:550:2: ( actionBodySequential[result] ( T_NONDET olst= actionBodySequential[result] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:550:4: actionBodySequential[result] ( T_NONDET olst= actionBodySequential[result] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:493:2: ( actionBodySequential[result] ( T_NONDET olst= actionBodySequential[result] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:493:4: actionBodySequential[result] ( T_NONDET olst= actionBodySequential[result] )*
             {
             result = createNondetBlock(top); pushBlockToResolveStack(result);
 
-            pushFollow(FOLLOW_actionBodySequential_in_actionBodyParallel2432);
+            pushFollow(FOLLOW_actionBodySequential_in_actionBodyParallel2046);
             actionBodySequential(result);
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:552:3: ( T_NONDET olst= actionBodySequential[result] )*
-            loop55:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:495:3: ( T_NONDET olst= actionBodySequential[result] )*
+            loop48:
             do {
-                int alt55=2;
-                int LA55_0 = input.LA(1);
+                int alt48=2;
+                final int LA48_0 = input.LA(1);
 
-                if ( (LA55_0==T_NONDET) ) {
-                    alt55=1;
+                if ( (LA48_0==T_NONDET) ) {
+                    alt48=1;
                 }
 
 
-                switch (alt55) {
+                switch (alt48) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:552:4: T_NONDET olst= actionBodySequential[result]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:495:4: T_NONDET olst= actionBodySequential[result]
             	    {
-            	    match(input,T_NONDET,FOLLOW_T_NONDET_in_actionBodyParallel2438); 
+            	    match(input,T_NONDET,FOLLOW_T_NONDET_in_actionBodyParallel2052);
 
-            	    pushFollow(FOLLOW_actionBodySequential_in_actionBodyParallel2442);
+            	    pushFollow(FOLLOW_actionBodySequential_in_actionBodyParallel2056);
             	    olst=actionBodySequential(result);
 
             	    state._fsp--;
@@ -3460,7 +3026,7 @@
             	    break;
 
             	default :
-            	    break loop55;
+            	    break loop48;
                 }
             } while (true);
 
@@ -3468,7 +3034,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3484,7 +3050,7 @@
 
 
     // $ANTLR start "actionBodySequential"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:559:1: actionBodySequential[Block top] returns [SeqBlock result] : ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )? actionBodyParen[result] ( T_SEMICOLON actionBodyParen[result] )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:502:1: actionBodySequential[Block top] returns [SeqBlock result] : ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )? actionBodyParen[result] ( T_SEMICOLON actionBodyParen[result] )* ;
     public final SeqBlock actionBodySequential(Block top) throws RecognitionException {
         SeqBlock result = null;
 
@@ -3493,44 +3059,44 @@
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:561:2: ( ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )? actionBodyParen[result] ( T_SEMICOLON actionBodyParen[result] )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:561:4: ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )? actionBodyParen[result] ( T_SEMICOLON actionBodyParen[result] )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:504:2: ( ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )? actionBodyParen[result] ( T_SEMICOLON actionBodyParen[result] )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:504:4: ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )? actionBodyParen[result] ( T_SEMICOLON actionBodyParen[result] )*
             {
             result = createSeqBlock(top); pushBlockToResolveStack(result);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:562:3: ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )?
-            int alt57=2;
-            int LA57_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:505:3: ( T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON )?
+            int alt50=2;
+            final int LA50_0 = input.LA(1);
 
-            if ( (LA57_0==T_VAR) ) {
-                alt57=1;
+            if ( (LA50_0==T_VAR) ) {
+                alt50=1;
             }
-            switch (alt57) {
+            switch (alt50) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:562:4: T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:505:4: T_VAR syms= blockvarlist[result] ( '&' sexpr= expression )? T_COLON
                     {
-                    match(input,T_VAR,FOLLOW_T_VAR_in_actionBodySequential2478); 
+                    match(input,T_VAR,FOLLOW_T_VAR_in_actionBodySequential2092);
 
-                    pushFollow(FOLLOW_blockvarlist_in_actionBodySequential2482);
+                    pushFollow(FOLLOW_blockvarlist_in_actionBodySequential2096);
                     blockvarlist(result);
 
                     state._fsp--;
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:562:36: ( '&' sexpr= expression )?
-                    int alt56=2;
-                    int LA56_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:505:36: ( '&' sexpr= expression )?
+                    int alt49=2;
+                    final int LA49_0 = input.LA(1);
 
-                    if ( (LA56_0==118) ) {
-                        alt56=1;
+                    if ( (LA49_0==116) ) {
+                        alt49=1;
                     }
-                    switch (alt56) {
+                    switch (alt49) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:562:37: '&' sexpr= expression
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:505:37: '&' sexpr= expression
                             {
-                            match(input,118,FOLLOW_118_in_actionBodySequential2486); 
+                            match(input,116,FOLLOW_116_in_actionBodySequential2100);
 
-                            pushFollow(FOLLOW_expression_in_actionBodySequential2490);
+                            pushFollow(FOLLOW_expression_in_actionBodySequential2104);
                             sexpr=expression();
 
                             state._fsp--;
@@ -3544,7 +3110,7 @@
                     }
 
 
-                    match(input,T_COLON,FOLLOW_T_COLON_in_actionBodySequential2497); 
+                    match(input,T_COLON,FOLLOW_T_COLON_in_actionBodySequential2111);
 
                     }
                     break;
@@ -3552,30 +3118,30 @@
             }
 
 
-            pushFollow(FOLLOW_actionBodyParen_in_actionBodySequential2505);
+            pushFollow(FOLLOW_actionBodyParen_in_actionBodySequential2119);
             actionBodyParen(result);
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:563:28: ( T_SEMICOLON actionBodyParen[result] )*
-            loop58:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:506:28: ( T_SEMICOLON actionBodyParen[result] )*
+            loop51:
             do {
-                int alt58=2;
-                int LA58_0 = input.LA(1);
+                int alt51=2;
+                final int LA51_0 = input.LA(1);
 
-                if ( (LA58_0==T_SEMICOLON) ) {
-                    alt58=1;
+                if ( (LA51_0==T_SEMICOLON) ) {
+                    alt51=1;
                 }
 
 
-                switch (alt58) {
+                switch (alt51) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:563:29: T_SEMICOLON actionBodyParen[result]
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:506:29: T_SEMICOLON actionBodyParen[result]
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_actionBodySequential2509); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_actionBodySequential2123);
 
-            	    pushFollow(FOLLOW_actionBodyParen_in_actionBodySequential2511);
+            	    pushFollow(FOLLOW_actionBodyParen_in_actionBodySequential2125);
             	    actionBodyParen(result);
 
             	    state._fsp--;
@@ -3585,7 +3151,7 @@
             	    break;
 
             	default :
-            	    break loop58;
+            	    break loop51;
                 }
             } while (true);
 
@@ -3593,7 +3159,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3609,49 +3175,49 @@
 
 
     // $ANTLR start "actionBodyParen"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:569:1: actionBodyParen[SeqBlock top] : ( T_LPAREN actionBody[top] T_RPAREN |stmt= statement );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:512:1: actionBodyParen[SeqBlock top] : ( T_LPAREN actionBody[top] T_RPAREN |stmt= statement );
     public final void actionBodyParen(SeqBlock top) throws RecognitionException {
         Statement stmt =null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:570:2: ( T_LPAREN actionBody[top] T_RPAREN |stmt= statement )
-            int alt59=2;
-            int LA59_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:513:2: ( T_LPAREN actionBody[top] T_RPAREN |stmt= statement )
+            int alt52=2;
+            final int LA52_0 = input.LA(1);
 
-            if ( (LA59_0==T_LPAREN) ) {
-                alt59=1;
+            if ( (LA52_0==T_LPAREN) ) {
+                alt52=1;
             }
-            else if ( (LA59_0==T_ABORT||LA59_0==T_BREAK||LA59_0==T_IDENTIFIER||LA59_0==T_KILL||LA59_0==T_REQUIRES||LA59_0==T_SELF||LA59_0==T_SKIP) ) {
-                alt59=2;
+            else if ( (LA52_0==T_ABORT||LA52_0==T_BREAK||LA52_0==T_IDENTIFIER||LA52_0==T_KILL||LA52_0==T_REQUIRES||LA52_0==T_SELF||LA52_0==T_SKIP) ) {
+                alt52=2;
             }
             else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 59, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 52, 0, input);
 
                 throw nvae;
 
             }
-            switch (alt59) {
+            switch (alt52) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:570:5: T_LPAREN actionBody[top] T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:513:5: T_LPAREN actionBody[top] T_RPAREN
                     {
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_actionBodyParen2539); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_actionBodyParen2153);
 
-                    pushFollow(FOLLOW_actionBody_in_actionBodyParen2541);
+                    pushFollow(FOLLOW_actionBody_in_actionBodyParen2155);
                     actionBody(top);
 
                     state._fsp--;
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_actionBodyParen2545); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_actionBodyParen2159);
 
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:571:4: stmt= statement
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:514:4: stmt= statement
                     {
-                    pushFollow(FOLLOW_statement_in_actionBodyParen2552);
+                    pushFollow(FOLLOW_statement_in_actionBodyParen2166);
                     stmt=statement();
 
                     state._fsp--;
@@ -3664,7 +3230,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -3679,7 +3245,7 @@
 
 
     // $ANTLR start "statement"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:576:1: statement returns [Statement result] : ( T_ABORT | T_SKIP | T_BREAK | T_KILL T_LPAREN aname= ( T_IDENTIFIER | T_SELF ) T_RPAREN |gc= discreteActionBody |aqname= reference ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |) );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:519:1: statement returns [Statement result] : ( T_ABORT | T_SKIP | T_BREAK | T_KILL T_LPAREN aname= ( T_IDENTIFIER | T_SELF ) T_RPAREN |gc= discreteActionBody |aqname= reference ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |) );
     public final Statement statement() throws RecognitionException {
         Statement result = null;
 
@@ -3705,55 +3271,55 @@
 
         		boolean popFromResolveStack = false;
         		result = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:582:2: ( T_ABORT | T_SKIP | T_BREAK | T_KILL T_LPAREN aname= ( T_IDENTIFIER | T_SELF ) T_RPAREN |gc= discreteActionBody |aqname= reference ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |) )
-            int alt65=6;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:525:2: ( T_ABORT | T_SKIP | T_BREAK | T_KILL T_LPAREN aname= ( T_IDENTIFIER | T_SELF ) T_RPAREN |gc= discreteActionBody |aqname= reference ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |) )
+            int alt58=6;
             switch ( input.LA(1) ) {
             case T_ABORT:
                 {
-                alt65=1;
+                alt58=1;
                 }
                 break;
             case T_SKIP:
                 {
-                alt65=2;
+                alt58=2;
                 }
                 break;
             case T_BREAK:
                 {
-                alt65=3;
+                alt58=3;
                 }
                 break;
             case T_KILL:
                 {
-                alt65=4;
+                alt58=4;
                 }
                 break;
             case T_REQUIRES:
                 {
-                alt65=5;
+                alt58=5;
                 }
                 break;
             case T_IDENTIFIER:
             case T_SELF:
                 {
-                alt65=6;
+                alt58=6;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 65, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 58, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt65) {
+            switch (alt58) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:582:4: T_ABORT
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:525:4: T_ABORT
                     {
-                    match(input,T_ABORT,FOLLOW_T_ABORT_in_statement2580); 
+                    match(input,T_ABORT,FOLLOW_T_ABORT_in_statement2194);
 
                     result = createAbortStatement();
 
@@ -3760,9 +3326,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:583:4: T_SKIP
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:526:4: T_SKIP
                     {
-                    match(input,T_SKIP,FOLLOW_T_SKIP_in_statement2587); 
+                    match(input,T_SKIP,FOLLOW_T_SKIP_in_statement2201);
 
                     result = createSkipStatement();
 
@@ -3769,9 +3335,9 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:584:4: T_BREAK
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:527:4: T_BREAK
                     {
-                    match(input,T_BREAK,FOLLOW_T_BREAK_in_statement2594); 
+                    match(input,T_BREAK,FOLLOW_T_BREAK_in_statement2208);
 
                     result = createBreakStatement();
 
@@ -3778,13 +3344,13 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:585:4: T_KILL T_LPAREN aname= ( T_IDENTIFIER | T_SELF ) T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:528:4: T_KILL T_LPAREN aname= ( T_IDENTIFIER | T_SELF ) T_RPAREN
                     {
-                    match(input,T_KILL,FOLLOW_T_KILL_in_statement2601); 
+                    match(input,T_KILL,FOLLOW_T_KILL_in_statement2215);
 
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_statement2603); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_statement2217);
 
-                    aname=(Token)input.LT(1);
+                    aname=input.LT(1);
 
                     if ( input.LA(1)==T_IDENTIFIER||input.LA(1)==T_SELF ) {
                         input.consume();
@@ -3791,12 +3357,12 @@
                         state.errorRecovery=false;
                     }
                     else {
-                        MismatchedSetException mse = new MismatchedSetException(null,input);
+                        final MismatchedSetException mse = new MismatchedSetException(null,input);
                         throw mse;
                     }
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_statement2615); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_statement2229);
 
                     result = createKillStatement(aname);
 
@@ -3803,9 +3369,9 @@
                     }
                     break;
                 case 5 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:586:5: gc= discreteActionBody
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:529:5: gc= discreteActionBody
                     {
-                    pushFollow(FOLLOW_discreteActionBody_in_statement2625);
+                    pushFollow(FOLLOW_discreteActionBody_in_statement2239);
                     gc=discreteActionBody();
 
                     state._fsp--;
@@ -3816,25 +3382,25 @@
                     }
                     break;
                 case 6 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:587:4: aqname= reference ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |)
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:530:4: aqname= reference ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |)
                     {
-                    pushFollow(FOLLOW_reference_in_statement2634);
+                    pushFollow(FOLLOW_reference_in_statement2248);
                     aqname=reference();
 
                     state._fsp--;
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:588:7: ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |)
-                    int alt64=3;
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:531:7: ( T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )? | ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )? |)
+                    int alt57=3;
                     switch ( input.LA(1) ) {
                     case T_ASSIGNMENT:
                         {
-                        alt64=1;
+                        alt57=1;
                         }
                         break;
                     case T_COMMA:
                         {
-                        alt64=2;
+                        alt57=2;
                         }
                         break;
                     case T_END:
@@ -3843,24 +3409,24 @@
                     case T_RPAREN:
                     case T_SEMICOLON:
                         {
-                        alt64=3;
+                        alt57=3;
                         }
                         break;
                     default:
-                        NoViableAltException nvae =
-                            new NoViableAltException("", 64, 0, input);
+                        final NoViableAltException nvae =
+                            new NoViableAltException("", 57, 0, input);
 
                         throw nvae;
 
                     }
 
-                    switch (alt64) {
+                    switch (alt57) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:589:12: T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )?
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:532:12: T_ASSIGNMENT aexp= expression ( T_WITH ndexp= expression )?
                             {
-                            match(input,T_ASSIGNMENT,FOLLOW_T_ASSIGNMENT_in_statement2662); 
+                            match(input,T_ASSIGNMENT,FOLLOW_T_ASSIGNMENT_in_statement2276);
 
-                            pushFollow(FOLLOW_expression_in_statement2667);
+                            pushFollow(FOLLOW_expression_in_statement2281);
                             aexp=expression();
 
                             state._fsp--;
@@ -3868,20 +3434,20 @@
 
                             result = createSingleAssignmentStatement(aqname,aexp);
 
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:590:15: ( T_WITH ndexp= expression )?
-                            int alt60=2;
-                            int LA60_0 = input.LA(1);
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:533:15: ( T_WITH ndexp= expression )?
+                            int alt53=2;
+                            final int LA53_0 = input.LA(1);
 
-                            if ( (LA60_0==T_WITH) ) {
-                                alt60=1;
+                            if ( (LA53_0==T_WITH) ) {
+                                alt53=1;
                             }
-                            switch (alt60) {
+                            switch (alt53) {
                                 case 1 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:590:16: T_WITH ndexp= expression
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:533:16: T_WITH ndexp= expression
                                     {
-                                    match(input,T_WITH,FOLLOW_T_WITH_in_statement2687); 
+                                    match(input,T_WITH,FOLLOW_T_WITH_in_statement2301);
 
-                                    pushFollow(FOLLOW_expression_in_statement2691);
+                                    pushFollow(FOLLOW_expression_in_statement2305);
                                     ndexp=expression();
 
                                     state._fsp--;
@@ -3898,29 +3464,29 @@
                             }
                             break;
                         case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:593:8: ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )?
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:536:8: ( T_COMMA malhs= reference )+ T_ASSIGNMENT mexp= expression ( T_COMMA mexp2= expression )+ ( T_WITH ndex2= expression )?
                             {
                             result = createMultipleAssignmentStatementLHS(aqname);
 
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:594:7: ( T_COMMA malhs= reference )+
-                            int cnt61=0;
-                            loop61:
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:537:7: ( T_COMMA malhs= reference )+
+                            int cnt54=0;
+                            loop54:
                             do {
-                                int alt61=2;
-                                int LA61_0 = input.LA(1);
+                                int alt54=2;
+                                final int LA54_0 = input.LA(1);
 
-                                if ( (LA61_0==T_COMMA) ) {
-                                    alt61=1;
+                                if ( (LA54_0==T_COMMA) ) {
+                                    alt54=1;
                                 }
 
 
-                                switch (alt61) {
+                                switch (alt54) {
                             	case 1 :
-                            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:594:8: T_COMMA malhs= reference
+                            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:537:8: T_COMMA malhs= reference
                             	    {
-                            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_statement2744); 
+                            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_statement2358);
 
-                            	    pushFollow(FOLLOW_reference_in_statement2748);
+                            	    pushFollow(FOLLOW_reference_in_statement2362);
                             	    malhs=reference();
 
                             	    state._fsp--;
@@ -3932,20 +3498,20 @@
                             	    break;
 
                             	default :
-                            	    if ( cnt61 >= 1 ) break loop61;
-                                        EarlyExitException eee =
-                                            new EarlyExitException(61, input);
+                            	    if ( cnt54 >= 1 ) break loop54;
+                                        final EarlyExitException eee =
+                                            new EarlyExitException(54, input);
                                         throw eee;
                                 }
-                                cnt61++;
+                                cnt54++;
                             } while (true);
 
 
-                            match(input,T_ASSIGNMENT,FOLLOW_T_ASSIGNMENT_in_statement2763); 
+                            match(input,T_ASSIGNMENT,FOLLOW_T_ASSIGNMENT_in_statement2377);
 
                             pushAssignmentOnResolveStack(result); popFromResolveStack = true;
 
-                            pushFollow(FOLLOW_expression_in_statement2785);
+                            pushFollow(FOLLOW_expression_in_statement2399);
                             mexp=expression();
 
                             state._fsp--;
@@ -3953,25 +3519,25 @@
 
                             addMutlipleAssignmentStatementRHS(result,mexp);
 
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:599:8: ( T_COMMA mexp2= expression )+
-                            int cnt62=0;
-                            loop62:
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:542:8: ( T_COMMA mexp2= expression )+
+                            int cnt55=0;
+                            loop55:
                             do {
-                                int alt62=2;
-                                int LA62_0 = input.LA(1);
+                                int alt55=2;
+                                final int LA55_0 = input.LA(1);
 
-                                if ( (LA62_0==T_COMMA) ) {
-                                    alt62=1;
+                                if ( (LA55_0==T_COMMA) ) {
+                                    alt55=1;
                                 }
 
 
-                                switch (alt62) {
+                                switch (alt55) {
                             	case 1 :
-                            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:599:9: T_COMMA mexp2= expression
+                            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:542:9: T_COMMA mexp2= expression
                             	    {
-                            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_statement2804); 
+                            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_statement2418);
 
-                            	    pushFollow(FOLLOW_expression_in_statement2808);
+                            	    pushFollow(FOLLOW_expression_in_statement2422);
                             	    mexp2=expression();
 
                             	    state._fsp--;
@@ -3983,29 +3549,29 @@
                             	    break;
 
                             	default :
-                            	    if ( cnt62 >= 1 ) break loop62;
-                                        EarlyExitException eee =
-                                            new EarlyExitException(62, input);
+                            	    if ( cnt55 >= 1 ) break loop55;
+                                        final EarlyExitException eee =
+                                            new EarlyExitException(55, input);
                                         throw eee;
                                 }
-                                cnt62++;
+                                cnt55++;
                             } while (true);
 
 
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:600:8: ( T_WITH ndex2= expression )?
-                            int alt63=2;
-                            int LA63_0 = input.LA(1);
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:543:8: ( T_WITH ndex2= expression )?
+                            int alt56=2;
+                            final int LA56_0 = input.LA(1);
 
-                            if ( (LA63_0==T_WITH) ) {
-                                alt63=1;
+                            if ( (LA56_0==T_WITH) ) {
+                                alt56=1;
                             }
-                            switch (alt63) {
+                            switch (alt56) {
                                 case 1 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:600:9: T_WITH ndex2= expression
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:543:9: T_WITH ndex2= expression
                                     {
-                                    match(input,T_WITH,FOLLOW_T_WITH_in_statement2822); 
+                                    match(input,T_WITH,FOLLOW_T_WITH_in_statement2436);
 
-                                    pushFollow(FOLLOW_expression_in_statement2826);
+                                    pushFollow(FOLLOW_expression_in_statement2440);
                                     ndex2=expression();
 
                                     state._fsp--;
@@ -4022,7 +3588,7 @@
                             }
                             break;
                         case 3 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:603:7: 
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:546:7:
                             {
                             result = createCallStatement(aqname);
 
@@ -4037,7 +3603,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -4047,7 +3613,7 @@
 
             	       if (popFromResolveStack == true)
             	            popAssignmentOffResolveStack(result);
-            	
+
         }
         return result;
     }
@@ -4056,7 +3622,7 @@
 
 
     // $ANTLR start "expression"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:614:1: expression returns [Expression expr] : left= atomExpression (op= binoperator right= atomExpression )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:557:1: expression returns [Expression expr] : left= atomExpression (op= binoperator right= atomExpression )* ;
     public final Expression expression() throws RecognitionException {
         Expression expr = null;
 
@@ -4069,14 +3635,14 @@
 
 
 
-        		ArrayList<BinaryOperator> operators = new ArrayList<BinaryOperator>();
-        		ArrayList<Expression> expressions = new ArrayList<Expression>();		
-        	
+        		final ArrayList<BinaryOperator> operators = new ArrayList<BinaryOperator>();
+        		final ArrayList<Expression> expressions = new ArrayList<Expression>();
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:620:2: (left= atomExpression (op= binoperator right= atomExpression )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:620:4: left= atomExpression (op= binoperator right= atomExpression )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:563:2: (left= atomExpression (op= binoperator right= atomExpression )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:563:4: left= atomExpression (op= binoperator right= atomExpression )*
             {
-            pushFollow(FOLLOW_atomExpression_in_expression2901);
+            pushFollow(FOLLOW_atomExpression_in_expression2515);
             left=atomExpression();
 
             state._fsp--;
@@ -4084,28 +3650,28 @@
 
             expressions.add(left);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:622:3: (op= binoperator right= atomExpression )*
-            loop66:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:565:3: (op= binoperator right= atomExpression )*
+            loop59:
             do {
-                int alt66=2;
-                int LA66_0 = input.LA(1);
+                int alt59=2;
+                final int LA59_0 = input.LA(1);
 
-                if ( (LA66_0==T_AND||LA66_0==T_BIIMPLIES||LA66_0==T_CONC||LA66_0==T_DIFF||LA66_0==T_DIV||(LA66_0 >= T_DOMRESBY && LA66_0 <= T_DOMRESTO)||LA66_0==T_EQUAL||(LA66_0 >= T_GREATER && LA66_0 <= T_GREATEREQUAL)||LA66_0==T_IDIV||(LA66_0 >= T_IMPLIES && LA66_0 <= T_IN)||LA66_0==T_INTER||(LA66_0 >= T_LESS && LA66_0 <= T_LESSEQUAL)||(LA66_0 >= T_MINUS && LA66_0 <= T_MUNION)||(LA66_0 >= T_NOT && LA66_0 <= T_NOTEQUAL)||LA66_0==T_OR||LA66_0==T_POW||LA66_0==T_PROD||(LA66_0 >= T_RNGRESBY && LA66_0 <= T_RNGRESTO)||LA66_0==T_SEQMOD_MAPOVERRIDE||(LA66_0 >= T_SUBSET && LA66_0 <= T_SUM)||LA66_0==T_UNION) ) {
-                    alt66=1;
+                if ( (LA59_0==T_AND||LA59_0==T_BIIMPLIES||LA59_0==T_CONC||LA59_0==T_DIFF||LA59_0==T_DIV||(LA59_0 >= T_DOMRESBY && LA59_0 <= T_DOMRESTO)||LA59_0==T_EQUAL||(LA59_0 >= T_GREATER && LA59_0 <= T_GREATEREQUAL)||LA59_0==T_IDIV||(LA59_0 >= T_IMPLIES && LA59_0 <= T_IN)||LA59_0==T_INTER||(LA59_0 >= T_LESS && LA59_0 <= T_LESSEQUAL)||(LA59_0 >= T_MINUS && LA59_0 <= T_MUNION)||(LA59_0 >= T_NOT && LA59_0 <= T_NOTEQUAL)||LA59_0==T_OR||LA59_0==T_POW||LA59_0==T_PROD||(LA59_0 >= T_RNGRESBY && LA59_0 <= T_RNGRESTO)||LA59_0==T_SEQMOD_MAPOVERRIDE||(LA59_0 >= T_SUBSET && LA59_0 <= T_SUM)||LA59_0==T_UNION) ) {
+                    alt59=1;
                 }
 
 
-                switch (alt66) {
+                switch (alt59) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:622:5: op= binoperator right= atomExpression
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:565:5: op= binoperator right= atomExpression
             	    {
-            	    pushFollow(FOLLOW_binoperator_in_expression2914);
+            	    pushFollow(FOLLOW_binoperator_in_expression2528);
             	    op=binoperator();
 
             	    state._fsp--;
 
 
-            	    pushFollow(FOLLOW_atomExpression_in_expression2922);
+            	    pushFollow(FOLLOW_atomExpression_in_expression2536);
             	    right=atomExpression();
 
             	    state._fsp--;
@@ -4116,13 +3682,13 @@
             	    		  		operators.add(op);
             	    		  		expressions.add(right);
             	    		  	}
-            	    		  
 
+
             	    }
             	    break;
 
             	default :
-            	    break loop66;
+            	    break loop59;
                 }
             } while (true);
 
@@ -4132,7 +3698,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -4147,178 +3713,178 @@
 
 
     // $ANTLR start "binoperator"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:635:1: binoperator returns [BinaryOperator binop] : ( T_BIIMPLIES | T_GREATER | T_GREATEREQUAL | T_LESS | T_LESSEQUAL | T_EQUAL | T_NOTEQUAL | T_IMPLIES | T_MINUS | T_SUM | T_IN ( T_SET )? | T_NOT T_IN ( T_SET )? | T_SUBSET | T_OR | T_DIV | T_PROD | T_IDIV | T_MOD | T_UNION | T_DIFF | T_INTER | T_AND | T_POW | T_CONC | T_DOMRESBY | T_DOMRESTO | T_RNGRESBY | T_RNGRESTO | T_MUNION | T_SEQMOD_MAPOVERRIDE );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:578:1: binoperator returns [BinaryOperator binop] : ( T_BIIMPLIES | T_GREATER | T_GREATEREQUAL | T_LESS | T_LESSEQUAL | T_EQUAL | T_NOTEQUAL | T_IMPLIES | T_MINUS | T_SUM | T_IN ( T_SET )? | T_NOT T_IN ( T_SET )? | T_SUBSET | T_OR | T_DIV | T_PROD | T_IDIV | T_MOD | T_UNION | T_DIFF | T_INTER | T_AND | T_POW | T_CONC | T_DOMRESBY | T_DOMRESTO | T_RNGRESBY | T_RNGRESTO | T_MUNION | T_SEQMOD_MAPOVERRIDE );
     public final BinaryOperator binoperator() throws RecognitionException {
         BinaryOperator binop = null;
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:637:2: ( T_BIIMPLIES | T_GREATER | T_GREATEREQUAL | T_LESS | T_LESSEQUAL | T_EQUAL | T_NOTEQUAL | T_IMPLIES | T_MINUS | T_SUM | T_IN ( T_SET )? | T_NOT T_IN ( T_SET )? | T_SUBSET | T_OR | T_DIV | T_PROD | T_IDIV | T_MOD | T_UNION | T_DIFF | T_INTER | T_AND | T_POW | T_CONC | T_DOMRESBY | T_DOMRESTO | T_RNGRESBY | T_RNGRESTO | T_MUNION | T_SEQMOD_MAPOVERRIDE )
-            int alt69=30;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:580:2: ( T_BIIMPLIES | T_GREATER | T_GREATEREQUAL | T_LESS | T_LESSEQUAL | T_EQUAL | T_NOTEQUAL | T_IMPLIES | T_MINUS | T_SUM | T_IN ( T_SET )? | T_NOT T_IN ( T_SET )? | T_SUBSET | T_OR | T_DIV | T_PROD | T_IDIV | T_MOD | T_UNION | T_DIFF | T_INTER | T_AND | T_POW | T_CONC | T_DOMRESBY | T_DOMRESTO | T_RNGRESBY | T_RNGRESTO | T_MUNION | T_SEQMOD_MAPOVERRIDE )
+            int alt62=30;
             switch ( input.LA(1) ) {
             case T_BIIMPLIES:
                 {
-                alt69=1;
+                alt62=1;
                 }
                 break;
             case T_GREATER:
                 {
-                alt69=2;
+                alt62=2;
                 }
                 break;
             case T_GREATEREQUAL:
                 {
-                alt69=3;
+                alt62=3;
                 }
                 break;
             case T_LESS:
                 {
-                alt69=4;
+                alt62=4;
                 }
                 break;
             case T_LESSEQUAL:
                 {
-                alt69=5;
+                alt62=5;
                 }
                 break;
             case T_EQUAL:
                 {
-                alt69=6;
+                alt62=6;
                 }
                 break;
             case T_NOTEQUAL:
                 {
-                alt69=7;
+                alt62=7;
                 }
                 break;
             case T_IMPLIES:
                 {
-                alt69=8;
+                alt62=8;
                 }
                 break;
             case T_MINUS:
                 {
-                alt69=9;
+                alt62=9;
                 }
                 break;
             case T_SUM:
                 {
-                alt69=10;
+                alt62=10;
                 }
                 break;
             case T_IN:
                 {
-                alt69=11;
+                alt62=11;
                 }
                 break;
             case T_NOT:
                 {
-                alt69=12;
+                alt62=12;
                 }
                 break;
             case T_SUBSET:
                 {
-                alt69=13;
+                alt62=13;
                 }
                 break;
             case T_OR:
                 {
-                alt69=14;
+                alt62=14;
                 }
                 break;
             case T_DIV:
                 {
-                alt69=15;
+                alt62=15;
                 }
                 break;
             case T_PROD:
                 {
-                alt69=16;
+                alt62=16;
                 }
                 break;
             case T_IDIV:
                 {
-                alt69=17;
+                alt62=17;
                 }
                 break;
             case T_MOD:
                 {
-                alt69=18;
+                alt62=18;
                 }
                 break;
             case T_UNION:
                 {
-                alt69=19;
+                alt62=19;
                 }
                 break;
             case T_DIFF:
                 {
-                alt69=20;
+                alt62=20;
                 }
                 break;
             case T_INTER:
                 {
-                alt69=21;
+                alt62=21;
                 }
                 break;
             case T_AND:
                 {
-                alt69=22;
+                alt62=22;
                 }
                 break;
             case T_POW:
                 {
-                alt69=23;
+                alt62=23;
                 }
                 break;
             case T_CONC:
                 {
-                alt69=24;
+                alt62=24;
                 }
                 break;
             case T_DOMRESBY:
                 {
-                alt69=25;
+                alt62=25;
                 }
                 break;
             case T_DOMRESTO:
                 {
-                alt69=26;
+                alt62=26;
                 }
                 break;
             case T_RNGRESBY:
                 {
-                alt69=27;
+                alt62=27;
                 }
                 break;
             case T_RNGRESTO:
                 {
-                alt69=28;
+                alt62=28;
                 }
                 break;
             case T_MUNION:
                 {
-                alt69=29;
+                alt62=29;
                 }
                 break;
             case T_SEQMOD_MAPOVERRIDE:
                 {
-                alt69=30;
+                alt62=30;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 69, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 62, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt69) {
+            switch (alt62) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:637:4: T_BIIMPLIES
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:580:4: T_BIIMPLIES
                     {
-                    match(input,T_BIIMPLIES,FOLLOW_T_BIIMPLIES_in_binoperator2955); 
+                    match(input,T_BIIMPLIES,FOLLOW_T_BIIMPLIES_in_binoperator2569);
 
                     binop = createBinaryOperator(ExpressionKind.biimplies);
 
@@ -4325,9 +3891,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:639:4: T_GREATER
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:582:4: T_GREATER
                     {
-                    match(input,T_GREATER,FOLLOW_T_GREATER_in_binoperator2964); 
+                    match(input,T_GREATER,FOLLOW_T_GREATER_in_binoperator2578);
 
                     binop = createBinaryOperator(ExpressionKind.greater);
 
@@ -4334,9 +3900,9 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:641:4: T_GREATEREQUAL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:584:4: T_GREATEREQUAL
                     {
-                    match(input,T_GREATEREQUAL,FOLLOW_T_GREATEREQUAL_in_binoperator2974); 
+                    match(input,T_GREATEREQUAL,FOLLOW_T_GREATEREQUAL_in_binoperator2588);
 
                     binop = createBinaryOperator(ExpressionKind.greaterequal);
 
@@ -4343,9 +3909,9 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:643:4: T_LESS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:586:4: T_LESS
                     {
-                    match(input,T_LESS,FOLLOW_T_LESS_in_binoperator2983); 
+                    match(input,T_LESS,FOLLOW_T_LESS_in_binoperator2597);
 
                     binop = createBinaryOperator(ExpressionKind.less);
 
@@ -4352,9 +3918,9 @@
                     }
                     break;
                 case 5 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:645:4: T_LESSEQUAL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:588:4: T_LESSEQUAL
                     {
-                    match(input,T_LESSEQUAL,FOLLOW_T_LESSEQUAL_in_binoperator2993); 
+                    match(input,T_LESSEQUAL,FOLLOW_T_LESSEQUAL_in_binoperator2607);
 
                     binop = createBinaryOperator(ExpressionKind.lessequal);
 
@@ -4361,9 +3927,9 @@
                     }
                     break;
                 case 6 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:647:4: T_EQUAL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:590:4: T_EQUAL
                     {
-                    match(input,T_EQUAL,FOLLOW_T_EQUAL_in_binoperator3002); 
+                    match(input,T_EQUAL,FOLLOW_T_EQUAL_in_binoperator2616);
 
                     binop = createBinaryOperator(ExpressionKind.equal);
 
@@ -4370,9 +3936,9 @@
                     }
                     break;
                 case 7 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:649:4: T_NOTEQUAL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:592:4: T_NOTEQUAL
                     {
-                    match(input,T_NOTEQUAL,FOLLOW_T_NOTEQUAL_in_binoperator3014); 
+                    match(input,T_NOTEQUAL,FOLLOW_T_NOTEQUAL_in_binoperator2628);
 
                     binop = createBinaryOperator(ExpressionKind.notequal);
 
@@ -4379,9 +3945,9 @@
                     }
                     break;
                 case 8 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:651:4: T_IMPLIES
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:594:4: T_IMPLIES
                     {
-                    match(input,T_IMPLIES,FOLLOW_T_IMPLIES_in_binoperator3025); 
+                    match(input,T_IMPLIES,FOLLOW_T_IMPLIES_in_binoperator2639);
 
                     binop = createBinaryOperator(ExpressionKind.implies);
 
@@ -4388,9 +3954,9 @@
                     }
                     break;
                 case 9 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:653:4: T_MINUS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:596:4: T_MINUS
                     {
-                    match(input,T_MINUS,FOLLOW_T_MINUS_in_binoperator3034); 
+                    match(input,T_MINUS,FOLLOW_T_MINUS_in_binoperator2648);
 
                     binop = createBinaryOperator(ExpressionKind.minus);
 
@@ -4397,9 +3963,9 @@
                     }
                     break;
                 case 10 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:655:4: T_SUM
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:598:4: T_SUM
                     {
-                    match(input,T_SUM,FOLLOW_T_SUM_in_binoperator3044); 
+                    match(input,T_SUM,FOLLOW_T_SUM_in_binoperator2658);
 
                     binop = createBinaryOperator(ExpressionKind.sum);
 
@@ -4406,22 +3972,22 @@
                     }
                     break;
                 case 11 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:657:4: T_IN ( T_SET )?
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:600:4: T_IN ( T_SET )?
                     {
-                    match(input,T_IN,FOLLOW_T_IN_in_binoperator3054); 
+                    match(input,T_IN,FOLLOW_T_IN_in_binoperator2668);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:657:9: ( T_SET )?
-                    int alt67=2;
-                    int LA67_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:600:9: ( T_SET )?
+                    int alt60=2;
+                    final int LA60_0 = input.LA(1);
 
-                    if ( (LA67_0==T_SET) ) {
-                        alt67=1;
+                    if ( (LA60_0==T_SET) ) {
+                        alt60=1;
                     }
-                    switch (alt67) {
+                    switch (alt60) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:657:9: T_SET
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:600:9: T_SET
                             {
-                            match(input,T_SET,FOLLOW_T_SET_in_binoperator3056); 
+                            match(input,T_SET,FOLLOW_T_SET_in_binoperator2670);
 
                             }
                             break;
@@ -4434,24 +4000,24 @@
                     }
                     break;
                 case 12 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:659:4: T_NOT T_IN ( T_SET )?
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:602:4: T_NOT T_IN ( T_SET )?
                     {
-                    match(input,T_NOT,FOLLOW_T_NOT_in_binoperator3067); 
+                    match(input,T_NOT,FOLLOW_T_NOT_in_binoperator2681);
 
-                    match(input,T_IN,FOLLOW_T_IN_in_binoperator3069); 
+                    match(input,T_IN,FOLLOW_T_IN_in_binoperator2683);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:659:15: ( T_SET )?
-                    int alt68=2;
-                    int LA68_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:602:15: ( T_SET )?
+                    int alt61=2;
+                    final int LA61_0 = input.LA(1);
 
-                    if ( (LA68_0==T_SET) ) {
-                        alt68=1;
+                    if ( (LA61_0==T_SET) ) {
+                        alt61=1;
                     }
-                    switch (alt68) {
+                    switch (alt61) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:659:15: T_SET
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:602:15: T_SET
                             {
-                            match(input,T_SET,FOLLOW_T_SET_in_binoperator3071); 
+                            match(input,T_SET,FOLLOW_T_SET_in_binoperator2685);
 
                             }
                             break;
@@ -4464,9 +4030,9 @@
                     }
                     break;
                 case 13 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:661:4: T_SUBSET
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:604:4: T_SUBSET
                     {
-                    match(input,T_SUBSET,FOLLOW_T_SUBSET_in_binoperator3082); 
+                    match(input,T_SUBSET,FOLLOW_T_SUBSET_in_binoperator2696);
 
                     binop = createBinaryOperator(ExpressionKind.subset);
 
@@ -4473,9 +4039,9 @@
                     }
                     break;
                 case 14 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:663:4: T_OR
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:606:4: T_OR
                     {
-                    match(input,T_OR,FOLLOW_T_OR_in_binoperator3092); 
+                    match(input,T_OR,FOLLOW_T_OR_in_binoperator2706);
 
                     binop = createBinaryOperator(ExpressionKind.or);
 
@@ -4482,9 +4048,9 @@
                     }
                     break;
                 case 15 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:665:4: T_DIV
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:608:4: T_DIV
                     {
-                    match(input,T_DIV,FOLLOW_T_DIV_in_binoperator3101); 
+                    match(input,T_DIV,FOLLOW_T_DIV_in_binoperator2715);
 
                     binop = createBinaryOperator(ExpressionKind.div);
 
@@ -4491,9 +4057,9 @@
                     }
                     break;
                 case 16 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:667:4: T_PROD
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:610:4: T_PROD
                     {
-                    match(input,T_PROD,FOLLOW_T_PROD_in_binoperator3110); 
+                    match(input,T_PROD,FOLLOW_T_PROD_in_binoperator2724);
 
                     binop = createBinaryOperator(ExpressionKind.prod);
 
@@ -4500,9 +4066,9 @@
                     }
                     break;
                 case 17 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:669:4: T_IDIV
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:612:4: T_IDIV
                     {
-                    match(input,T_IDIV,FOLLOW_T_IDIV_in_binoperator3120); 
+                    match(input,T_IDIV,FOLLOW_T_IDIV_in_binoperator2734);
 
                     binop = createBinaryOperator(ExpressionKind.idiv);
 
@@ -4509,9 +4075,9 @@
                     }
                     break;
                 case 18 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:671:4: T_MOD
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:614:4: T_MOD
                     {
-                    match(input,T_MOD,FOLLOW_T_MOD_in_binoperator3130); 
+                    match(input,T_MOD,FOLLOW_T_MOD_in_binoperator2744);
 
                     binop = createBinaryOperator(ExpressionKind.mod);
 
@@ -4518,9 +4084,9 @@
                     }
                     break;
                 case 19 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:673:4: T_UNION
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:616:4: T_UNION
                     {
-                    match(input,T_UNION,FOLLOW_T_UNION_in_binoperator3140); 
+                    match(input,T_UNION,FOLLOW_T_UNION_in_binoperator2754);
 
                     binop = createBinaryOperator(ExpressionKind.union);
 
@@ -4527,9 +4093,9 @@
                     }
                     break;
                 case 20 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:675:4: T_DIFF
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:618:4: T_DIFF
                     {
-                    match(input,T_DIFF,FOLLOW_T_DIFF_in_binoperator3151); 
+                    match(input,T_DIFF,FOLLOW_T_DIFF_in_binoperator2765);
 
                     binop = createBinaryOperator(ExpressionKind.diff);
 
@@ -4536,9 +4102,9 @@
                     }
                     break;
                 case 21 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:677:4: T_INTER
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:620:4: T_INTER
                     {
-                    match(input,T_INTER,FOLLOW_T_INTER_in_binoperator3162); 
+                    match(input,T_INTER,FOLLOW_T_INTER_in_binoperator2776);
 
                     binop = createBinaryOperator(ExpressionKind.inter);
 
@@ -4545,9 +4111,9 @@
                     }
                     break;
                 case 22 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:679:4: T_AND
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:622:4: T_AND
                     {
-                    match(input,T_AND,FOLLOW_T_AND_in_binoperator3173); 
+                    match(input,T_AND,FOLLOW_T_AND_in_binoperator2787);
 
                     binop = createBinaryOperator(ExpressionKind.and);
 
@@ -4554,9 +4120,9 @@
                     }
                     break;
                 case 23 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:681:4: T_POW
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:624:4: T_POW
                     {
-                    match(input,T_POW,FOLLOW_T_POW_in_binoperator3188); 
+                    match(input,T_POW,FOLLOW_T_POW_in_binoperator2802);
 
                     binop = createBinaryOperator(ExpressionKind.pow);
 
@@ -4563,9 +4129,9 @@
                     }
                     break;
                 case 24 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:683:4: T_CONC
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:626:4: T_CONC
                     {
-                    match(input,T_CONC,FOLLOW_T_CONC_in_binoperator3203); 
+                    match(input,T_CONC,FOLLOW_T_CONC_in_binoperator2817);
 
                     binop = createBinaryOperator(ExpressionKind.conc);
 
@@ -4572,9 +4138,9 @@
                     }
                     break;
                 case 25 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:685:4: T_DOMRESBY
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:628:4: T_DOMRESBY
                     {
-                    match(input,T_DOMRESBY,FOLLOW_T_DOMRESBY_in_binoperator3216); 
+                    match(input,T_DOMRESBY,FOLLOW_T_DOMRESBY_in_binoperator2830);
 
                     binop = createBinaryOperator(ExpressionKind.domresby);
 
@@ -4581,9 +4147,9 @@
                     }
                     break;
                 case 26 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:687:4: T_DOMRESTO
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:630:4: T_DOMRESTO
                     {
-                    match(input,T_DOMRESTO,FOLLOW_T_DOMRESTO_in_binoperator3226); 
+                    match(input,T_DOMRESTO,FOLLOW_T_DOMRESTO_in_binoperator2840);
 
                     binop = createBinaryOperator(ExpressionKind.domresto);
 
@@ -4590,9 +4156,9 @@
                     }
                     break;
                 case 27 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:689:4: T_RNGRESBY
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:632:4: T_RNGRESBY
                     {
-                    match(input,T_RNGRESBY,FOLLOW_T_RNGRESBY_in_binoperator3236); 
+                    match(input,T_RNGRESBY,FOLLOW_T_RNGRESBY_in_binoperator2850);
 
                     binop = createBinaryOperator(ExpressionKind.rngresby);
 
@@ -4599,9 +4165,9 @@
                     }
                     break;
                 case 28 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:691:4: T_RNGRESTO
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:634:4: T_RNGRESTO
                     {
-                    match(input,T_RNGRESTO,FOLLOW_T_RNGRESTO_in_binoperator3246); 
+                    match(input,T_RNGRESTO,FOLLOW_T_RNGRESTO_in_binoperator2860);
 
                     binop = createBinaryOperator(ExpressionKind.rngresto);
 
@@ -4608,9 +4174,9 @@
                     }
                     break;
                 case 29 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:693:4: T_MUNION
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:636:4: T_MUNION
                     {
-                    match(input,T_MUNION,FOLLOW_T_MUNION_in_binoperator3256); 
+                    match(input,T_MUNION,FOLLOW_T_MUNION_in_binoperator2870);
 
                     binop = createBinaryOperator(ExpressionKind.munion);
 
@@ -4617,9 +4183,9 @@
                     }
                     break;
                 case 30 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:695:4: T_SEQMOD_MAPOVERRIDE
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:638:4: T_SEQMOD_MAPOVERRIDE
                     {
-                    match(input,T_SEQMOD_MAPOVERRIDE,FOLLOW_T_SEQMOD_MAPOVERRIDE_in_binoperator3266); 
+                    match(input,T_SEQMOD_MAPOVERRIDE,FOLLOW_T_SEQMOD_MAPOVERRIDE_in_binoperator2880);
 
                     binop = createBinaryOperator(ExpressionKind.seqmod_mapoverride);
 
@@ -4628,7 +4194,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -4643,7 +4209,7 @@
 
 
     // $ANTLR start "atomExpression"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:701:1: atomExpression returns [Expression expr] : ( ( (unexpr= op_un )? (e= identifierExpression |e= qvalExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? ) |ie= T_IF ce= expression T_THEN te= expression T_ELSE ee= expression T_END );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:644:1: atomExpression returns [Expression expr] : ( ( (unexpr= op_un )? (e= identifierExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? ) |ie= T_IF ce= expression T_THEN te= expression T_ELSE ee= expression T_END );
     public final Expression atomExpression() throws RecognitionException {
         Expression expr = null;
 
@@ -4666,44 +4232,44 @@
 
 
         		expr = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:706:2: ( ( (unexpr= op_un )? (e= identifierExpression |e= qvalExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? ) |ie= T_IF ce= expression T_THEN te= expression T_ELSE ee= expression T_END )
-            int alt76=2;
-            int LA76_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:649:2: ( ( (unexpr= op_un )? (e= identifierExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? ) |ie= T_IF ce= expression T_THEN te= expression T_ELSE ee= expression T_END )
+            int alt69=2;
+            final int LA69_0 = input.LA(1);
 
-            if ( (LA76_0==T_ABS||(LA76_0 >= T_CARD && LA76_0 <= T_CBRL)||LA76_0==T_DCONC||LA76_0==T_DINTER||LA76_0==T_DOM||(LA76_0 >= T_DUNION && LA76_0 <= T_ELEMS)||(LA76_0 >= T_EXISTS && LA76_0 <= T_FALSE)||LA76_0==T_FLOATNUMBER||LA76_0==T_FORALL||(LA76_0 >= T_HEAD && LA76_0 <= T_IDENTIFIER)||LA76_0==T_INDS||LA76_0==T_INTNUMBER||LA76_0==T_LEN||(LA76_0 >= T_LPAREN && LA76_0 <= T_LSQPAREN)||LA76_0==T_MERGE||LA76_0==T_MINUS||(LA76_0 >= T_NEW && LA76_0 <= T_NIL)||LA76_0==T_NOT||LA76_0==T_RNG||LA76_0==T_SELF||LA76_0==T_STRINGLITERAL||LA76_0==T_TAIL||LA76_0==T_TRUE||LA76_0==125) ) {
-                alt76=1;
+            if ( (LA69_0==T_ABS||(LA69_0 >= T_CARD && LA69_0 <= T_CBRL)||LA69_0==T_DCONC||LA69_0==T_DINTER||LA69_0==T_DOM||(LA69_0 >= T_DUNION && LA69_0 <= T_ELEMS)||(LA69_0 >= T_EXISTS && LA69_0 <= T_FALSE)||LA69_0==T_FLOATNUMBER||LA69_0==T_FORALL||(LA69_0 >= T_HEAD && LA69_0 <= T_IDENTIFIER)||LA69_0==T_INDS||LA69_0==T_INTNUMBER||LA69_0==T_LEN||(LA69_0 >= T_LPAREN && LA69_0 <= T_LSQPAREN)||LA69_0==T_MERGE||LA69_0==T_MINUS||(LA69_0 >= T_NEW && LA69_0 <= T_NIL)||LA69_0==T_NOT||LA69_0==T_RNG||LA69_0==T_SELF||LA69_0==T_STRINGLITERAL||LA69_0==T_TAIL||LA69_0==T_TRUE) ) {
+                alt69=1;
             }
-            else if ( (LA76_0==T_IF) ) {
-                alt76=2;
+            else if ( (LA69_0==T_IF) ) {
+                alt69=2;
             }
             else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 76, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 69, 0, input);
 
                 throw nvae;
 
             }
-            switch (alt76) {
+            switch (alt69) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:706:4: ( (unexpr= op_un )? (e= identifierExpression |e= qvalExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? )
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:649:4: ( (unexpr= op_un )? (e= identifierExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? )
                     {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:706:4: ( (unexpr= op_un )? (e= identifierExpression |e= qvalExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? )
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:706:5: (unexpr= op_un )? (e= identifierExpression |e= qvalExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )?
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:649:4: ( (unexpr= op_un )? (e= identifierExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )? )
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:649:5: (unexpr= op_un )? (e= identifierExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? ) ( 'as' cid= T_IDENTIFIER )?
                     {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:706:11: (unexpr= op_un )?
-                    int alt70=2;
-                    int LA70_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:649:11: (unexpr= op_un )?
+                    int alt63=2;
+                    final int LA63_0 = input.LA(1);
 
-                    if ( (LA70_0==T_ABS||LA70_0==T_CARD||LA70_0==T_DCONC||LA70_0==T_DINTER||LA70_0==T_DOM||(LA70_0 >= T_DUNION && LA70_0 <= T_ELEMS)||LA70_0==T_HEAD||LA70_0==T_INDS||LA70_0==T_LEN||LA70_0==T_MERGE||LA70_0==T_MINUS||LA70_0==T_NOT||LA70_0==T_RNG||LA70_0==T_TAIL) ) {
-                        alt70=1;
+                    if ( (LA63_0==T_ABS||LA63_0==T_CARD||LA63_0==T_DCONC||LA63_0==T_DINTER||LA63_0==T_DOM||(LA63_0 >= T_DUNION && LA63_0 <= T_ELEMS)||LA63_0==T_HEAD||LA63_0==T_INDS||LA63_0==T_LEN||LA63_0==T_MERGE||LA63_0==T_MINUS||LA63_0==T_NOT||LA63_0==T_RNG||LA63_0==T_TAIL) ) {
+                        alt63=1;
                     }
-                    switch (alt70) {
+                    switch (alt63) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:706:11: unexpr= op_un
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:649:11: unexpr= op_un
                             {
-                            pushFollow(FOLLOW_op_un_in_atomExpression3304);
+                            pushFollow(FOLLOW_op_un_in_atomExpression2918);
                             unexpr=op_un();
 
                             state._fsp--;
@@ -4715,14 +4281,14 @@
                     }
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:706:19: (e= identifierExpression |e= qvalExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? )
-                    int alt74=6;
-                    alt74 = dfa74.predict(input);
-                    switch (alt74) {
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:649:19: (e= identifierExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? )
+                    int alt67=5;
+                    alt67 = dfa67.predict(input);
+                    switch (alt67) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:707:8: e= identifierExpression
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:650:8: e= identifierExpression
                             {
-                            pushFollow(FOLLOW_identifierExpression_in_atomExpression3321);
+                            pushFollow(FOLLOW_identifierExpression_in_atomExpression2935);
                             e=identifierExpression();
 
                             state._fsp--;
@@ -4731,10 +4297,10 @@
                             }
                             break;
                         case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:708:8: e= qvalExpression
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:651:8: e= constant
                             {
-                            pushFollow(FOLLOW_qvalExpression_in_atomExpression3332);
-                            e=qvalExpression();
+                            pushFollow(FOLLOW_constant_in_atomExpression2946);
+                            e=constant();
 
                             state._fsp--;
 
@@ -4742,10 +4308,10 @@
                             }
                             break;
                         case 3 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:709:8: e= constant
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:652:8: e= initializedComplexType
                             {
-                            pushFollow(FOLLOW_constant_in_atomExpression3343);
-                            e=constant();
+                            pushFollow(FOLLOW_initializedComplexType_in_atomExpression2957);
+                            e=initializedComplexType();
 
                             state._fsp--;
 
@@ -4753,10 +4319,10 @@
                             }
                             break;
                         case 4 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:710:8: e= initializedComplexType
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:653:8: e= quantifierExpression
                             {
-                            pushFollow(FOLLOW_initializedComplexType_in_atomExpression3354);
-                            e=initializedComplexType();
+                            pushFollow(FOLLOW_quantifierExpression_in_atomExpression2969);
+                            e=quantifierExpression();
 
                             state._fsp--;
 
@@ -4764,62 +4330,51 @@
                             }
                             break;
                         case 5 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:711:8: e= quantifierExpression
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:654:8: T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )?
                             {
-                            pushFollow(FOLLOW_quantifierExpression_in_atomExpression3366);
-                            e=quantifierExpression();
+                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_atomExpression2978);
 
-                            state._fsp--;
-
-
-                            }
-                            break;
-                        case 6 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:712:8: T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )?
-                            {
-                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_atomExpression3375); 
-
-                            pushFollow(FOLLOW_expression_in_atomExpression3379);
+                            pushFollow(FOLLOW_expression_in_atomExpression2982);
                             e=expression();
 
                             state._fsp--;
 
 
-                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_atomExpression3381); 
+                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_atomExpression2984);
 
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:713:8: ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )?
-                            int alt73=3;
-                            int LA73_0 = input.LA(1);
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:655:8: ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )?
+                            int alt66=3;
+                            final int LA66_0 = input.LA(1);
 
-                            if ( (LA73_0==T_POINT) ) {
-                                alt73=1;
+                            if ( (LA66_0==T_POINT) ) {
+                                alt66=1;
                             }
-                            else if ( ((LA73_0 >= T_LPAREN && LA73_0 <= T_LSQPAREN)) ) {
-                                alt73=2;
+                            else if ( ((LA66_0 >= T_LPAREN && LA66_0 <= T_LSQPAREN)) ) {
+                                alt66=2;
                             }
-                            switch (alt73) {
+                            switch (alt66) {
                                 case 1 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:714:6: ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )?
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:656:6: ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )?
                                     {
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:714:6: ( T_POINT idn= T_IDENTIFIER )+
-                                    int cnt71=0;
-                                    loop71:
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:656:6: ( T_POINT idn= T_IDENTIFIER )+
+                                    int cnt64=0;
+                                    loop64:
                                     do {
-                                        int alt71=2;
-                                        int LA71_0 = input.LA(1);
+                                        int alt64=2;
+                                        final int LA64_0 = input.LA(1);
 
-                                        if ( (LA71_0==T_POINT) ) {
-                                            alt71=1;
+                                        if ( (LA64_0==T_POINT) ) {
+                                            alt64=1;
                                         }
 
 
-                                        switch (alt71) {
+                                        switch (alt64) {
                                     	case 1 :
-                                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:714:7: T_POINT idn= T_IDENTIFIER
+                                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:656:7: T_POINT idn= T_IDENTIFIER
                                     	    {
-                                    	    match(input,T_POINT,FOLLOW_T_POINT_in_atomExpression3404); 
+                                    	    match(input,T_POINT,FOLLOW_T_POINT_in_atomExpression3007);
 
-                                    	    idn=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_atomExpression3416); 
+                                    	    idn=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_atomExpression3019);
 
                                     	    e = addIdentifierAccessExpression(e,idn);
 
@@ -4827,27 +4382,27 @@
                                     	    break;
 
                                     	default :
-                                    	    if ( cnt71 >= 1 ) break loop71;
-                                                EarlyExitException eee =
-                                                    new EarlyExitException(71, input);
+                                    	    if ( cnt64 >= 1 ) break loop64;
+                                                final EarlyExitException eee =
+                                                    new EarlyExitException(64, input);
                                                 throw eee;
                                         }
-                                        cnt71++;
+                                        cnt64++;
                                     } while (true);
 
 
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:717:8: (res= accessExpression[e] )?
-                                    int alt72=2;
-                                    int LA72_0 = input.LA(1);
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:659:8: (res= accessExpression[e] )?
+                                    int alt65=2;
+                                    final int LA65_0 = input.LA(1);
 
-                                    if ( ((LA72_0 >= T_LPAREN && LA72_0 <= T_LSQPAREN)) ) {
-                                        alt72=1;
+                                    if ( ((LA65_0 >= T_LPAREN && LA65_0 <= T_LSQPAREN)) ) {
+                                        alt65=1;
                                     }
-                                    switch (alt72) {
+                                    switch (alt65) {
                                         case 1 :
-                                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:717:9: res= accessExpression[e]
+                                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:659:9: res= accessExpression[e]
                                             {
-                                            pushFollow(FOLLOW_accessExpression_in_atomExpression3440);
+                                            pushFollow(FOLLOW_accessExpression_in_atomExpression3043);
                                             res=accessExpression(e);
 
                                             state._fsp--;
@@ -4864,9 +4419,9 @@
                                     }
                                     break;
                                 case 2 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:719:6: e= accessExpression[e]
+                                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:661:6: e= accessExpression[e]
                                     {
-                                    pushFollow(FOLLOW_accessExpression_in_atomExpression3460);
+                                    pushFollow(FOLLOW_accessExpression_in_atomExpression3063);
                                     e=accessExpression(e);
 
                                     state._fsp--;
@@ -4884,20 +4439,20 @@
                     }
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:721:5: ( 'as' cid= T_IDENTIFIER )?
-                    int alt75=2;
-                    int LA75_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:663:5: ( 'as' cid= T_IDENTIFIER )?
+                    int alt68=2;
+                    final int LA68_0 = input.LA(1);
 
-                    if ( (LA75_0==121) ) {
-                        alt75=1;
+                    if ( (LA68_0==119) ) {
+                        alt68=1;
                     }
-                    switch (alt75) {
+                    switch (alt68) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:721:6: 'as' cid= T_IDENTIFIER
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:663:6: 'as' cid= T_IDENTIFIER
                             {
-                            match(input,121,FOLLOW_121_in_atomExpression3479); 
+                            match(input,119,FOLLOW_119_in_atomExpression3082);
 
-                            cid=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_atomExpression3483); 
+                            cid=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_atomExpression3086);
 
                             e=addCastExpression(e,cid);
 
@@ -4915,33 +4470,33 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:724:6: ie= T_IF ce= expression T_THEN te= expression T_ELSE ee= expression T_END
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:666:6: ie= T_IF ce= expression T_THEN te= expression T_ELSE ee= expression T_END
                     {
-                    ie=(Token)match(input,T_IF,FOLLOW_T_IF_in_atomExpression3504); 
+                    ie=(Token)match(input,T_IF,FOLLOW_T_IF_in_atomExpression3107);
 
-                    pushFollow(FOLLOW_expression_in_atomExpression3508);
+                    pushFollow(FOLLOW_expression_in_atomExpression3111);
                     ce=expression();
 
                     state._fsp--;
 
 
-                    match(input,T_THEN,FOLLOW_T_THEN_in_atomExpression3510); 
+                    match(input,T_THEN,FOLLOW_T_THEN_in_atomExpression3113);
 
-                    pushFollow(FOLLOW_expression_in_atomExpression3514);
+                    pushFollow(FOLLOW_expression_in_atomExpression3117);
                     te=expression();
 
                     state._fsp--;
 
 
-                    match(input,T_ELSE,FOLLOW_T_ELSE_in_atomExpression3516); 
+                    match(input,T_ELSE,FOLLOW_T_ELSE_in_atomExpression3119);
 
-                    pushFollow(FOLLOW_expression_in_atomExpression3520);
+                    pushFollow(FOLLOW_expression_in_atomExpression3123);
                     ee=expression();
 
                     state._fsp--;
 
 
-                    match(input,T_END,FOLLOW_T_END_in_atomExpression3522); 
+                    match(input,T_END,FOLLOW_T_END_in_atomExpression3125);
 
                     expr = createConditionalExpression(ce,te,ee,ie);
 
@@ -4950,7 +4505,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -4965,7 +4520,7 @@
 
 
     // $ANTLR start "quantifierExpression"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:729:1: quantifierExpression returns [Quantifier result] : t= ( T_FORALL | T_EXISTS ) (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* ) T_COLON T_LPAREN e= expression T_RPAREN ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:671:1: quantifierExpression returns [Quantifier result] : t= ( T_FORALL | T_EXISTS ) (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* ) T_COLON T_LPAREN e= expression T_RPAREN ;
     public final Quantifier quantifierExpression() throws RecognitionException {
         Quantifier result = null;
 
@@ -4973,9 +4528,9 @@
         Token t=null;
         Token id=null;
         Token id2=null;
-        UlyssesType id_type =null;
+        Type id_type =null;
 
-        UlyssesType id_type2 =null;
+        Type id_type2 =null;
 
         Expression e =null;
 
@@ -4982,12 +4537,12 @@
 
 
         		result = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:734:2: (t= ( T_FORALL | T_EXISTS ) (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* ) T_COLON T_LPAREN e= expression T_RPAREN )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:734:5: t= ( T_FORALL | T_EXISTS ) (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* ) T_COLON T_LPAREN e= expression T_RPAREN
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:676:2: (t= ( T_FORALL | T_EXISTS ) (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* ) T_COLON T_LPAREN e= expression T_RPAREN )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:676:5: t= ( T_FORALL | T_EXISTS ) (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* ) T_COLON T_LPAREN e= expression T_RPAREN
             {
-            t=(Token)input.LT(1);
+            t=input.LT(1);
 
             if ( input.LA(1)==T_EXISTS||input.LA(1)==T_FORALL ) {
                 input.consume();
@@ -4994,7 +4549,7 @@
                 state.errorRecovery=false;
             }
             else {
-                MismatchedSetException mse = new MismatchedSetException(null,input);
+                final MismatchedSetException mse = new MismatchedSetException(null,input);
                 throw mse;
             }
 
@@ -5001,17 +4556,17 @@
 
             result = createQuantifierExpression(t);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:736:3: (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:736:4: id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:678:3: (id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:678:4: id= T_IDENTIFIER ( T_COLON id_type= simpleType ) ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )*
             {
-            id=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_quantifierExpression3571); 
+            id=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_quantifierExpression3174);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:736:20: ( T_COLON id_type= simpleType )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:736:21: T_COLON id_type= simpleType
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:678:20: ( T_COLON id_type= simpleType )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:678:21: T_COLON id_type= simpleType
             {
-            match(input,T_COLON,FOLLOW_T_COLON_in_quantifierExpression3574); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_quantifierExpression3177);
 
-            pushFollow(FOLLOW_simpleType_in_quantifierExpression3578);
+            pushFollow(FOLLOW_simpleType_in_quantifierExpression3181);
             id_type=simpleType();
 
             state._fsp--;
@@ -5022,31 +4577,31 @@
             }
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:737:5: ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )*
-            loop77:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:679:5: ( T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType ) )*
+            loop70:
             do {
-                int alt77=2;
-                int LA77_0 = input.LA(1);
+                int alt70=2;
+                final int LA70_0 = input.LA(1);
 
-                if ( (LA77_0==T_COMMA) ) {
-                    alt77=1;
+                if ( (LA70_0==T_COMMA) ) {
+                    alt70=1;
                 }
 
 
-                switch (alt77) {
+                switch (alt70) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:737:6: T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType )
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:679:6: T_COMMA id2= T_IDENTIFIER ( T_COLON id_type2= simpleType )
             	    {
-            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_quantifierExpression3589); 
+            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_quantifierExpression3192);
 
-            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_quantifierExpression3593); 
+            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_quantifierExpression3196);
 
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:737:31: ( T_COLON id_type2= simpleType )
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:737:32: T_COLON id_type2= simpleType
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:679:31: ( T_COLON id_type2= simpleType )
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:679:32: T_COLON id_type2= simpleType
             	    {
-            	    match(input,T_COLON,FOLLOW_T_COLON_in_quantifierExpression3596); 
+            	    match(input,T_COLON,FOLLOW_T_COLON_in_quantifierExpression3199);
 
-            	    pushFollow(FOLLOW_simpleType_in_quantifierExpression3600);
+            	    pushFollow(FOLLOW_simpleType_in_quantifierExpression3203);
             	    id_type2=simpleType();
 
             	    state._fsp--;
@@ -5061,7 +4616,7 @@
             	    break;
 
             	default :
-            	    break loop77;
+            	    break loop70;
                 }
             } while (true);
 
@@ -5069,17 +4624,17 @@
             }
 
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_quantifierExpression3610); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_quantifierExpression3213);
 
-            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_quantifierExpression3612); 
+            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_quantifierExpression3215);
 
-            pushFollow(FOLLOW_expression_in_quantifierExpression3616);
+            pushFollow(FOLLOW_expression_in_quantifierExpression3219);
             e=expression();
 
             state._fsp--;
 
 
-            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_quantifierExpression3618); 
+            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_quantifierExpression3221);
 
             addExpressionToQuantifier(result,e);
 
@@ -5086,7 +4641,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5102,7 +4657,7 @@
 
 
     // $ANTLR start "constant"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:744:1: constant returns [LeafExpression result] : ( T_TRUE | T_FALSE | T_NIL | T_SELF |t_fl= T_FLOATNUMBER |t_in= T_INTNUMBER |t_l= T_STRINGLITERAL );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:686:1: constant returns [LeafExpression result] : ( T_TRUE | T_FALSE | T_NIL | T_SELF |t_fl= T_FLOATNUMBER |t_in= T_INTNUMBER |t_l= T_STRINGLITERAL );
     public final LeafExpression constant() throws RecognitionException {
         LeafExpression result = null;
 
@@ -5113,59 +4668,59 @@
 
 
         		result = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:749:2: ( T_TRUE | T_FALSE | T_NIL | T_SELF |t_fl= T_FLOATNUMBER |t_in= T_INTNUMBER |t_l= T_STRINGLITERAL )
-            int alt78=7;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:691:2: ( T_TRUE | T_FALSE | T_NIL | T_SELF |t_fl= T_FLOATNUMBER |t_in= T_INTNUMBER |t_l= T_STRINGLITERAL )
+            int alt71=7;
             switch ( input.LA(1) ) {
             case T_TRUE:
                 {
-                alt78=1;
+                alt71=1;
                 }
                 break;
             case T_FALSE:
                 {
-                alt78=2;
+                alt71=2;
                 }
                 break;
             case T_NIL:
                 {
-                alt78=3;
+                alt71=3;
                 }
                 break;
             case T_SELF:
                 {
-                alt78=4;
+                alt71=4;
                 }
                 break;
             case T_FLOATNUMBER:
                 {
-                alt78=5;
+                alt71=5;
                 }
                 break;
             case T_INTNUMBER:
                 {
-                alt78=6;
+                alt71=6;
                 }
                 break;
             case T_STRINGLITERAL:
                 {
-                alt78=7;
+                alt71=7;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 78, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 71, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt78) {
+            switch (alt71) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:749:5: T_TRUE
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:691:5: T_TRUE
                     {
-                    match(input,T_TRUE,FOLLOW_T_TRUE_in_constant3652); 
+                    match(input,T_TRUE,FOLLOW_T_TRUE_in_constant3255);
 
                     result = createBoolConstant(true);
 
@@ -5172,9 +4727,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:750:4: T_FALSE
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:692:4: T_FALSE
                     {
-                    match(input,T_FALSE,FOLLOW_T_FALSE_in_constant3660); 
+                    match(input,T_FALSE,FOLLOW_T_FALSE_in_constant3263);
 
                     result = createBoolConstant(false);
 
@@ -5181,9 +4736,9 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:751:4: T_NIL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:693:4: T_NIL
                     {
-                    match(input,T_NIL,FOLLOW_T_NIL_in_constant3667); 
+                    match(input,T_NIL,FOLLOW_T_NIL_in_constant3270);
 
                     result = createNullPointerConstant();
 
@@ -5190,9 +4745,9 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:752:4: T_SELF
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:694:4: T_SELF
                     {
-                    match(input,T_SELF,FOLLOW_T_SELF_in_constant3675); 
+                    match(input,T_SELF,FOLLOW_T_SELF_in_constant3278);
 
                     result = createSelfPointer();
 
@@ -5199,9 +4754,9 @@
                     }
                     break;
                 case 5 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:753:5: t_fl= T_FLOATNUMBER
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:695:5: t_fl= T_FLOATNUMBER
                     {
-                    t_fl=(Token)match(input,T_FLOATNUMBER,FOLLOW_T_FLOATNUMBER_in_constant3686); 
+                    t_fl=(Token)match(input,T_FLOATNUMBER,FOLLOW_T_FLOATNUMBER_in_constant3289);
 
                     result = createFloatConstant(t_fl);
 
@@ -5208,9 +4763,9 @@
                     }
                     break;
                 case 6 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:754:4: t_in= T_INTNUMBER
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:696:4: t_in= T_INTNUMBER
                     {
-                    t_in=(Token)match(input,T_INTNUMBER,FOLLOW_T_INTNUMBER_in_constant3695); 
+                    t_in=(Token)match(input,T_INTNUMBER,FOLLOW_T_INTNUMBER_in_constant3298);
 
                     result = createIntConstant(t_in);
 
@@ -5217,9 +4772,9 @@
                     }
                     break;
                 case 7 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:755:4: t_l= T_STRINGLITERAL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:697:4: t_l= T_STRINGLITERAL
                     {
-                    t_l=(Token)match(input,T_STRINGLITERAL,FOLLOW_T_STRINGLITERAL_in_constant3704); 
+                    t_l=(Token)match(input,T_STRINGLITERAL,FOLLOW_T_STRINGLITERAL_in_constant3307);
 
                     result = createStringConstant(t_l);
 
@@ -5228,7 +4783,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5243,7 +4798,7 @@
 
 
     // $ANTLR start "initializedComplexType"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:758:1: initializedComplexType returns [Expression result] : (res= initializedListType |res= initializedSetType | T_NEW T_LPAREN anid= T_IDENTIFIER ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN ) );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:700:1: initializedComplexType returns [Expression result] : (res= initializedListType |res= initializedSetType | T_NEW T_LPAREN anid= T_IDENTIFIER ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN ) );
     public final Expression initializedComplexType() throws RecognitionException {
         Expression result = null;
 
@@ -5255,39 +4810,39 @@
 
 
         		result = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:763:2: (res= initializedListType |res= initializedSetType | T_NEW T_LPAREN anid= T_IDENTIFIER ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN ) )
-            int alt80=3;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:705:2: (res= initializedListType |res= initializedSetType | T_NEW T_LPAREN anid= T_IDENTIFIER ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN ) )
+            int alt73=3;
             switch ( input.LA(1) ) {
             case T_LSQPAREN:
                 {
-                alt80=1;
+                alt73=1;
                 }
                 break;
             case T_CBRL:
                 {
-                alt80=2;
+                alt73=2;
                 }
                 break;
             case T_NEW:
                 {
-                alt80=3;
+                alt73=3;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 80, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 73, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt80) {
+            switch (alt73) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:763:4: res= initializedListType
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:705:4: res= initializedListType
                     {
-                    pushFollow(FOLLOW_initializedListType_in_initializedComplexType3731);
+                    pushFollow(FOLLOW_initializedListType_in_initializedComplexType3334);
                     res=initializedListType();
 
                     state._fsp--;
@@ -5298,9 +4853,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:764:4: res= initializedSetType
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:706:4: res= initializedSetType
                     {
-                    pushFollow(FOLLOW_initializedSetType_in_initializedComplexType3740);
+                    pushFollow(FOLLOW_initializedSetType_in_initializedComplexType3343);
                     res=initializedSetType();
 
                     state._fsp--;
@@ -5311,40 +4866,40 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:765:5: T_NEW T_LPAREN anid= T_IDENTIFIER ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN )
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:707:5: T_NEW T_LPAREN anid= T_IDENTIFIER ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN )
                     {
-                    match(input,T_NEW,FOLLOW_T_NEW_in_initializedComplexType3748); 
+                    match(input,T_NEW,FOLLOW_T_NEW_in_initializedComplexType3351);
 
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_initializedComplexType3750); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_initializedComplexType3353);
 
-                    anid=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_initializedComplexType3754); 
+                    anid=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_initializedComplexType3357);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:766:4: ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN )
-                    int alt79=2;
-                    int LA79_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:708:4: ( T_COMMA aname= T_STRINGLITERAL T_RPAREN | T_RPAREN )
+                    int alt72=2;
+                    final int LA72_0 = input.LA(1);
 
-                    if ( (LA79_0==T_COMMA) ) {
-                        alt79=1;
+                    if ( (LA72_0==T_COMMA) ) {
+                        alt72=1;
                     }
-                    else if ( (LA79_0==T_RPAREN) ) {
-                        alt79=2;
+                    else if ( (LA72_0==T_RPAREN) ) {
+                        alt72=2;
                     }
                     else {
-                        NoViableAltException nvae =
-                            new NoViableAltException("", 79, 0, input);
+                        final NoViableAltException nvae =
+                            new NoViableAltException("", 72, 0, input);
 
                         throw nvae;
 
                     }
-                    switch (alt79) {
+                    switch (alt72) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:767:5: T_COMMA aname= T_STRINGLITERAL T_RPAREN
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:709:5: T_COMMA aname= T_STRINGLITERAL T_RPAREN
                             {
-                            match(input,T_COMMA,FOLLOW_T_COMMA_in_initializedComplexType3766); 
+                            match(input,T_COMMA,FOLLOW_T_COMMA_in_initializedComplexType3369);
 
-                            aname=(Token)match(input,T_STRINGLITERAL,FOLLOW_T_STRINGLITERAL_in_initializedComplexType3771); 
+                            aname=(Token)match(input,T_STRINGLITERAL,FOLLOW_T_STRINGLITERAL_in_initializedComplexType3374);
 
-                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_initializedComplexType3773); 
+                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_initializedComplexType3376);
 
                             result = createNamedObject(anid, aname);
 
@@ -5351,9 +4906,9 @@
                             }
                             break;
                         case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:768:6: T_RPAREN
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:710:6: T_RPAREN
                             {
-                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_initializedComplexType3782); 
+                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_initializedComplexType3385);
 
                             result = createObject(anid);
 
@@ -5368,7 +4923,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5383,7 +4938,7 @@
 
 
     // $ANTLR start "initializedListType"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:772:1: initializedListType returns [ListConstructor result] : T_LSQPAREN e= expression ( ( T_COMMA e2= expression )+ | listComprehension[result] )? T_RSQPAREN ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:714:1: initializedListType returns [ListConstructor result] : T_LSQPAREN e= expression ( ( T_COMMA e2= expression )+ | listComprehension[result] )? T_RSQPAREN ;
     public final ListConstructor initializedListType() throws RecognitionException {
         ListConstructor result = null;
 
@@ -5396,14 +4951,14 @@
 
         		result = createInitializedList();
         		pushListVarsOnResolveStack(result); // need this here for list comprehension
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:778:2: ( T_LSQPAREN e= expression ( ( T_COMMA e2= expression )+ | listComprehension[result] )? T_RSQPAREN )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:778:4: T_LSQPAREN e= expression ( ( T_COMMA e2= expression )+ | listComprehension[result] )? T_RSQPAREN
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:720:2: ( T_LSQPAREN e= expression ( ( T_COMMA e2= expression )+ | listComprehension[result] )? T_RSQPAREN )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:720:4: T_LSQPAREN e= expression ( ( T_COMMA e2= expression )+ | listComprehension[result] )? T_RSQPAREN
             {
-            match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_initializedListType3813); 
+            match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_initializedListType3416);
 
-            pushFollow(FOLLOW_expression_in_initializedListType3817);
+            pushFollow(FOLLOW_expression_in_initializedListType3420);
             e=expression();
 
             state._fsp--;
@@ -5411,39 +4966,39 @@
 
             addListElement(result,e);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:778:56: ( ( T_COMMA e2= expression )+ | listComprehension[result] )?
-            int alt82=3;
-            int LA82_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:720:56: ( ( T_COMMA e2= expression )+ | listComprehension[result] )?
+            int alt75=3;
+            final int LA75_0 = input.LA(1);
 
-            if ( (LA82_0==T_COMMA) ) {
-                alt82=1;
+            if ( (LA75_0==T_COMMA) ) {
+                alt75=1;
             }
-            else if ( (LA82_0==T_BAR) ) {
-                alt82=2;
+            else if ( (LA75_0==T_BAR) ) {
+                alt75=2;
             }
-            switch (alt82) {
+            switch (alt75) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:779:4: ( T_COMMA e2= expression )+
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:721:4: ( T_COMMA e2= expression )+
                     {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:779:4: ( T_COMMA e2= expression )+
-                    int cnt81=0;
-                    loop81:
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:721:4: ( T_COMMA e2= expression )+
+                    int cnt74=0;
+                    loop74:
                     do {
-                        int alt81=2;
-                        int LA81_0 = input.LA(1);
+                        int alt74=2;
+                        final int LA74_0 = input.LA(1);
 
-                        if ( (LA81_0==T_COMMA) ) {
-                            alt81=1;
+                        if ( (LA74_0==T_COMMA) ) {
+                            alt74=1;
                         }
 
 
-                        switch (alt81) {
+                        switch (alt74) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:779:5: T_COMMA e2= expression
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:721:5: T_COMMA e2= expression
                     	    {
-                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_initializedListType3828); 
+                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_initializedListType3431);
 
-                    	    pushFollow(FOLLOW_expression_in_initializedListType3832);
+                    	    pushFollow(FOLLOW_expression_in_initializedListType3435);
                     	    e2=expression();
 
                     	    state._fsp--;
@@ -5455,12 +5010,12 @@
                     	    break;
 
                     	default :
-                    	    if ( cnt81 >= 1 ) break loop81;
-                                EarlyExitException eee =
-                                    new EarlyExitException(81, input);
+                    	    if ( cnt74 >= 1 ) break loop74;
+                                final EarlyExitException eee =
+                                    new EarlyExitException(74, input);
                                 throw eee;
                         }
-                        cnt81++;
+                        cnt74++;
                     } while (true);
 
 
@@ -5467,9 +5022,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:780:6: listComprehension[result]
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:722:6: listComprehension[result]
                     {
-                    pushFollow(FOLLOW_listComprehension_in_initializedListType3844);
+                    pushFollow(FOLLOW_listComprehension_in_initializedListType3447);
                     listComprehension(result);
 
                     state._fsp--;
@@ -5481,12 +5036,12 @@
             }
 
 
-            match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_initializedListType3852); 
+            match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_initializedListType3455);
 
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5502,33 +5057,33 @@
 
 
     // $ANTLR start "listComprehension"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:786:1: listComprehension[ListConstructor result] : T_BAR T_VAR id= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )* ( '&' e= expression )? ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:728:1: listComprehension[ListConstructor result] : T_BAR T_VAR id= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )* ( '&' e= expression )? ;
     public final void listComprehension(ListConstructor result) throws RecognitionException {
         Token id=null;
         Token id2=null;
-        UlyssesType t1 =null;
+        Type t1 =null;
 
-        UlyssesType t2 =null;
+        Type t2 =null;
 
         Expression e =null;
 
 
-        	
+
         		result.SetHasComprehension(true);
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:790:2: ( T_BAR T_VAR id= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )* ( '&' e= expression )? )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:791:3: T_BAR T_VAR id= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )* ( '&' e= expression )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:732:2: ( T_BAR T_VAR id= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )* ( '&' e= expression )? )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:733:3: T_BAR T_VAR id= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )* ( '&' e= expression )?
             {
-            match(input,T_BAR,FOLLOW_T_BAR_in_listComprehension3883); 
+            match(input,T_BAR,FOLLOW_T_BAR_in_listComprehension3486);
 
-            match(input,T_VAR,FOLLOW_T_VAR_in_listComprehension3885); 
+            match(input,T_VAR,FOLLOW_T_VAR_in_listComprehension3488);
 
-            id=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_listComprehension3891); 
+            id=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_listComprehension3494);
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_listComprehension3894); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_listComprehension3497);
 
-            pushFollow(FOLLOW_complexType_in_listComprehension3898);
+            pushFollow(FOLLOW_complexType_in_listComprehension3501);
             t1=complexType();
 
             state._fsp--;
@@ -5536,26 +5091,26 @@
 
             addListComprVar(result,id,t1);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:793:4: ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )*
-            loop83:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:735:4: ( T_SEMICOLON id2= T_IDENTIFIER t2= complexType )*
+            loop76:
             do {
-                int alt83=2;
-                int LA83_0 = input.LA(1);
+                int alt76=2;
+                final int LA76_0 = input.LA(1);
 
-                if ( (LA83_0==T_SEMICOLON) ) {
-                    alt83=1;
+                if ( (LA76_0==T_SEMICOLON) ) {
+                    alt76=1;
                 }
 
 
-                switch (alt83) {
+                switch (alt76) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:793:5: T_SEMICOLON id2= T_IDENTIFIER t2= complexType
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:735:5: T_SEMICOLON id2= T_IDENTIFIER t2= complexType
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_listComprehension3907); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_listComprehension3510);
 
-            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_listComprehension3911); 
+            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_listComprehension3514);
 
-            	    pushFollow(FOLLOW_complexType_in_listComprehension3916);
+            	    pushFollow(FOLLOW_complexType_in_listComprehension3519);
             	    t2=complexType();
 
             	    state._fsp--;
@@ -5567,25 +5122,25 @@
             	    break;
 
             	default :
-            	    break loop83;
+            	    break loop76;
                 }
             } while (true);
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:794:3: ( '&' e= expression )?
-            int alt84=2;
-            int LA84_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:736:3: ( '&' e= expression )?
+            int alt77=2;
+            final int LA77_0 = input.LA(1);
 
-            if ( (LA84_0==118) ) {
-                alt84=1;
+            if ( (LA77_0==116) ) {
+                alt77=1;
             }
-            switch (alt84) {
+            switch (alt77) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:794:4: '&' e= expression
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:736:4: '&' e= expression
                     {
-                    match(input,118,FOLLOW_118_in_listComprehension3926); 
+                    match(input,116,FOLLOW_116_in_listComprehension3529);
 
-                    pushFollow(FOLLOW_expression_in_listComprehension3932);
+                    pushFollow(FOLLOW_expression_in_listComprehension3535);
                     e=expression();
 
                     state._fsp--;
@@ -5602,7 +5157,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5617,7 +5172,7 @@
 
 
     // $ANTLR start "initializedSetType"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:798:1: initializedSetType returns [Expression result] : ( T_CBRL T_MAPS T_CBRR |res= initializedSet );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:740:1: initializedSetType returns [Expression result] : ( T_CBRL T_MAPS T_CBRR |res= initializedSet );
     public final Expression initializedSetType() throws RecognitionException {
         Expression result = null;
 
@@ -5627,24 +5182,24 @@
 
 
         		result = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:803:2: ( T_CBRL T_MAPS T_CBRR |res= initializedSet )
-            int alt85=2;
-            int LA85_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:745:2: ( T_CBRL T_MAPS T_CBRR |res= initializedSet )
+            int alt78=2;
+            final int LA78_0 = input.LA(1);
 
-            if ( (LA85_0==T_CBRL) ) {
-                int LA85_1 = input.LA(2);
+            if ( (LA78_0==T_CBRL) ) {
+                final int LA78_1 = input.LA(2);
 
-                if ( (LA85_1==T_MAPS) ) {
-                    alt85=1;
+                if ( (LA78_1==T_MAPS) ) {
+                    alt78=1;
                 }
-                else if ( (LA85_1==T_ABS||(LA85_1 >= T_CARD && LA85_1 <= T_CBRL)||LA85_1==T_DCONC||LA85_1==T_DINTER||LA85_1==T_DOM||(LA85_1 >= T_DUNION && LA85_1 <= T_ELEMS)||(LA85_1 >= T_EXISTS && LA85_1 <= T_FALSE)||LA85_1==T_FLOATNUMBER||LA85_1==T_FORALL||(LA85_1 >= T_HEAD && LA85_1 <= T_IDENTIFIER)||LA85_1==T_IF||LA85_1==T_INDS||LA85_1==T_INTNUMBER||LA85_1==T_LEN||(LA85_1 >= T_LPAREN && LA85_1 <= T_LSQPAREN)||LA85_1==T_MERGE||LA85_1==T_MINUS||(LA85_1 >= T_NEW && LA85_1 <= T_NIL)||LA85_1==T_NOT||LA85_1==T_RNG||LA85_1==T_SELF||LA85_1==T_STRINGLITERAL||LA85_1==T_TAIL||LA85_1==T_TRUE||LA85_1==125) ) {
-                    alt85=2;
+                else if ( (LA78_1==T_ABS||(LA78_1 >= T_CARD && LA78_1 <= T_CBRL)||LA78_1==T_DCONC||LA78_1==T_DINTER||LA78_1==T_DOM||(LA78_1 >= T_DUNION && LA78_1 <= T_ELEMS)||(LA78_1 >= T_EXISTS && LA78_1 <= T_FALSE)||LA78_1==T_FLOATNUMBER||LA78_1==T_FORALL||(LA78_1 >= T_HEAD && LA78_1 <= T_IDENTIFIER)||LA78_1==T_IF||LA78_1==T_INDS||LA78_1==T_INTNUMBER||LA78_1==T_LEN||(LA78_1 >= T_LPAREN && LA78_1 <= T_LSQPAREN)||LA78_1==T_MERGE||LA78_1==T_MINUS||(LA78_1 >= T_NEW && LA78_1 <= T_NIL)||LA78_1==T_NOT||LA78_1==T_RNG||LA78_1==T_SELF||LA78_1==T_STRINGLITERAL||LA78_1==T_TAIL||LA78_1==T_TRUE) ) {
+                    alt78=2;
                 }
                 else {
-                    NoViableAltException nvae =
-                        new NoViableAltException("", 85, 1, input);
+                    final NoViableAltException nvae =
+                        new NoViableAltException("", 78, 1, input);
 
                     throw nvae;
 
@@ -5651,21 +5206,21 @@
                 }
             }
             else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 85, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 78, 0, input);
 
                 throw nvae;
 
             }
-            switch (alt85) {
+            switch (alt78) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:803:4: T_CBRL T_MAPS T_CBRR
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:745:4: T_CBRL T_MAPS T_CBRR
                     {
-                    match(input,T_CBRL,FOLLOW_T_CBRL_in_initializedSetType3958); 
+                    match(input,T_CBRL,FOLLOW_T_CBRL_in_initializedSetType3561);
 
-                    match(input,T_MAPS,FOLLOW_T_MAPS_in_initializedSetType3960); 
+                    match(input,T_MAPS,FOLLOW_T_MAPS_in_initializedSetType3563);
 
-                    match(input,T_CBRR,FOLLOW_T_CBRR_in_initializedSetType3962); 
+                    match(input,T_CBRR,FOLLOW_T_CBRR_in_initializedSetType3565);
 
                     result = createEmptyMap();
 
@@ -5672,9 +5227,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:804:4: res= initializedSet
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:746:4: res= initializedSet
                     {
-                    pushFollow(FOLLOW_initializedSet_in_initializedSetType3973);
+                    pushFollow(FOLLOW_initializedSet_in_initializedSetType3576);
                     res=initializedSet();
 
                     state._fsp--;
@@ -5687,7 +5242,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5702,7 +5257,7 @@
 
 
     // $ANTLR start "initializedSet"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:807:1: initializedSet returns [Expression result] : T_CBRL e1= expression ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] ) T_CBRR ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:749:1: initializedSet returns [Expression result] : T_CBRL e1= expression ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] ) T_CBRR ;
     public final Expression initializedSet() throws RecognitionException {
         Expression result = null;
 
@@ -5715,73 +5270,73 @@
 
 
 
-        		SetConstructor theset = createSet(); 
+        		final SetConstructor theset = createSet();
         		pushSetVarsOnResolveStack(theset); // need this here for set comprehension
         		result = theset;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:814:2: ( T_CBRL e1= expression ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] ) T_CBRR )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:814:4: T_CBRL e1= expression ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] ) T_CBRR
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:756:2: ( T_CBRL e1= expression ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] ) T_CBRR )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:756:4: T_CBRL e1= expression ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] ) T_CBRR
             {
-            match(input,T_CBRL,FOLLOW_T_CBRL_in_initializedSet3999); 
+            match(input,T_CBRL,FOLLOW_T_CBRL_in_initializedSet3602);
 
-            pushFollow(FOLLOW_expression_in_initializedSet4003);
+            pushFollow(FOLLOW_expression_in_initializedSet3606);
             e1=expression();
 
             state._fsp--;
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:815:10: ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] )
-            int alt87=3;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:757:10: ( ( T_COMMA e2= expression )* |m= map[result, e1] | setComprehension[(SetConstructor)result] )
+            int alt80=3;
             switch ( input.LA(1) ) {
             case T_CBRR:
             case T_COMMA:
                 {
-                alt87=1;
+                alt80=1;
                 }
                 break;
             case T_MAPS:
                 {
-                alt87=2;
+                alt80=2;
                 }
                 break;
             case T_BAR:
                 {
-                alt87=3;
+                alt80=3;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 87, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 80, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt87) {
+            switch (alt80) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:816:4: ( T_COMMA e2= expression )*
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:758:4: ( T_COMMA e2= expression )*
                     {
                     addToSet(result,e1);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:817:4: ( T_COMMA e2= expression )*
-                    loop86:
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:759:4: ( T_COMMA e2= expression )*
+                    loop79:
                     do {
-                        int alt86=2;
-                        int LA86_0 = input.LA(1);
+                        int alt79=2;
+                        final int LA79_0 = input.LA(1);
 
-                        if ( (LA86_0==T_COMMA) ) {
-                            alt86=1;
+                        if ( (LA79_0==T_COMMA) ) {
+                            alt79=1;
                         }
 
 
-                        switch (alt86) {
+                        switch (alt79) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:817:5: T_COMMA e2= expression
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:759:5: T_COMMA e2= expression
                     	    {
-                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_initializedSet4033); 
+                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_initializedSet3636);
 
-                    	    pushFollow(FOLLOW_expression_in_initializedSet4037);
+                    	    pushFollow(FOLLOW_expression_in_initializedSet3640);
                     	    e2=expression();
 
                     	    state._fsp--;
@@ -5793,7 +5348,7 @@
                     	    break;
 
                     	default :
-                    	    break loop86;
+                    	    break loop79;
                         }
                     } while (true);
 
@@ -5801,9 +5356,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:818:6: m= map[result, e1]
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:760:6: m= map[result, e1]
                     {
-                    pushFollow(FOLLOW_map_in_initializedSet4055);
+                    pushFollow(FOLLOW_map_in_initializedSet3658);
                     m=map(result, e1);
 
                     state._fsp--;
@@ -5814,11 +5369,11 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:819:5: setComprehension[(SetConstructor)result]
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:761:5: setComprehension[(SetConstructor)result]
                     {
                     addToSet(result,e1);
 
-                    pushFollow(FOLLOW_setComprehension_in_initializedSet4068);
+                    pushFollow(FOLLOW_setComprehension_in_initializedSet3671);
                     setComprehension((SetConstructor)result);
 
                     state._fsp--;
@@ -5830,12 +5385,12 @@
             }
 
 
-            match(input,T_CBRR,FOLLOW_T_CBRR_in_initializedSet4078); 
+            match(input,T_CBRR,FOLLOW_T_CBRR_in_initializedSet3681);
 
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5851,7 +5406,7 @@
 
 
     // $ANTLR start "map"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:825:1: map[Expression _map, Expression e1] returns [Expression result] : am= T_MAPS e2= expression ( T_COMMA e3= expression T_MAPS e4= expression )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:767:1: map[Expression _map, Expression e1] returns [Expression result] : am= T_MAPS e2= expression ( T_COMMA e3= expression T_MAPS e4= expression )* ;
     public final Expression map(Expression _map, Expression e1) throws RecognitionException {
         Expression result = null;
 
@@ -5866,14 +5421,14 @@
 
 
         		result = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:830:2: (am= T_MAPS e2= expression ( T_COMMA e3= expression T_MAPS e4= expression )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:830:4: am= T_MAPS e2= expression ( T_COMMA e3= expression T_MAPS e4= expression )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:772:2: (am= T_MAPS e2= expression ( T_COMMA e3= expression T_MAPS e4= expression )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:772:4: am= T_MAPS e2= expression ( T_COMMA e3= expression T_MAPS e4= expression )*
             {
-            am=(Token)match(input,T_MAPS,FOLLOW_T_MAPS_in_map4114); 
+            am=(Token)match(input,T_MAPS,FOLLOW_T_MAPS_in_map3717);
 
-            pushFollow(FOLLOW_expression_in_map4118);
+            pushFollow(FOLLOW_expression_in_map3721);
             e2=expression();
 
             state._fsp--;
@@ -5881,32 +5436,32 @@
 
             result = createMap(e1,e2,am);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:830:63: ( T_COMMA e3= expression T_MAPS e4= expression )*
-            loop88:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:772:63: ( T_COMMA e3= expression T_MAPS e4= expression )*
+            loop81:
             do {
-                int alt88=2;
-                int LA88_0 = input.LA(1);
+                int alt81=2;
+                final int LA81_0 = input.LA(1);
 
-                if ( (LA88_0==T_COMMA) ) {
-                    alt88=1;
+                if ( (LA81_0==T_COMMA) ) {
+                    alt81=1;
                 }
 
 
-                switch (alt88) {
+                switch (alt81) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:830:64: T_COMMA e3= expression T_MAPS e4= expression
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:772:64: T_COMMA e3= expression T_MAPS e4= expression
             	    {
-            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_map4126); 
+            	    match(input,T_COMMA,FOLLOW_T_COMMA_in_map3729);
 
-            	    pushFollow(FOLLOW_expression_in_map4130);
+            	    pushFollow(FOLLOW_expression_in_map3733);
             	    e3=expression();
 
             	    state._fsp--;
 
 
-            	    match(input,T_MAPS,FOLLOW_T_MAPS_in_map4132); 
+            	    match(input,T_MAPS,FOLLOW_T_MAPS_in_map3735);
 
-            	    pushFollow(FOLLOW_expression_in_map4136);
+            	    pushFollow(FOLLOW_expression_in_map3739);
             	    e4=expression();
 
             	    state._fsp--;
@@ -5918,7 +5473,7 @@
             	    break;
 
             	default :
-            	    break loop88;
+            	    break loop81;
                 }
             } while (true);
 
@@ -5926,7 +5481,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -5941,13 +5496,13 @@
 
 
     // $ANTLR start "setComprehension"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:833:1: setComprehension[SetConstructor _set] : T_BAR T_VAR id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ( '&' epx= expression )? ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:775:1: setComprehension[SetConstructor _set] : T_BAR T_VAR id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ( '&' epx= expression )? ;
     public final void setComprehension(SetConstructor _set) throws RecognitionException {
         Token id1=null;
         Token id2=null;
-        UlyssesType t1 =null;
+        Type t1 =null;
 
-        UlyssesType t2 =null;
+        Type t2 =null;
 
         Expression epx =null;
 
@@ -5954,85 +5509,85 @@
 
 
         		_set.SetHasComprehension(true);
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:837:2: ( T_BAR T_VAR id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ( '&' epx= expression )? )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:837:4: T_BAR T_VAR id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ( '&' epx= expression )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:779:2: ( T_BAR T_VAR id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ( '&' epx= expression )? )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:779:4: T_BAR T_VAR id1= T_IDENTIFIER T_COLON t1= complexType ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )* ( '&' epx= expression )?
             {
-            match(input,T_BAR,FOLLOW_T_BAR_in_setComprehension4158); 
+            match(input,T_BAR,FOLLOW_T_BAR_in_setComprehension3761);
 
-            match(input,T_VAR,FOLLOW_T_VAR_in_setComprehension4160); 
+            match(input,T_VAR,FOLLOW_T_VAR_in_setComprehension3763);
 
-            id1=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_setComprehension4164); 
+            id1=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_setComprehension3767);
 
-            match(input,T_COLON,FOLLOW_T_COLON_in_setComprehension4167); 
+            match(input,T_COLON,FOLLOW_T_COLON_in_setComprehension3770);
 
-            pushFollow(FOLLOW_complexType_in_setComprehension4171);
+            pushFollow(FOLLOW_complexType_in_setComprehension3774);
             t1=complexType();
 
             state._fsp--;
 
 
-             addSetComprVar(_set, id1, t1); 
+             addSetComprVar(_set, id1, t1);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:839:3: ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )*
-            loop89:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:781:3: ( T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType )*
+            loop82:
             do {
-                int alt89=2;
-                int LA89_0 = input.LA(1);
+                int alt82=2;
+                final int LA82_0 = input.LA(1);
 
-                if ( (LA89_0==T_SEMICOLON) ) {
-                    alt89=1;
+                if ( (LA82_0==T_SEMICOLON) ) {
+                    alt82=1;
                 }
 
 
-                switch (alt89) {
+                switch (alt82) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:839:4: T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:781:4: T_SEMICOLON id2= T_IDENTIFIER T_COLON t2= complexType
             	    {
-            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_setComprehension4181); 
+            	    match(input,T_SEMICOLON,FOLLOW_T_SEMICOLON_in_setComprehension3784);
 
-            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_setComprehension4185); 
+            	    id2=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_setComprehension3788);
 
-            	    match(input,T_COLON,FOLLOW_T_COLON_in_setComprehension4187); 
+            	    match(input,T_COLON,FOLLOW_T_COLON_in_setComprehension3790);
 
-            	    pushFollow(FOLLOW_complexType_in_setComprehension4191);
+            	    pushFollow(FOLLOW_complexType_in_setComprehension3794);
             	    t2=complexType();
 
             	    state._fsp--;
 
 
-            	     addSetComprVar(_set, id2, t2); 
+            	     addSetComprVar(_set, id2, t2);
 
             	    }
             	    break;
 
             	default :
-            	    break loop89;
+            	    break loop82;
                 }
             } while (true);
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:841:3: ( '&' epx= expression )?
-            int alt90=2;
-            int LA90_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:783:3: ( '&' epx= expression )?
+            int alt83=2;
+            final int LA83_0 = input.LA(1);
 
-            if ( (LA90_0==118) ) {
-                alt90=1;
+            if ( (LA83_0==116) ) {
+                alt83=1;
             }
-            switch (alt90) {
+            switch (alt83) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:841:4: '&' epx= expression
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:783:4: '&' epx= expression
                     {
-                    match(input,118,FOLLOW_118_in_setComprehension4205); 
+                    match(input,116,FOLLOW_116_in_setComprehension3808);
 
-                    pushFollow(FOLLOW_expression_in_setComprehension4211);
+                    pushFollow(FOLLOW_expression_in_setComprehension3814);
                     epx=expression();
 
                     state._fsp--;
 
 
-                     addSetComprExpr(_set,epx); 
+                     addSetComprExpr(_set,epx);
 
                     }
                     break;
@@ -6043,7 +5598,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -6057,313 +5612,8 @@
 
 
 
-    // $ANTLR start "qvalExpression"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:847:1: qvalExpression returns [QValConstructor result] : aval= 'qval' T_LPAREN ( T_NIL | (expr= qualifiedIdentifier | ( '-' )? T_INFTY ) ( T_RANGETO (expr2= qualifiedIdentifier | T_INFTY ) )? ) T_COMMA ( T_NIL | ( 'steady' | 'inc' | 'dec' ) ) T_RPAREN ;
-    public final QValConstructor qvalExpression() throws RecognitionException {
-        QValConstructor result = null;
-
-
-        Token aval=null;
-        Expression expr =null;
-
-        Expression expr2 =null;
-
-
-
-        		boolean minus = false;
-        		result = null;		
-        	
-        try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:853:2: (aval= 'qval' T_LPAREN ( T_NIL | (expr= qualifiedIdentifier | ( '-' )? T_INFTY ) ( T_RANGETO (expr2= qualifiedIdentifier | T_INFTY ) )? ) T_COMMA ( T_NIL | ( 'steady' | 'inc' | 'dec' ) ) T_RPAREN )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:854:3: aval= 'qval' T_LPAREN ( T_NIL | (expr= qualifiedIdentifier | ( '-' )? T_INFTY ) ( T_RANGETO (expr2= qualifiedIdentifier | T_INFTY ) )? ) T_COMMA ( T_NIL | ( 'steady' | 'inc' | 'dec' ) ) T_RPAREN
-            {
-            aval=(Token)match(input,125,FOLLOW_125_in_qvalExpression4246); 
-
-            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_qvalExpression4248); 
-
-            result = createQualitativeValue(aval);
-
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:856:3: ( T_NIL | (expr= qualifiedIdentifier | ( '-' )? T_INFTY ) ( T_RANGETO (expr2= qualifiedIdentifier | T_INFTY ) )? )
-            int alt95=2;
-            int LA95_0 = input.LA(1);
-
-            if ( (LA95_0==T_NIL) ) {
-                alt95=1;
-            }
-            else if ( (LA95_0==T_IDENTIFIER||LA95_0==T_INFTY||LA95_0==T_MINUS||LA95_0==T_SELF) ) {
-                alt95=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 95, 0, input);
-
-                throw nvae;
-
-            }
-            switch (alt95) {
-                case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:857:4: T_NIL
-                    {
-                    match(input,T_NIL,FOLLOW_T_NIL_in_qvalExpression4262); 
-
-                    setQualitativeValueDontCare(result);
-
-                    }
-                    break;
-                case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:860:4: (expr= qualifiedIdentifier | ( '-' )? T_INFTY ) ( T_RANGETO (expr2= qualifiedIdentifier | T_INFTY ) )?
-                    {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:860:4: (expr= qualifiedIdentifier | ( '-' )? T_INFTY )
-                    int alt92=2;
-                    int LA92_0 = input.LA(1);
-
-                    if ( (LA92_0==T_IDENTIFIER||LA92_0==T_SELF) ) {
-                        alt92=1;
-                    }
-                    else if ( (LA92_0==T_INFTY||LA92_0==T_MINUS) ) {
-                        alt92=2;
-                    }
-                    else {
-                        NoViableAltException nvae =
-                            new NoViableAltException("", 92, 0, input);
-
-                        throw nvae;
-
-                    }
-                    switch (alt92) {
-                        case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:860:6: expr= qualifiedIdentifier
-                            {
-                            pushFollow(FOLLOW_qualifiedIdentifier_in_qvalExpression4283);
-                            expr=qualifiedIdentifier();
-
-                            state._fsp--;
-
-
-                            setQualitativeValueLandmark(result,expr);
-
-                            }
-                            break;
-                        case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:863:5: ( '-' )? T_INFTY
-                            {
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:863:5: ( '-' )?
-                            int alt91=2;
-                            int LA91_0 = input.LA(1);
-
-                            if ( (LA91_0==T_MINUS) ) {
-                                alt91=1;
-                            }
-                            switch (alt91) {
-                                case 1 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:863:6: '-'
-                                    {
-                                    match(input,T_MINUS,FOLLOW_T_MINUS_in_qvalExpression4302); 
-
-                                    minus = true;
-
-                                    }
-                                    break;
-
-                            }
-
-
-                            match(input,T_INFTY,FOLLOW_T_INFTY_in_qvalExpression4308); 
-
-                            setQualitativeValueInfinity(result,minus);
-
-                            }
-                            break;
-
-                    }
-
-
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:866:4: ( T_RANGETO (expr2= qualifiedIdentifier | T_INFTY ) )?
-                    int alt94=2;
-                    int LA94_0 = input.LA(1);
-
-                    if ( (LA94_0==T_RANGETO) ) {
-                        alt94=1;
-                    }
-                    switch (alt94) {
-                        case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:866:5: T_RANGETO (expr2= qualifiedIdentifier | T_INFTY )
-                            {
-                            match(input,T_RANGETO,FOLLOW_T_RANGETO_in_qvalExpression4326); 
-
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:867:4: (expr2= qualifiedIdentifier | T_INFTY )
-                            int alt93=2;
-                            int LA93_0 = input.LA(1);
-
-                            if ( (LA93_0==T_IDENTIFIER||LA93_0==T_SELF) ) {
-                                alt93=1;
-                            }
-                            else if ( (LA93_0==T_INFTY) ) {
-                                alt93=2;
-                            }
-                            else {
-                                NoViableAltException nvae =
-                                    new NoViableAltException("", 93, 0, input);
-
-                                throw nvae;
-
-                            }
-                            switch (alt93) {
-                                case 1 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:867:6: expr2= qualifiedIdentifier
-                                    {
-                                    pushFollow(FOLLOW_qualifiedIdentifier_in_qvalExpression4336);
-                                    expr2=qualifiedIdentifier();
-
-                                    state._fsp--;
-
-
-                                    setQualitativeValueRange(result,expr2);
-
-                                    }
-                                    break;
-                                case 2 :
-                                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:870:5: T_INFTY
-                                    {
-                                    match(input,T_INFTY,FOLLOW_T_INFTY_in_qvalExpression4354); 
-
-                                    setQualitativeValueRangeInfinity(result,false);
-
-                                    }
-                                    break;
-
-                            }
-
-
-                            }
-                            break;
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
-
-            match(input,T_COMMA,FOLLOW_T_COMMA_in_qvalExpression4378); 
-
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:875:3: ( T_NIL | ( 'steady' | 'inc' | 'dec' ) )
-            int alt97=2;
-            int LA97_0 = input.LA(1);
-
-            if ( (LA97_0==T_NIL) ) {
-                alt97=1;
-            }
-            else if ( ((LA97_0 >= 123 && LA97_0 <= 124)||LA97_0==126) ) {
-                alt97=2;
-            }
-            else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 97, 0, input);
-
-                throw nvae;
-
-            }
-            switch (alt97) {
-                case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:876:4: T_NIL
-                    {
-                    match(input,T_NIL,FOLLOW_T_NIL_in_qvalExpression4388); 
-
-                    setQualitativeDerivDontCare(result);
-
-                    }
-                    break;
-                case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:879:4: ( 'steady' | 'inc' | 'dec' )
-                    {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:879:4: ( 'steady' | 'inc' | 'dec' )
-                    int alt96=3;
-                    switch ( input.LA(1) ) {
-                    case 126:
-                        {
-                        alt96=1;
-                        }
-                        break;
-                    case 124:
-                        {
-                        alt96=2;
-                        }
-                        break;
-                    case 123:
-                        {
-                        alt96=3;
-                        }
-                        break;
-                    default:
-                        NoViableAltException nvae =
-                            new NoViableAltException("", 96, 0, input);
-
-                        throw nvae;
-
-                    }
-
-                    switch (alt96) {
-                        case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:879:6: 'steady'
-                            {
-                            match(input,126,FOLLOW_126_in_qvalExpression4404); 
-
-                            setQualitativeDerivSteady(result);
-
-                            }
-                            break;
-                        case 2 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:881:6: 'inc'
-                            {
-                            match(input,124,FOLLOW_124_in_qvalExpression4417); 
-
-                            setQualitativeDerivInc(result);
-
-                            }
-                            break;
-                        case 3 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:883:6: 'dec'
-                            {
-                            match(input,123,FOLLOW_123_in_qvalExpression4430); 
-
-                            setQualitativeDerivDec(result);
-
-                            }
-                            break;
-
-                    }
-
-
-                    }
-                    break;
-
-            }
-
-
-            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_qvalExpression4452); 
-
-            }
-
-        }
-        catch (RecognitionException re) {
-            reportError(re);
-            recover(input,re);
-        }
-
-        finally {
-        	// do for sure before leaving
-        }
-        return result;
-    }
-    // $ANTLR end "qvalExpression"
-
-
-
     // $ANTLR start "identifierExpression"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:891:1: identifierExpression returns [Expression result] : ({...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN |res= reference );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:788:1: identifierExpression returns [Expression result] : ({...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN |res= reference );
     public final Expression identifierExpression() throws RecognitionException {
         Expression result = null;
 
@@ -6375,28 +5625,28 @@
 
 
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:893:2: ({...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN |res= reference )
-            int alt98=2;
-            alt98 = dfa98.predict(input);
-            switch (alt98) {
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:790:2: ({...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN |res= reference )
+            int alt84=2;
+            alt84 = dfa84.predict(input);
+            switch (alt84) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:894:3: {...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:791:3: {...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN
                     {
                     if ( !((isTuple(input.LT(1).getText()))) ) {
                         throw new FailedPredicateException(input, "identifierExpression", "isTuple(input.LT(1).getText())");
                     }
 
-                    aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_identifierExpression4485); 
+                    aName=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_identifierExpression3850);
 
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_identifierExpression4487); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_identifierExpression3852);
 
-                    pushFollow(FOLLOW_methodCallParams_in_identifierExpression4491);
+                    pushFollow(FOLLOW_methodCallParams_in_identifierExpression3856);
                     m_params=methodCallParams();
 
                     state._fsp--;
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_identifierExpression4493); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_identifierExpression3858);
 
                     result = createInitializedTuple(aName,m_params);
 
@@ -6403,9 +5653,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:898:3: res= reference
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:795:3: res= reference
                     {
-                    pushFollow(FOLLOW_reference_in_identifierExpression4508);
+                    pushFollow(FOLLOW_reference_in_identifierExpression3873);
                     res=reference();
 
                     state._fsp--;
@@ -6418,7 +5668,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -6433,7 +5683,7 @@
 
 
     // $ANTLR start "reference"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:903:1: reference returns [Expression result] :{...}?aName= qualifiedIdentifier (output= accessExpression[result] |) (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )? ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:800:1: reference returns [Expression result] :{...}?aName= qualifiedIdentifier (output= accessExpression[result] |) (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )? ;
     public final Expression reference() throws RecognitionException {
         Expression result = null;
 
@@ -6452,16 +5702,16 @@
 
         		result = null;
         		init = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:909:2: ({...}?aName= qualifiedIdentifier (output= accessExpression[result] |) (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )? )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:909:4: {...}?aName= qualifiedIdentifier (output= accessExpression[result] |) (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:806:2: ({...}?aName= qualifiedIdentifier (output= accessExpression[result] |) (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )? )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:806:4: {...}?aName= qualifiedIdentifier (output= accessExpression[result] |) (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )?
             {
             if ( !((!isTuple(input.LT(1).getText()))) ) {
                 throw new FailedPredicateException(input, "reference", "!isTuple(input.LT(1).getText())");
             }
 
-            pushFollow(FOLLOW_qualifiedIdentifier_in_reference4546);
+            pushFollow(FOLLOW_qualifiedIdentifier_in_reference3911);
             aName=qualifiedIdentifier();
 
             state._fsp--;
@@ -6469,28 +5719,28 @@
 
             result = aName;
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:911:3: (output= accessExpression[result] |)
-            int alt99=2;
-            int LA99_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:808:3: (output= accessExpression[result] |)
+            int alt85=2;
+            final int LA85_0 = input.LA(1);
 
-            if ( ((LA99_0 >= T_LPAREN && LA99_0 <= T_LSQPAREN)) ) {
-                alt99=1;
+            if ( ((LA85_0 >= T_LPAREN && LA85_0 <= T_LSQPAREN)) ) {
+                alt85=1;
             }
-            else if ( ((LA99_0 >= T_ACTIONS && LA99_0 <= T_ASSIGNMENT)||(LA99_0 >= T_BAR && LA99_0 <= T_BIIMPLIES)||LA99_0==T_CBRR||(LA99_0 >= T_COLON && LA99_0 <= T_COMMA)||LA99_0==T_CONC||LA99_0==T_DIFF||(LA99_0 >= T_DIV && LA99_0 <= T_DO)||(LA99_0 >= T_DOMRESBY && LA99_0 <= T_DOMRESTO)||(LA99_0 >= T_ELSE && LA99_0 <= T_EQUAL)||(LA99_0 >= T_FOLDLR && LA99_0 <= T_FOLDRL)||(LA99_0 >= T_GREATER && LA99_0 <= T_GREATEREQUAL)||LA99_0==T_IDIV||(LA99_0 >= T_IMPLIES && LA99_0 <= T_IN)||LA99_0==T_INTER||(LA99_0 >= T_LESS && LA99_0 <= T_LESSEQUAL)||LA99_0==T_MAPS||(LA99_0 >= T_METHODS && LA99_0 <= T_MUNION)||(LA99_0 >= T_NONDET && LA99_0 <= T_NOTEQUAL)||LA99_0==T_OR||(LA99_0 >= T_POW && LA99_0 <= T_PROD)||(LA99_0 >= T_RNGRESBY && LA99_0 <= T_RSQPAREN)||(LA99_0 >= T_SEMICOLON && LA99_0 <= T_SEQMOD_MAPOVERRIDE)||(LA99_0 >= T_SUBSET && LA99_0 <= T_SUM)||LA99_0==T_THEN||(LA99_0 >= T_TYPES && LA99_0 <= T_UNION)||LA99_0==T_WITH||(LA99_0 >= 119 && LA99_0 <= 121)) ) {
-                alt99=2;
+            else if ( ((LA85_0 >= T_ACTIONS && LA85_0 <= T_ASSIGNMENT)||(LA85_0 >= T_BAR && LA85_0 <= T_BIIMPLIES)||LA85_0==T_CBRR||(LA85_0 >= T_COLON && LA85_0 <= T_COMMA)||LA85_0==T_CONC||LA85_0==T_DIFF||(LA85_0 >= T_DIV && LA85_0 <= T_DO)||(LA85_0 >= T_DOMRESBY && LA85_0 <= T_DOMRESTO)||(LA85_0 >= T_ELSE && LA85_0 <= T_EQUAL)||(LA85_0 >= T_FOLDLR && LA85_0 <= T_FOLDRL)||(LA85_0 >= T_GREATER && LA85_0 <= T_GREATEREQUAL)||LA85_0==T_IDIV||(LA85_0 >= T_IMPLIES && LA85_0 <= T_IN)||LA85_0==T_INTER||(LA85_0 >= T_LESS && LA85_0 <= T_LESSEQUAL)||LA85_0==T_MAPS||(LA85_0 >= T_METHODS && LA85_0 <= T_MUNION)||(LA85_0 >= T_NONDET && LA85_0 <= T_NOTEQUAL)||LA85_0==T_OR||(LA85_0 >= T_POW && LA85_0 <= T_PROD)||(LA85_0 >= T_RNGRESBY && LA85_0 <= T_RSQPAREN)||(LA85_0 >= T_SEMICOLON && LA85_0 <= T_SEQMOD_MAPOVERRIDE)||(LA85_0 >= T_SUBSET && LA85_0 <= T_SUM)||LA85_0==T_THEN||(LA85_0 >= T_TYPES && LA85_0 <= T_UNION)||LA85_0==T_WITH||(LA85_0 >= 117 && LA85_0 <= 119)) ) {
+                alt85=2;
             }
             else {
-                NoViableAltException nvae =
-                    new NoViableAltException("", 99, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 85, 0, input);
 
                 throw nvae;
 
             }
-            switch (alt99) {
+            switch (alt85) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:911:5: output= accessExpression[result]
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:808:5: output= accessExpression[result]
                     {
-                    pushFollow(FOLLOW_accessExpression_in_reference4558);
+                    pushFollow(FOLLOW_accessExpression_in_reference3923);
                     output=accessExpression(result);
 
                     state._fsp--;
@@ -6501,7 +5751,7 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:914:3: 
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:811:3:
                     {
                     }
                     break;
@@ -6509,21 +5759,21 @@
             }
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:915:3: (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )?
-            int alt101=3;
-            int LA101_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:812:3: (pr= T_PRIMED | ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN )?
+            int alt87=3;
+            final int LA87_0 = input.LA(1);
 
-            if ( (LA101_0==T_PRIMED) ) {
-                alt101=1;
+            if ( (LA87_0==T_PRIMED) ) {
+                alt87=1;
             }
-            else if ( ((LA101_0 >= T_FOLDLR && LA101_0 <= T_FOLDRL)||LA101_0==119) ) {
-                alt101=2;
+            else if ( ((LA87_0 >= T_FOLDLR && LA87_0 <= T_FOLDRL)||LA87_0==117) ) {
+                alt87=2;
             }
-            switch (alt101) {
+            switch (alt87) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:915:6: pr= T_PRIMED
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:812:6: pr= T_PRIMED
                     {
-                    pr=(Token)match(input,T_PRIMED,FOLLOW_T_PRIMED_in_reference4583); 
+                    pr=(Token)match(input,T_PRIMED,FOLLOW_T_PRIMED_in_reference3948);
 
                     result = setIdentifierExpressionPrimed(result,pr);
 
@@ -6530,30 +5780,30 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:917:5: ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:814:5: ( '::' T_LPAREN init= expression T_RPAREN )? afold= ( T_FOLDLR | T_FOLDRL ) T_LPAREN anexpr= expression T_RPAREN
                     {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:917:5: ( '::' T_LPAREN init= expression T_RPAREN )?
-                    int alt100=2;
-                    int LA100_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:814:5: ( '::' T_LPAREN init= expression T_RPAREN )?
+                    int alt86=2;
+                    final int LA86_0 = input.LA(1);
 
-                    if ( (LA100_0==119) ) {
-                        alt100=1;
+                    if ( (LA86_0==117) ) {
+                        alt86=1;
                     }
-                    switch (alt100) {
+                    switch (alt86) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:917:6: '::' T_LPAREN init= expression T_RPAREN
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:814:6: '::' T_LPAREN init= expression T_RPAREN
                             {
-                            match(input,119,FOLLOW_119_in_reference4599); 
+                            match(input,117,FOLLOW_117_in_reference3964);
 
-                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_reference4601); 
+                            match(input,T_LPAREN,FOLLOW_T_LPAREN_in_reference3966);
 
-                            pushFollow(FOLLOW_expression_in_reference4605);
+                            pushFollow(FOLLOW_expression_in_reference3970);
                             init=expression();
 
                             state._fsp--;
 
 
-                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_reference4607); 
+                            match(input,T_RPAREN,FOLLOW_T_RPAREN_in_reference3972);
 
                             }
                             break;
@@ -6561,7 +5811,7 @@
                     }
 
 
-                    afold=(Token)input.LT(1);
+                    afold=input.LT(1);
 
                     if ( (input.LA(1) >= T_FOLDLR && input.LA(1) <= T_FOLDRL) ) {
                         input.consume();
@@ -6568,20 +5818,20 @@
                         state.errorRecovery=false;
                     }
                     else {
-                        MismatchedSetException mse = new MismatchedSetException(null,input);
+                        final MismatchedSetException mse = new MismatchedSetException(null,input);
                         throw mse;
                     }
 
 
-                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_reference4619); 
+                    match(input,T_LPAREN,FOLLOW_T_LPAREN_in_reference3984);
 
-                    pushFollow(FOLLOW_expression_in_reference4623);
+                    pushFollow(FOLLOW_expression_in_reference3988);
                     anexpr=expression();
 
                     state._fsp--;
 
 
-                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_reference4625); 
+                    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_reference3990);
 
                     result = createFoldExpression(result,afold,init,anexpr);
 
@@ -6594,7 +5844,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -6609,7 +5859,7 @@
 
 
     // $ANTLR start "accessExpression"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:922:1: accessExpression[Expression subexpr] returns [Expression result] : (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+ ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )? ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:819:1: accessExpression[Expression subexpr] returns [Expression result] : (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+ ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )? ;
     public final Expression accessExpression(Expression subexpr) throws RecognitionException {
         Expression result = null;
 
@@ -6625,104 +5875,104 @@
 
 
 
-        		UnaryOperator newExpr = null;
+        		final UnaryOperator newExpr = null;
         		result = subexpr;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:928:2: ( (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+ ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )? )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:929:7: (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+ ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:825:2: ( (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+ ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )? )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:826:7: (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+ ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )?
             {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:929:7: (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+
-            int cnt102=0;
-            loop102:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:826:7: (tcall= T_LSQPAREN ac= expression T_RSQPAREN |bcall= T_LPAREN m_params= methodCallParams T_RPAREN )+
+            int cnt88=0;
+            loop88:
             do {
-                int alt102=3;
-                int LA102_0 = input.LA(1);
+                int alt88=3;
+                final int LA88_0 = input.LA(1);
 
-                if ( (LA102_0==T_LSQPAREN) ) {
-                    alt102=1;
+                if ( (LA88_0==T_LSQPAREN) ) {
+                    alt88=1;
                 }
-                else if ( (LA102_0==T_LPAREN) ) {
-                    alt102=2;
+                else if ( (LA88_0==T_LPAREN) ) {
+                    alt88=2;
                 }
 
 
-                switch (alt102) {
+                switch (alt88) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:929:9: tcall= T_LSQPAREN ac= expression T_RSQPAREN
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:826:9: tcall= T_LSQPAREN ac= expression T_RSQPAREN
             	    {
-            	    tcall=(Token)match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_accessExpression4670); 
+            	    tcall=(Token)match(input,T_LSQPAREN,FOLLOW_T_LSQPAREN_in_accessExpression4035);
 
-            	    pushFollow(FOLLOW_expression_in_accessExpression4674);
+            	    pushFollow(FOLLOW_expression_in_accessExpression4039);
             	    ac=expression();
 
             	    state._fsp--;
 
 
-            	    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_accessExpression4676); 
+            	    match(input,T_RSQPAREN,FOLLOW_T_RSQPAREN_in_accessExpression4041);
 
-            	     result = createTupleMapAccessExpression(result,ac,tcall); 
+            	     result = createTupleMapAccessExpression(result,ac,tcall);
 
             	    }
             	    break;
             	case 2 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:931:10: bcall= T_LPAREN m_params= methodCallParams T_RPAREN
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:828:10: bcall= T_LPAREN m_params= methodCallParams T_RPAREN
             	    {
-            	    bcall=(Token)match(input,T_LPAREN,FOLLOW_T_LPAREN_in_accessExpression4703); 
+            	    bcall=(Token)match(input,T_LPAREN,FOLLOW_T_LPAREN_in_accessExpression4068);
 
-            	    pushFollow(FOLLOW_methodCallParams_in_accessExpression4707);
+            	    pushFollow(FOLLOW_methodCallParams_in_accessExpression4072);
             	    m_params=methodCallParams();
 
             	    state._fsp--;
 
 
-            	    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_accessExpression4709); 
+            	    match(input,T_RPAREN,FOLLOW_T_RPAREN_in_accessExpression4074);
 
-            	     result = createMethodAccessExpression(result,m_params,bcall); 
+            	     result = createMethodAccessExpression(result,m_params,bcall);
 
             	    }
             	    break;
 
             	default :
-            	    if ( cnt102 >= 1 ) break loop102;
-                        EarlyExitException eee =
-                            new EarlyExitException(102, input);
+            	    if ( cnt88 >= 1 ) break loop88;
+                        final EarlyExitException eee =
+                            new EarlyExitException(88, input);
                         throw eee;
                 }
-                cnt102++;
+                cnt88++;
             } while (true);
 
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:934:3: ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )?
-            int alt105=2;
-            int LA105_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:831:3: ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )? )?
+            int alt91=2;
+            final int LA91_0 = input.LA(1);
 
-            if ( (LA105_0==T_POINT) ) {
-                alt105=1;
+            if ( (LA91_0==T_POINT) ) {
+                alt91=1;
             }
-            switch (alt105) {
+            switch (alt91) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:935:4: ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )?
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:832:4: ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[result] )?
                     {
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:935:4: ( T_POINT idn= T_IDENTIFIER )+
-                    int cnt103=0;
-                    loop103:
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:832:4: ( T_POINT idn= T_IDENTIFIER )+
+                    int cnt89=0;
+                    loop89:
                     do {
-                        int alt103=2;
-                        int LA103_0 = input.LA(1);
+                        int alt89=2;
+                        final int LA89_0 = input.LA(1);
 
-                        if ( (LA103_0==T_POINT) ) {
-                            alt103=1;
+                        if ( (LA89_0==T_POINT) ) {
+                            alt89=1;
                         }
 
 
-                        switch (alt103) {
+                        switch (alt89) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:935:5: T_POINT idn= T_IDENTIFIER
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:832:5: T_POINT idn= T_IDENTIFIER
                     	    {
-                    	    match(input,T_POINT,FOLLOW_T_POINT_in_accessExpression4731); 
+                    	    match(input,T_POINT,FOLLOW_T_POINT_in_accessExpression4096);
 
-                    	    idn=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_accessExpression4739); 
+                    	    idn=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_accessExpression4104);
 
                     	    result = addIdentifierAccessExpression(result,idn);
 
@@ -6730,27 +5980,27 @@
                     	    break;
 
                     	default :
-                    	    if ( cnt103 >= 1 ) break loop103;
-                                EarlyExitException eee =
-                                    new EarlyExitException(103, input);
+                    	    if ( cnt89 >= 1 ) break loop89;
+                                final EarlyExitException eee =
+                                    new EarlyExitException(89, input);
                                 throw eee;
                         }
-                        cnt103++;
+                        cnt89++;
                     } while (true);
 
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:938:4: (res= accessExpression[result] )?
-                    int alt104=2;
-                    int LA104_0 = input.LA(1);
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:835:4: (res= accessExpression[result] )?
+                    int alt90=2;
+                    final int LA90_0 = input.LA(1);
 
-                    if ( ((LA104_0 >= T_LPAREN && LA104_0 <= T_LSQPAREN)) ) {
-                        alt104=1;
+                    if ( ((LA90_0 >= T_LPAREN && LA90_0 <= T_LSQPAREN)) ) {
+                        alt90=1;
                     }
-                    switch (alt104) {
+                    switch (alt90) {
                         case 1 :
-                            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:938:5: res= accessExpression[result]
+                            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:835:5: res= accessExpression[result]
                             {
-                            pushFollow(FOLLOW_accessExpression_in_accessExpression4755);
+                            pushFollow(FOLLOW_accessExpression_in_accessExpression4120);
                             res=accessExpression(result);
 
                             state._fsp--;
@@ -6773,7 +6023,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -6788,7 +6038,7 @@
 
 
     // $ANTLR start "qualifiedIdentifier"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:942:1: qualifiedIdentifier returns [Expression top] : (self= T_SELF T_POINT )? idb= T_IDENTIFIER ( T_POINT idd= T_IDENTIFIER )* ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:839:1: qualifiedIdentifier returns [Expression top] : (self= T_SELF T_POINT )? idb= T_IDENTIFIER ( T_POINT idd= T_IDENTIFIER )* ;
     public final Expression qualifiedIdentifier() throws RecognitionException {
         Expression top = null;
 
@@ -6800,25 +6050,25 @@
 
         		IdentifierExpression selfexpr = null;
         		top = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:948:2: ( (self= T_SELF T_POINT )? idb= T_IDENTIFIER ( T_POINT idd= T_IDENTIFIER )* )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:949:3: (self= T_SELF T_POINT )? idb= T_IDENTIFIER ( T_POINT idd= T_IDENTIFIER )*
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:845:2: ( (self= T_SELF T_POINT )? idb= T_IDENTIFIER ( T_POINT idd= T_IDENTIFIER )* )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:846:3: (self= T_SELF T_POINT )? idb= T_IDENTIFIER ( T_POINT idd= T_IDENTIFIER )*
             {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:949:3: (self= T_SELF T_POINT )?
-            int alt106=2;
-            int LA106_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:846:3: (self= T_SELF T_POINT )?
+            int alt92=2;
+            final int LA92_0 = input.LA(1);
 
-            if ( (LA106_0==T_SELF) ) {
-                alt106=1;
+            if ( (LA92_0==T_SELF) ) {
+                alt92=1;
             }
-            switch (alt106) {
+            switch (alt92) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:949:4: self= T_SELF T_POINT
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:846:4: self= T_SELF T_POINT
                     {
-                    self=(Token)match(input,T_SELF,FOLLOW_T_SELF_in_qualifiedIdentifier4794); 
+                    self=(Token)match(input,T_SELF,FOLLOW_T_SELF_in_qualifiedIdentifier4159);
 
-                    match(input,T_POINT,FOLLOW_T_POINT_in_qualifiedIdentifier4796); 
+                    match(input,T_POINT,FOLLOW_T_POINT_in_qualifiedIdentifier4161);
 
                     selfexpr = createSelfIdentifierExpression(self);
 
@@ -6828,28 +6078,28 @@
             }
 
 
-            idb=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4808); 
+            idb=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4173);
 
             top = createIdentifierAccessExpression(selfexpr,idb);
 
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:951:3: ( T_POINT idd= T_IDENTIFIER )*
-            loop107:
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:848:3: ( T_POINT idd= T_IDENTIFIER )*
+            loop93:
             do {
-                int alt107=2;
-                int LA107_0 = input.LA(1);
+                int alt93=2;
+                final int LA93_0 = input.LA(1);
 
-                if ( (LA107_0==T_POINT) ) {
-                    alt107=1;
+                if ( (LA93_0==T_POINT) ) {
+                    alt93=1;
                 }
 
 
-                switch (alt107) {
+                switch (alt93) {
             	case 1 :
-            	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:951:4: T_POINT idd= T_IDENTIFIER
+            	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:848:4: T_POINT idd= T_IDENTIFIER
             	    {
-            	    match(input,T_POINT,FOLLOW_T_POINT_in_qualifiedIdentifier4817); 
+            	    match(input,T_POINT,FOLLOW_T_POINT_in_qualifiedIdentifier4182);
 
-            	    idd=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4821); 
+            	    idd=(Token)match(input,T_IDENTIFIER,FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4186);
 
             	    top = addIdentifierAccessExpression(top,idd);
 
@@ -6857,7 +6107,7 @@
             	    break;
 
             	default :
-            	    break loop107;
+            	    break loop93;
                 }
             } while (true);
 
@@ -6865,7 +6115,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -6880,7 +6130,7 @@
 
 
     // $ANTLR start "methodCallParams"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:955:1: methodCallParams returns [ArrayList<Expression> result] : (expa= expression ( T_COMMA expb= expression )* )? ;
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:852:1: methodCallParams returns [ArrayList<Expression> result] : (expa= expression ( T_COMMA expb= expression )* )? ;
     public final ArrayList<Expression> methodCallParams() throws RecognitionException {
         ArrayList<Expression> result = null;
 
@@ -6892,23 +6142,23 @@
 
 
         		result = new ArrayList<Expression>();
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:960:2: ( (expa= expression ( T_COMMA expb= expression )* )? )
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:960:4: (expa= expression ( T_COMMA expb= expression )* )?
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:857:2: ( (expa= expression ( T_COMMA expb= expression )* )? )
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:857:4: (expa= expression ( T_COMMA expb= expression )* )?
             {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:960:4: (expa= expression ( T_COMMA expb= expression )* )?
-            int alt109=2;
-            int LA109_0 = input.LA(1);
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:857:4: (expa= expression ( T_COMMA expb= expression )* )?
+            int alt95=2;
+            final int LA95_0 = input.LA(1);
 
-            if ( (LA109_0==T_ABS||(LA109_0 >= T_CARD && LA109_0 <= T_CBRL)||LA109_0==T_DCONC||LA109_0==T_DINTER||LA109_0==T_DOM||(LA109_0 >= T_DUNION && LA109_0 <= T_ELEMS)||(LA109_0 >= T_EXISTS && LA109_0 <= T_FALSE)||LA109_0==T_FLOATNUMBER||LA109_0==T_FORALL||(LA109_0 >= T_HEAD && LA109_0 <= T_IDENTIFIER)||LA109_0==T_IF||LA109_0==T_INDS||LA109_0==T_INTNUMBER||LA109_0==T_LEN||(LA109_0 >= T_LPAREN && LA109_0 <= T_LSQPAREN)||LA109_0==T_MERGE||LA109_0==T_MINUS||(LA109_0 >= T_NEW && LA109_0 <= T_NIL)||LA109_0==T_NOT||LA109_0==T_RNG||LA109_0==T_SELF||LA109_0==T_STRINGLITERAL||LA109_0==T_TAIL||LA109_0==T_TRUE||LA109_0==125) ) {
-                alt109=1;
+            if ( (LA95_0==T_ABS||(LA95_0 >= T_CARD && LA95_0 <= T_CBRL)||LA95_0==T_DCONC||LA95_0==T_DINTER||LA95_0==T_DOM||(LA95_0 >= T_DUNION && LA95_0 <= T_ELEMS)||(LA95_0 >= T_EXISTS && LA95_0 <= T_FALSE)||LA95_0==T_FLOATNUMBER||LA95_0==T_FORALL||(LA95_0 >= T_HEAD && LA95_0 <= T_IDENTIFIER)||LA95_0==T_IF||LA95_0==T_INDS||LA95_0==T_INTNUMBER||LA95_0==T_LEN||(LA95_0 >= T_LPAREN && LA95_0 <= T_LSQPAREN)||LA95_0==T_MERGE||LA95_0==T_MINUS||(LA95_0 >= T_NEW && LA95_0 <= T_NIL)||LA95_0==T_NOT||LA95_0==T_RNG||LA95_0==T_SELF||LA95_0==T_STRINGLITERAL||LA95_0==T_TAIL||LA95_0==T_TRUE) ) {
+                alt95=1;
             }
-            switch (alt109) {
+            switch (alt95) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:960:5: expa= expression ( T_COMMA expb= expression )*
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:857:5: expa= expression ( T_COMMA expb= expression )*
                     {
-                    pushFollow(FOLLOW_expression_in_methodCallParams4854);
+                    pushFollow(FOLLOW_expression_in_methodCallParams4219);
                     expa=expression();
 
                     state._fsp--;
@@ -6916,24 +6166,24 @@
 
                     result.add(expa);
 
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:960:41: ( T_COMMA expb= expression )*
-                    loop108:
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:857:41: ( T_COMMA expb= expression )*
+                    loop94:
                     do {
-                        int alt108=2;
-                        int LA108_0 = input.LA(1);
+                        int alt94=2;
+                        final int LA94_0 = input.LA(1);
 
-                        if ( (LA108_0==T_COMMA) ) {
-                            alt108=1;
+                        if ( (LA94_0==T_COMMA) ) {
+                            alt94=1;
                         }
 
 
-                        switch (alt108) {
+                        switch (alt94) {
                     	case 1 :
-                    	    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:960:42: T_COMMA expb= expression
+                    	    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:857:42: T_COMMA expb= expression
                     	    {
-                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_methodCallParams4859); 
+                    	    match(input,T_COMMA,FOLLOW_T_COMMA_in_methodCallParams4224);
 
-                    	    pushFollow(FOLLOW_expression_in_methodCallParams4863);
+                    	    pushFollow(FOLLOW_expression_in_methodCallParams4228);
                     	    expb=expression();
 
                     	    state._fsp--;
@@ -6945,7 +6195,7 @@
                     	    break;
 
                     	default :
-                    	    break loop108;
+                    	    break loop94;
                         }
                     } while (true);
 
@@ -6959,7 +6209,7 @@
             }
 
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -6974,7 +6224,7 @@
 
 
     // $ANTLR start "op_un"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:970:1: op_un returns [UnaryOperator expr] : (r= op_un_set_list |r2= op_un_map | T_MINUS | T_NOT | T_ABS );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:867:1: op_un returns [UnaryOperator expr] : (r= op_un_set_list |r2= op_un_map | T_MINUS | T_NOT | T_ABS );
     public final UnaryOperator op_un() throws RecognitionException {
         UnaryOperator expr = null;
 
@@ -6986,10 +6236,10 @@
 
 
         		expr = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:975:2: (r= op_un_set_list |r2= op_un_map | T_MINUS | T_NOT | T_ABS )
-            int alt110=5;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:872:2: (r= op_un_set_list |r2= op_un_map | T_MINUS | T_NOT | T_ABS )
+            int alt96=5;
             switch ( input.LA(1) ) {
             case T_CARD:
             case T_DCONC:
@@ -7001,7 +6251,7 @@
             case T_LEN:
             case T_TAIL:
                 {
-                alt110=1;
+                alt96=1;
                 }
                 break;
             case T_DOM:
@@ -7008,37 +6258,37 @@
             case T_MERGE:
             case T_RNG:
                 {
-                alt110=2;
+                alt96=2;
                 }
                 break;
             case T_MINUS:
                 {
-                alt110=3;
+                alt96=3;
                 }
                 break;
             case T_NOT:
                 {
-                alt110=4;
+                alt96=4;
                 }
                 break;
             case T_ABS:
                 {
-                alt110=5;
+                alt96=5;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 110, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 96, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt110) {
+            switch (alt96) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:975:4: r= op_un_set_list
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:872:4: r= op_un_set_list
                     {
-                    pushFollow(FOLLOW_op_un_set_list_in_op_un4902);
+                    pushFollow(FOLLOW_op_un_set_list_in_op_un4267);
                     r=op_un_set_list();
 
                     state._fsp--;
@@ -7049,9 +6299,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:976:4: r2= op_un_map
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:873:4: r2= op_un_map
                     {
-                    pushFollow(FOLLOW_op_un_map_in_op_un4911);
+                    pushFollow(FOLLOW_op_un_map_in_op_un4276);
                     r2=op_un_map();
 
                     state._fsp--;
@@ -7062,9 +6312,9 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:977:4: T_MINUS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:874:4: T_MINUS
                     {
-                    match(input,T_MINUS,FOLLOW_T_MINUS_in_op_un4919); 
+                    match(input,T_MINUS,FOLLOW_T_MINUS_in_op_un4284);
 
                     expr = createUnaryOperator(ExpressionKind.unminus);
 
@@ -7071,9 +6321,9 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:978:4: T_NOT
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:875:4: T_NOT
                     {
-                    match(input,T_NOT,FOLLOW_T_NOT_in_op_un4927); 
+                    match(input,T_NOT,FOLLOW_T_NOT_in_op_un4292);
 
                     expr = createUnaryOperator(ExpressionKind.not);
 
@@ -7080,9 +6330,9 @@
                     }
                     break;
                 case 5 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:979:4: T_ABS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:876:4: T_ABS
                     {
-                    match(input,T_ABS,FOLLOW_T_ABS_in_op_un4935); 
+                    match(input,T_ABS,FOLLOW_T_ABS_in_op_un4300);
 
                     expr = createUnaryOperator(ExpressionKind.abs);
 
@@ -7091,7 +6341,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -7106,7 +6356,7 @@
 
 
     // $ANTLR start "op_un_set_list"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:983:1: op_un_set_list returns [UnaryOperator expr] : ( T_CARD | T_DCONC | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_LEN | T_TAIL );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:880:1: op_un_set_list returns [UnaryOperator expr] : ( T_CARD | T_DCONC | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_LEN | T_TAIL );
     public final UnaryOperator op_un_set_list() throws RecognitionException {
         UnaryOperator expr = null;
 
@@ -7113,69 +6363,69 @@
 
 
         		expr = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:988:2: ( T_CARD | T_DCONC | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_LEN | T_TAIL )
-            int alt111=9;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:885:2: ( T_CARD | T_DCONC | T_DINTER | T_DUNION | T_ELEMS | T_HEAD | T_INDS | T_LEN | T_TAIL )
+            int alt97=9;
             switch ( input.LA(1) ) {
             case T_CARD:
                 {
-                alt111=1;
+                alt97=1;
                 }
                 break;
             case T_DCONC:
                 {
-                alt111=2;
+                alt97=2;
                 }
                 break;
             case T_DINTER:
                 {
-                alt111=3;
+                alt97=3;
                 }
                 break;
             case T_DUNION:
                 {
-                alt111=4;
+                alt97=4;
                 }
                 break;
             case T_ELEMS:
                 {
-                alt111=5;
+                alt97=5;
                 }
                 break;
             case T_HEAD:
                 {
-                alt111=6;
+                alt97=6;
                 }
                 break;
             case T_INDS:
                 {
-                alt111=7;
+                alt97=7;
                 }
                 break;
             case T_LEN:
                 {
-                alt111=8;
+                alt97=8;
                 }
                 break;
             case T_TAIL:
                 {
-                alt111=9;
+                alt97=9;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 111, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 97, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt111) {
+            switch (alt97) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:988:4: T_CARD
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:885:4: T_CARD
                     {
-                    match(input,T_CARD,FOLLOW_T_CARD_in_op_un_set_list4962); 
+                    match(input,T_CARD,FOLLOW_T_CARD_in_op_un_set_list4327);
 
                     expr = createUnaryOperator(ExpressionKind.card);
 
@@ -7182,9 +6432,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:990:4: T_DCONC
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:887:4: T_DCONC
                     {
-                    match(input,T_DCONC,FOLLOW_T_DCONC_in_op_un_set_list4973); 
+                    match(input,T_DCONC,FOLLOW_T_DCONC_in_op_un_set_list4338);
 
                     expr = createUnaryOperator(ExpressionKind.dconc);
 
@@ -7191,9 +6441,9 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:992:4: T_DINTER
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:889:4: T_DINTER
                     {
-                    match(input,T_DINTER,FOLLOW_T_DINTER_in_op_un_set_list4984); 
+                    match(input,T_DINTER,FOLLOW_T_DINTER_in_op_un_set_list4349);
 
                     expr = createUnaryOperator(ExpressionKind.dinter);
 
@@ -7200,9 +6450,9 @@
                     }
                     break;
                 case 4 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:994:4: T_DUNION
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:891:4: T_DUNION
                     {
-                    match(input,T_DUNION,FOLLOW_T_DUNION_in_op_un_set_list4994); 
+                    match(input,T_DUNION,FOLLOW_T_DUNION_in_op_un_set_list4359);
 
                     expr = createUnaryOperator(ExpressionKind.dunion);
 
@@ -7209,9 +6459,9 @@
                     }
                     break;
                 case 5 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:996:4: T_ELEMS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:893:4: T_ELEMS
                     {
-                    match(input,T_ELEMS,FOLLOW_T_ELEMS_in_op_un_set_list5004); 
+                    match(input,T_ELEMS,FOLLOW_T_ELEMS_in_op_un_set_list4369);
 
                     expr = createUnaryOperator(ExpressionKind.elems);
 
@@ -7218,9 +6468,9 @@
                     }
                     break;
                 case 6 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:998:4: T_HEAD
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:895:4: T_HEAD
                     {
-                    match(input,T_HEAD,FOLLOW_T_HEAD_in_op_un_set_list5015); 
+                    match(input,T_HEAD,FOLLOW_T_HEAD_in_op_un_set_list4380);
 
                     expr = createUnaryOperator(ExpressionKind.head);
 
@@ -7227,9 +6477,9 @@
                     }
                     break;
                 case 7 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1000:4: T_INDS
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:897:4: T_INDS
                     {
-                    match(input,T_INDS,FOLLOW_T_INDS_in_op_un_set_list5026); 
+                    match(input,T_INDS,FOLLOW_T_INDS_in_op_un_set_list4391);
 
                     expr = createUnaryOperator(ExpressionKind.inds);
 
@@ -7236,9 +6486,9 @@
                     }
                     break;
                 case 8 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1002:4: T_LEN
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:899:4: T_LEN
                     {
-                    match(input,T_LEN,FOLLOW_T_LEN_in_op_un_set_list5037); 
+                    match(input,T_LEN,FOLLOW_T_LEN_in_op_un_set_list4402);
 
                     expr = createUnaryOperator(ExpressionKind.len);
 
@@ -7245,9 +6495,9 @@
                     }
                     break;
                 case 9 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1004:4: T_TAIL
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:901:4: T_TAIL
                     {
-                    match(input,T_TAIL,FOLLOW_T_TAIL_in_op_un_set_list5048); 
+                    match(input,T_TAIL,FOLLOW_T_TAIL_in_op_un_set_list4413);
 
                     expr = createUnaryOperator(ExpressionKind.tail);
 
@@ -7256,7 +6506,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -7271,7 +6521,7 @@
 
 
     // $ANTLR start "op_un_map"
-    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1009:1: op_un_map returns [UnaryOperator expr] : ( T_DOM | T_RNG | T_MERGE );
+    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:906:1: op_un_map returns [UnaryOperator expr] : ( T_DOM | T_RNG | T_MERGE );
     public final UnaryOperator op_un_map() throws RecognitionException {
         UnaryOperator expr = null;
 
@@ -7278,39 +6528,39 @@
 
 
         		expr = null;
-        	
+
         try {
-            // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1014:2: ( T_DOM | T_RNG | T_MERGE )
-            int alt112=3;
+            // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:911:2: ( T_DOM | T_RNG | T_MERGE )
+            int alt98=3;
             switch ( input.LA(1) ) {
             case T_DOM:
                 {
-                alt112=1;
+                alt98=1;
                 }
                 break;
             case T_RNG:
                 {
-                alt112=2;
+                alt98=2;
                 }
                 break;
             case T_MERGE:
                 {
-                alt112=3;
+                alt98=3;
                 }
                 break;
             default:
-                NoViableAltException nvae =
-                    new NoViableAltException("", 112, 0, input);
+                final NoViableAltException nvae =
+                    new NoViableAltException("", 98, 0, input);
 
                 throw nvae;
 
             }
 
-            switch (alt112) {
+            switch (alt98) {
                 case 1 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1014:4: T_DOM
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:911:4: T_DOM
                     {
-                    match(input,T_DOM,FOLLOW_T_DOM_in_op_un_map5077); 
+                    match(input,T_DOM,FOLLOW_T_DOM_in_op_un_map4442);
 
                     expr = createUnaryOperator(ExpressionKind.dom);
 
@@ -7317,9 +6567,9 @@
                     }
                     break;
                 case 2 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1016:4: T_RNG
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:913:4: T_RNG
                     {
-                    match(input,T_RNG,FOLLOW_T_RNG_in_op_un_map5088); 
+                    match(input,T_RNG,FOLLOW_T_RNG_in_op_un_map4453);
 
                     expr = createUnaryOperator(ExpressionKind.range);
 
@@ -7326,9 +6576,9 @@
                     }
                     break;
                 case 3 :
-                    // C:\\Users\\KrennW\\Documents\\svn\\public\\tug_ist\\trunk\\momut\\uml_ooas\\ooas_compiler\\java\\src\\org\\momut\\ooas\\parser\\ooa.g:1018:4: T_MERGE
+                    // /home/willibald/svn/branches/1161_dynlistPerformance_willibald/ooascompiler/ooasCompiler/src/org/momut/ooas/parser/ooa.g:915:4: T_MERGE
                     {
-                    match(input,T_MERGE,FOLLOW_T_MERGE_in_op_un_map5099); 
+                    match(input,T_MERGE,FOLLOW_T_MERGE_in_op_un_map4464);
 
                     expr = createUnaryOperator(ExpressionKind.merge);
 
@@ -7337,7 +6587,7 @@
 
             }
         }
-        catch (RecognitionException re) {
+        catch (final RecognitionException re) {
             reportError(re);
             recover(input,re);
         }
@@ -7352,31 +6602,31 @@
     // Delegated rules
 
 
-    protected DFA74 dfa74 = new DFA74(this);
-    protected DFA98 dfa98 = new DFA98(this);
-    static final String DFA74_eotS =
-        "\102\uffff";
-    static final String DFA74_eofS =
-        "\102\uffff";
-    static final String DFA74_minS =
-        "\1\21\1\uffff\1\10\77\uffff";
-    static final String DFA74_maxS =
-        "\1\175\1\uffff\1\171\77\uffff";
-    static final String DFA74_acceptS =
-        "\1\uffff\1\1\1\uffff\1\2\1\3\5\uffff\1\4\2\uffff\1\5\1\6\63\uffff";
-    static final String DFA74_specialS =
-        "\102\uffff}>";
-    static final String[] DFA74_transitionS = {
-            "\1\12\30\uffff\1\15\1\4\1\uffff\1\4\2\uffff\1\15\3\uffff\1\1"+
-            "\10\uffff\1\4\6\uffff\1\16\1\12\7\uffff\1\12\1\4\24\uffff\1"+
-            "\2\5\uffff\1\4\6\uffff\1\4\14\uffff\1\3",
+    protected DFA67 dfa67 = new DFA67(this);
+    protected DFA84 dfa84 = new DFA84(this);
+    static final String DFA67_eotS =
+        "\101\uffff";
+    static final String DFA67_eofS =
+        "\101\uffff";
+    static final String DFA67_minS =
+        "\1\21\1\uffff\1\10\76\uffff";
+    static final String DFA67_maxS =
+        "\1\156\1\uffff\1\167\76\uffff";
+    static final String DFA67_acceptS =
+        "\1\uffff\1\1\1\uffff\1\2\5\uffff\1\3\2\uffff\1\4\1\5\63\uffff";
+    static final String DFA67_specialS =
+        "\101\uffff}>";
+    static final String[] DFA67_transitionS = {
+            "\1\11\27\uffff\1\14\1\3\1\uffff\1\3\2\uffff\1\14\3\uffff\1\1"+
+            "\10\uffff\1\3\6\uffff\1\15\1\11\7\uffff\1\11\1\3\23\uffff\1"+
+            "\2\5\uffff\1\3\6\uffff\1\3",
             "",
-            "\2\4\2\uffff\2\4\4\uffff\1\4\1\uffff\2\4\1\uffff\1\4\5\uffff"+
-            "\1\4\2\uffff\2\4\1\uffff\2\4\2\uffff\3\4\7\uffff\2\4\2\uffff"+
-            "\1\4\1\uffff\2\4\3\uffff\1\4\3\uffff\2\4\5\uffff\1\4\1\uffff"+
-            "\4\4\2\uffff\3\4\3\uffff\1\4\1\1\1\4\1\uffff\2\4\4\uffff\4\4"+
-            "\1\uffff\2\4\4\uffff\2\4\2\uffff\1\4\2\uffff\2\4\1\uffff\1\4"+
-            "\3\uffff\2\4",
+            "\2\3\2\uffff\2\3\4\uffff\1\3\1\uffff\2\3\1\uffff\1\3\4\uffff"+
+            "\1\3\2\uffff\2\3\1\uffff\2\3\2\uffff\3\3\7\uffff\2\3\2\uffff"+
+            "\1\3\1\uffff\2\3\3\uffff\1\3\3\uffff\2\3\5\uffff\1\3\1\uffff"+
+            "\4\3\2\uffff\3\3\3\uffff\1\3\1\1\1\3\1\uffff\2\3\3\uffff\4\3"+
+            "\1\uffff\2\3\4\uffff\2\3\2\uffff\1\3\2\uffff\2\3\1\uffff\1\3"+
+            "\3\uffff\2\3",
             "",
             "",
             "",
@@ -7438,61 +6688,61 @@
             "",
             "",
             "",
-            "",
             ""
     };
 
-    static final short[] DFA74_eot = DFA.unpackEncodedString(DFA74_eotS);
-    static final short[] DFA74_eof = DFA.unpackEncodedString(DFA74_eofS);
-    static final char[] DFA74_min = DFA.unpackEncodedStringToUnsignedChars(DFA74_minS);
-    static final char[] DFA74_max = DFA.unpackEncodedStringToUnsignedChars(DFA74_maxS);
-    static final short[] DFA74_accept = DFA.unpackEncodedString(DFA74_acceptS);
-    static final short[] DFA74_special = DFA.unpackEncodedString(DFA74_specialS);
-    static final short[][] DFA74_transition;
+    static final short[] DFA67_eot = DFA.unpackEncodedString(DFA67_eotS);
+    static final short[] DFA67_eof = DFA.unpackEncodedString(DFA67_eofS);
+    static final char[] DFA67_min = DFA.unpackEncodedStringToUnsignedChars(DFA67_minS);
+    static final char[] DFA67_max = DFA.unpackEncodedStringToUnsignedChars(DFA67_maxS);
+    static final short[] DFA67_accept = DFA.unpackEncodedString(DFA67_acceptS);
+    static final short[] DFA67_special = DFA.unpackEncodedString(DFA67_specialS);
+    static final short[][] DFA67_transition;
 
     static {
-        int numStates = DFA74_transitionS.length;
-        DFA74_transition = new short[numStates][];
+        final int numStates = DFA67_transitionS.length;
+        DFA67_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA74_transition[i] = DFA.unpackEncodedString(DFA74_transitionS[i]);
+            DFA67_transition[i] = DFA.unpackEncodedString(DFA67_transitionS[i]);
         }
     }
 
-    class DFA74 extends DFA {
+    class DFA67 extends DFA {
 
-        public DFA74(BaseRecognizer recognizer) {
+        public DFA67(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 74;
-            this.eot = DFA74_eot;
-            this.eof = DFA74_eof;
-            this.min = DFA74_min;
-            this.max = DFA74_max;
-            this.accept = DFA74_accept;
-            this.special = DFA74_special;
-            this.transition = DFA74_transition;
+            this.decisionNumber = 67;
+            this.eot = DFA67_eot;
+            this.eof = DFA67_eof;
+            this.min = DFA67_min;
+            this.max = DFA67_max;
+            this.accept = DFA67_accept;
+            this.special = DFA67_special;
+            this.transition = DFA67_transition;
         }
-        public String getDescription() {
-            return "706:19: (e= identifierExpression |e= qvalExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? )";
+        @Override
+		public String getDescription() {
+            return "649:19: (e= identifierExpression |e= constant |e= initializedComplexType |e= quantifierExpression | T_LPAREN e= expression T_RPAREN ( ( T_POINT idn= T_IDENTIFIER )+ (res= accessExpression[e] )? |e= accessExpression[e] )? )";
         }
     }
-    static final String DFA98_eotS =
+    static final String DFA84_eotS =
         "\74\uffff";
-    static final String DFA98_eofS =
+    static final String DFA84_eofS =
         "\74\uffff";
-    static final String DFA98_minS =
-        "\1\64\1\10\1\uffff\1\0\70\uffff";
-    static final String DFA98_maxS =
-        "\1\143\1\171\1\uffff\1\0\70\uffff";
-    static final String DFA98_acceptS =
+    static final String DFA84_minS =
+        "\1\63\1\10\1\uffff\1\0\70\uffff";
+    static final String DFA84_maxS =
+        "\1\141\1\167\1\uffff\1\0\70\uffff";
+    static final String DFA84_acceptS =
         "\2\uffff\1\2\70\uffff\1\1";
-    static final String DFA98_specialS =
+    static final String DFA84_specialS =
         "\3\uffff\1\0\70\uffff}>";
-    static final String[] DFA98_transitionS = {
-            "\1\1\56\uffff\1\2",
-            "\2\2\2\uffff\2\2\4\uffff\1\2\1\uffff\2\2\1\uffff\1\2\5\uffff"+
+    static final String[] DFA84_transitionS = {
+            "\1\1\55\uffff\1\2",
+            "\2\2\2\uffff\2\2\4\uffff\1\2\1\uffff\2\2\1\uffff\1\2\4\uffff"+
             "\1\2\2\uffff\2\2\1\uffff\2\2\2\uffff\3\2\4\uffff\2\2\1\uffff"+
             "\2\2\2\uffff\1\2\1\uffff\2\2\3\uffff\1\2\3\uffff\2\2\2\uffff"+
-            "\1\3\1\2\1\uffff\1\2\1\uffff\4\2\2\uffff\3\2\3\uffff\6\2\4\uffff"+
+            "\1\3\1\2\1\uffff\1\2\1\uffff\4\2\2\uffff\3\2\3\uffff\6\2\3\uffff"+
             "\4\2\1\uffff\2\2\4\uffff\2\2\2\uffff\1\2\2\uffff\2\2\1\uffff"+
             "\1\2\2\uffff\3\2",
             "",
@@ -7555,47 +6805,49 @@
             ""
     };
 
-    static final short[] DFA98_eot = DFA.unpackEncodedString(DFA98_eotS);
-    static final short[] DFA98_eof = DFA.unpackEncodedString(DFA98_eofS);
-    static final char[] DFA98_min = DFA.unpackEncodedStringToUnsignedChars(DFA98_minS);
-    static final char[] DFA98_max = DFA.unpackEncodedStringToUnsignedChars(DFA98_maxS);
-    static final short[] DFA98_accept = DFA.unpackEncodedString(DFA98_acceptS);
-    static final short[] DFA98_special = DFA.unpackEncodedString(DFA98_specialS);
-    static final short[][] DFA98_transition;
+    static final short[] DFA84_eot = DFA.unpackEncodedString(DFA84_eotS);
+    static final short[] DFA84_eof = DFA.unpackEncodedString(DFA84_eofS);
+    static final char[] DFA84_min = DFA.unpackEncodedStringToUnsignedChars(DFA84_minS);
+    static final char[] DFA84_max = DFA.unpackEncodedStringToUnsignedChars(DFA84_maxS);
+    static final short[] DFA84_accept = DFA.unpackEncodedString(DFA84_acceptS);
+    static final short[] DFA84_special = DFA.unpackEncodedString(DFA84_specialS);
+    static final short[][] DFA84_transition;
 
     static {
-        int numStates = DFA98_transitionS.length;
-        DFA98_transition = new short[numStates][];
+        final int numStates = DFA84_transitionS.length;
+        DFA84_transition = new short[numStates][];
         for (int i=0; i<numStates; i++) {
-            DFA98_transition[i] = DFA.unpackEncodedString(DFA98_transitionS[i]);
+            DFA84_transition[i] = DFA.unpackEncodedString(DFA84_transitionS[i]);
         }
     }
 
-    class DFA98 extends DFA {
+    class DFA84 extends DFA {
 
-        public DFA98(BaseRecognizer recognizer) {
+        public DFA84(BaseRecognizer recognizer) {
             this.recognizer = recognizer;
-            this.decisionNumber = 98;
-            this.eot = DFA98_eot;
-            this.eof = DFA98_eof;
-            this.min = DFA98_min;
-            this.max = DFA98_max;
-            this.accept = DFA98_accept;
-            this.special = DFA98_special;
-            this.transition = DFA98_transition;
+            this.decisionNumber = 84;
+            this.eot = DFA84_eot;
+            this.eof = DFA84_eof;
+            this.min = DFA84_min;
+            this.max = DFA84_max;
+            this.accept = DFA84_accept;
+            this.special = DFA84_special;
+            this.transition = DFA84_transition;
         }
-        public String getDescription() {
-            return "891:1: identifierExpression returns [Expression result] : ({...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN |res= reference );";
+        @Override
+		public String getDescription() {
+            return "788:1: identifierExpression returns [Expression result] : ({...}?aName= T_IDENTIFIER T_LPAREN m_params= methodCallParams T_RPAREN |res= reference );";
         }
-        public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
-            TokenStream input = (TokenStream)_input;
-        	int _s = s;
+        @Override
+		public int specialStateTransition(int s, IntStream _input) throws NoViableAltException {
+            final TokenStream input = (TokenStream)_input;
+        	final int _s = s;
             switch ( s ) {
-                    case 0 : 
-                        int LA98_3 = input.LA(1);
+                    case 0 :
+                        final int LA84_3 = input.LA(1);
 
-                         
-                        int index98_3 = input.index();
+
+                        final int index84_3 = input.index();
                         input.rewind();
 
                         s = -1;
@@ -7603,469 +6855,425 @@
 
                         else if ( ((!isTuple(input.LT(1).getText()))) ) {s = 2;}
 
-                         
-                        input.seek(index98_3);
 
+                        input.seek(index84_3);
+
                         if ( s>=0 ) return s;
                         break;
             }
-            NoViableAltException nvae =
-                new NoViableAltException(getDescription(), 98, _s, input);
+            final NoViableAltException nvae =
+                new NoViableAltException(getDescription(), 84, _s, input);
             error(nvae);
             throw nvae;
         }
 
     }
- 
 
-    public static final BitSet FOLLOW_T_CONSTS_in_ooActionSystems74 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_namedConstList_in_ooActionSystems76 = new BitSet(new long[]{0x0000000000000000L,0x0002000000000000L});
-    public static final BitSet FOLLOW_T_TYPES_in_ooActionSystems86 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_namedTypeList_in_ooActionSystems94 = new BitSet(new long[]{0x0000000000000000L,0x0000100000000000L});
-    public static final BitSet FOLLOW_T_SYSTEM_in_ooActionSystems99 = new BitSet(new long[]{0x0010000000000000L,0x0000000000000010L});
+
+    public static final BitSet FOLLOW_T_CONSTS_in_ooActionSystems74 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_namedConstList_in_ooActionSystems76 = new BitSet(new long[]{0x0000000000000000L,0x0000800000000000L});
+    public static final BitSet FOLLOW_T_TYPES_in_ooActionSystems86 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_namedTypeList_in_ooActionSystems94 = new BitSet(new long[]{0x0000000000000000L,0x0000040000000000L});
+    public static final BitSet FOLLOW_T_SYSTEM_in_ooActionSystems99 = new BitSet(new long[]{0x0008000000000000L,0x0000000000000008L});
     public static final BitSet FOLLOW_asTypeComposition_in_ooActionSystems106 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_namedConst_in_namedConstList129 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_namedConstList132 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_namedConst_in_namedConstList134 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_namedConst150 = new BitSet(new long[]{0x0000020000000000L});
-    public static final BitSet FOLLOW_T_EQUAL_in_namedConst154 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
+    public static final BitSet FOLLOW_namedConst_in_namedConstList129 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_namedConstList132 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_namedConst_in_namedConstList134 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_namedConst150 = new BitSet(new long[]{0x0000010000000000L});
+    public static final BitSet FOLLOW_T_EQUAL_in_namedConst154 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
     public static final BitSet FOLLOW_expression_in_namedConst160 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_namedType_in_namedTypeList180 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_namedTypeList183 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_namedType_in_namedTypeList185 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_namedType201 = new BitSet(new long[]{0x0000020000000000L});
-    public static final BitSet FOLLOW_T_EQUAL_in_namedType206 = new BitSet(new long[]{0x08101000000A4800L,0x0000100008000078L});
+    public static final BitSet FOLLOW_namedType_in_namedTypeList180 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_namedTypeList183 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_namedType_in_namedTypeList185 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_namedType201 = new BitSet(new long[]{0x0000010000000000L});
+    public static final BitSet FOLLOW_T_EQUAL_in_namedType206 = new BitSet(new long[]{0x04080800000A4800L,0x000004000000003CL});
     public static final BitSet FOLLOW_complexType_in_namedType218 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_ooActionSystem_in_namedType230 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_asTypeCompositionParallel_in_asTypeComposition266 = new BitSet(new long[]{0x0000000000000002L,0x0000000002000000L});
-    public static final BitSet FOLLOW_T_PRIO_in_asTypeComposition271 = new BitSet(new long[]{0x0010000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_asTypeCompositionParallel_in_asTypeComposition273 = new BitSet(new long[]{0x0000000000000002L,0x0000000002000000L});
-    public static final BitSet FOLLOW_asTypeCompositionSequential_in_asTypeCompositionParallel296 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
-    public static final BitSet FOLLOW_T_NONDET_in_asTypeCompositionParallel300 = new BitSet(new long[]{0x0010000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_asTypeCompositionSequential_in_asTypeCompositionParallel302 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
+    public static final BitSet FOLLOW_asTypeCompositionParallel_in_asTypeComposition266 = new BitSet(new long[]{0x0000000000000002L,0x0000000001000000L});
+    public static final BitSet FOLLOW_T_PRIO_in_asTypeComposition271 = new BitSet(new long[]{0x0008000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_asTypeCompositionParallel_in_asTypeComposition273 = new BitSet(new long[]{0x0000000000000002L,0x0000000001000000L});
+    public static final BitSet FOLLOW_asTypeCompositionSequential_in_asTypeCompositionParallel296 = new BitSet(new long[]{0x0000000000000002L,0x0000000000004000L});
+    public static final BitSet FOLLOW_T_NONDET_in_asTypeCompositionParallel300 = new BitSet(new long[]{0x0008000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_asTypeCompositionSequential_in_asTypeCompositionParallel302 = new BitSet(new long[]{0x0000000000000002L,0x0000000000004000L});
     public static final BitSet FOLLOW_asTypeCompositionBlockParen_in_asTypeCompositionSequential324 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LPAREN_in_asTypeCompositionBlockParen339 = new BitSet(new long[]{0x0010000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_asTypeComposition_in_asTypeCompositionBlockParen341 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
+    public static final BitSet FOLLOW_T_LPAREN_in_asTypeCompositionBlockParen339 = new BitSet(new long[]{0x0008000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_asTypeComposition_in_asTypeCompositionBlockParen341 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
     public static final BitSet FOLLOW_T_RPAREN_in_asTypeCompositionBlockParen344 = new BitSet(new long[]{0x0000000000000002L});
     public static final BitSet FOLLOW_T_IDENTIFIER_in_asTypeCompositionBlockParen351 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LIST_in_complexType382 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_complexType385 = new BitSet(new long[]{0x2010000000000000L});
-    public static final BitSet FOLLOW_set_in_complexType389 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_RSQPAREN_in_complexType395 = new BitSet(new long[]{0x0000000000000000L,0x0000000000100000L});
-    public static final BitSet FOLLOW_T_OF_in_complexType397 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
+    public static final BitSet FOLLOW_T_LIST_in_complexType382 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
+    public static final BitSet FOLLOW_T_LSQPAREN_in_complexType385 = new BitSet(new long[]{0x1008000000000000L});
+    public static final BitSet FOLLOW_set_in_complexType389 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_RSQPAREN_in_complexType395 = new BitSet(new long[]{0x0000000000000000L,0x0000000000080000L});
+    public static final BitSet FOLLOW_T_OF_in_complexType397 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
     public static final BitSet FOLLOW_complexType_in_complexType402 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_complexType417 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_complexType421 = new BitSet(new long[]{0x0000000000200000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_COMMA_in_complexType430 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_complexType434 = new BitSet(new long[]{0x0000000000200000L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_LSQPAREN_in_complexType417 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_complexType421 = new BitSet(new long[]{0x0000000000200000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_COMMA_in_complexType430 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_complexType434 = new BitSet(new long[]{0x0000000000200000L,0x0000000100000000L});
     public static final BitSet FOLLOW_T_RSQPAREN_in_complexType440 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_MAP_in_complexType450 = new BitSet(new long[]{0x08101000000A4000L,0x0000000000000020L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_complexType455 = new BitSet(new long[]{0x2010000000000000L});
-    public static final BitSet FOLLOW_set_in_complexType459 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_RSQPAREN_in_complexType465 = new BitSet(new long[]{0x08101000000A4000L});
-    public static final BitSet FOLLOW_simpleType_in_complexType471 = new BitSet(new long[]{0x0000000000000000L,0x0000800000000000L});
-    public static final BitSet FOLLOW_T_TO_in_complexType473 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
+    public static final BitSet FOLLOW_T_MAP_in_complexType450 = new BitSet(new long[]{0x04080800000A4000L,0x0000000000000010L});
+    public static final BitSet FOLLOW_T_LSQPAREN_in_complexType455 = new BitSet(new long[]{0x1008000000000000L});
+    public static final BitSet FOLLOW_set_in_complexType459 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_RSQPAREN_in_complexType465 = new BitSet(new long[]{0x04080800000A4000L});
+    public static final BitSet FOLLOW_simpleType_in_complexType471 = new BitSet(new long[]{0x0000000000000000L,0x0000200000000000L});
+    public static final BitSet FOLLOW_T_TO_in_complexType473 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
     public static final BitSet FOLLOW_complexType_in_complexType477 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_QUANTITY_in_complexType491 = new BitSet(new long[]{0x0000000000000000L,0x0000000000100000L});
-    public static final BitSet FOLLOW_T_OF_in_complexType493 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_complexType495 = new BitSet(new long[]{0x0010000000000000L,0x0000000000000400L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_complexType500 = new BitSet(new long[]{0x0000000000200000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_MINUS_in_complexType505 = new BitSet(new long[]{0x0400000000000000L});
-    public static final BitSet FOLLOW_T_INFTY_in_complexType507 = new BitSet(new long[]{0x0000000000200000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_COMMA_in_complexType517 = new BitSet(new long[]{0x0410000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_complexType522 = new BitSet(new long[]{0x0000000000200000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_INFTY_in_complexType526 = new BitSet(new long[]{0x0000000000200000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_RSQPAREN_in_complexType533 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LPAREN_in_complexType543 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_complexType547 = new BitSet(new long[]{0x0000000000200000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_COMMA_in_complexType556 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_complexType560 = new BitSet(new long[]{0x0000000000200000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_complexType567 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_simpleType_in_complexType580 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_BOOL_in_simpleType613 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_INT_in_simpleType626 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_simpleType628 = new BitSet(new long[]{0x2410000000000000L});
-    public static final BitSet FOLLOW_set_in_simpleType632 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L});
-    public static final BitSet FOLLOW_T_RANGETO_in_simpleType640 = new BitSet(new long[]{0x2410000000000000L});
-    public static final BitSet FOLLOW_set_in_simpleType644 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_RSQPAREN_in_simpleType652 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_FLOAT_in_simpleType671 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000020L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_simpleType674 = new BitSet(new long[]{0x0410200000000000L});
-    public static final BitSet FOLLOW_set_in_simpleType678 = new BitSet(new long[]{0x0000000000000000L,0x0000000010000000L});
-    public static final BitSet FOLLOW_T_RANGETO_in_simpleType686 = new BitSet(new long[]{0x0410200000000000L});
-    public static final BitSet FOLLOW_set_in_simpleType690 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_RSQPAREN_in_simpleType698 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_CHAR_in_simpleType716 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_CBRL_in_simpleType732 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_simpleType736 = new BitSet(new long[]{0x0000020000240000L});
-    public static final BitSet FOLLOW_T_EQUAL_in_simpleType739 = new BitSet(new long[]{0x2000000000000000L});
-    public static final BitSet FOLLOW_T_INTNUMBER_in_simpleType743 = new BitSet(new long[]{0x0000000000240000L});
-    public static final BitSet FOLLOW_T_COMMA_in_simpleType754 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_simpleType758 = new BitSet(new long[]{0x0000020000240000L});
-    public static final BitSet FOLLOW_T_EQUAL_in_simpleType761 = new BitSet(new long[]{0x2000000000000000L});
-    public static final BitSet FOLLOW_T_INTNUMBER_in_simpleType765 = new BitSet(new long[]{0x0000000000240000L});
-    public static final BitSet FOLLOW_T_CBRR_in_simpleType773 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_simpleType784 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_AUTOCONS_in_ooActionSystem827 = new BitSet(new long[]{0x0000000000000000L,0x0000100000000000L});
-    public static final BitSet FOLLOW_T_SYSTEM_in_ooActionSystem836 = new BitSet(new long[]{0x0000000000000000L,0x8000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_ooActionSystem839 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_ooActionSystem843 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_ooActionSystem845 = new BitSet(new long[]{0x0000000000000000L,0x8000000000000000L});
-    public static final BitSet FOLLOW_127_in_ooActionSystem858 = new BitSet(new long[]{0x0000000200000100L,0x0108000000000200L});
-    public static final BitSet FOLLOW_T_VAR_in_ooActionSystem864 = new BitSet(new long[]{0x0010000004000000L,0x0000010000040000L});
-    public static final BitSet FOLLOW_attrList_in_ooActionSystem866 = new BitSet(new long[]{0x0000000200000100L,0x0100000000000200L});
-    public static final BitSet FOLLOW_T_METHODS_in_ooActionSystem874 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_methodList_in_ooActionSystem876 = new BitSet(new long[]{0x0000000200000100L,0x0100000000000000L});
-    public static final BitSet FOLLOW_T_ACTIONS_in_ooActionSystem884 = new BitSet(new long[]{0x0010000004000000L,0x0000000000040000L});
-    public static final BitSet FOLLOW_namedActionList_in_ooActionSystem886 = new BitSet(new long[]{0x0000000200000000L,0x0100000000000000L});
-    public static final BitSet FOLLOW_T_DO_in_ooActionSystem894 = new BitSet(new long[]{0x0010000000000000L,0x0008008020080010L});
-    public static final BitSet FOLLOW_actionBlock_in_ooActionSystem899 = new BitSet(new long[]{0x0000000000000000L,0x0000000000080000L});
-    public static final BitSet FOLLOW_T_OD_in_ooActionSystem906 = new BitSet(new long[]{0x0000000000000000L,0x0100000000000000L});
-    public static final BitSet FOLLOW_120_in_ooActionSystem912 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_attr_in_attrList943 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_attrList946 = new BitSet(new long[]{0x0010000004000000L,0x0000010000040000L});
-    public static final BitSet FOLLOW_attr_in_attrList948 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_STATIC_in_attr973 = new BitSet(new long[]{0x0010000004000000L,0x0000000000040000L});
-    public static final BitSet FOLLOW_T_OBS_in_attr980 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_CTRL_in_attr986 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_attr997 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_attr1000 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_attr1004 = new BitSet(new long[]{0x0000020000000002L});
-    public static final BitSet FOLLOW_T_EQUAL_in_attr1007 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_attr1011 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_method_in_methodList1033 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_methodList1036 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_method_in_methodList1038 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_method1060 = new BitSet(new long[]{0x0000020000100000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_method1068 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_methodParameterList_in_method1070 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_method1074 = new BitSet(new long[]{0x0000020000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_method1082 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_method1086 = new BitSet(new long[]{0x0000020000000000L});
-    public static final BitSet FOLLOW_T_EQUAL_in_method1096 = new BitSet(new long[]{0x4010000000008040L,0x0008008820000010L});
-    public static final BitSet FOLLOW_T_VAR_in_method1104 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_localActionVars_in_method1106 = new BitSet(new long[]{0x0000000000000000L,0x0400000000000000L});
-    public static final BitSet FOLLOW_122_in_method1109 = new BitSet(new long[]{0x4010000000008040L,0x0008008820000010L});
-    public static final BitSet FOLLOW_actionBody_in_method1384 = new BitSet(new long[]{0x0000010000000000L});
-    public static final BitSet FOLLOW_T_END_in_method1392 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_methodParameterList1416 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_methodParameterList1418 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_methodParameterList1422 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_T_COMMA_in_methodParameterList1430 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_methodParameterList1434 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_methodParameterList1436 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_methodParameterList1440 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_namedAction_in_namedActionList1467 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_namedActionList1470 = new BitSet(new long[]{0x0010000004000000L,0x0000000000040000L});
-    public static final BitSet FOLLOW_namedAction_in_namedActionList1472 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_CTRL_in_namedAction1510 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_OBS_in_namedAction1515 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_namedAction1527 = new BitSet(new long[]{0x0000020000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_namedAction1535 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_methodParameterList_in_namedAction1537 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_namedAction1541 = new BitSet(new long[]{0x0000020000000000L});
-    public static final BitSet FOLLOW_T_EQUAL_in_namedAction1548 = new BitSet(new long[]{0x0000000000000000L,0x0008000020000000L});
-    public static final BitSet FOLLOW_T_VAR_in_namedAction1554 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_localActionVars_in_namedAction1556 = new BitSet(new long[]{0x0000000000000000L,0x0000000020000000L});
-    public static final BitSet FOLLOW_discreteActionBody_in_namedAction1567 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_localActionVars1599 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_localActionVars1601 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_localActionVars1605 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_localActionVars1614 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_localActionVars1618 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_localActionVars1620 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_localActionVars1624 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_discreteActionBody_in_anonymousAction1659 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_CONT_in_continuousActionBody1684 = new BitSet(new long[]{0x0000000000000000L,0x0000000020000000L});
-    public static final BitSet FOLLOW_T_REQUIRES_in_continuousActionBody1686 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_continuousActionBody1690 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_continuousActionBody1692 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_qualConstraintList_in_continuousActionBody1699 = new BitSet(new long[]{0x0000010000000000L});
-    public static final BitSet FOLLOW_T_END_in_continuousActionBody1704 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_qualConstraint_in_qualConstraintList1732 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_T_COMMA_in_qualConstraintList1739 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_qualConstraint_in_qualConstraintList1743 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualConstraint1774 = new BitSet(new long[]{0x0000020000000000L});
-    public static final BitSet FOLLOW_T_EQUAL_in_qualConstraint1776 = new BitSet(new long[]{0x0010000010000000L});
-    public static final BitSet FOLLOW_T_DERIV_in_qualConstraint1783 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualConstraint1787 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualConstraint1822 = new BitSet(new long[]{0x0000000020000002L,0x0000080004000000L});
-    public static final BitSet FOLLOW_T_SUM_in_qualConstraint1853 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_DIFF_in_qualConstraint1870 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_PROD_in_qualConstraint1887 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualConstraint1916 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_REQUIRES_in_discreteActionBody2010 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_discreteActionBody2014 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_discreteActionBody2016 = new BitSet(new long[]{0x4010000000008040L,0x0008008820000010L});
-    public static final BitSet FOLLOW_actionBody_in_discreteActionBody2023 = new BitSet(new long[]{0x0000010000000000L});
-    public static final BitSet FOLLOW_T_END_in_discreteActionBody2028 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_actionBlockParallel_in_actionBlock2071 = new BitSet(new long[]{0x0000000000000002L,0x0000000002000000L});
-    public static final BitSet FOLLOW_T_PRIO_in_actionBlock2075 = new BitSet(new long[]{0x0010000000000000L,0x0008008020000010L});
-    public static final BitSet FOLLOW_actionBlockParallel_in_actionBlock2077 = new BitSet(new long[]{0x0000000000000002L,0x0000000002000000L});
-    public static final BitSet FOLLOW_actionBlockSequential_in_actionBlockParallel2110 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
-    public static final BitSet FOLLOW_T_NONDET_in_actionBlockParallel2114 = new BitSet(new long[]{0x0010000000000000L,0x0008008020000010L});
-    public static final BitSet FOLLOW_actionBlockSequential_in_actionBlockParallel2116 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
-    public static final BitSet FOLLOW_T_VAR_in_actionBlockSequential2150 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_blockvarlist_in_actionBlockSequential2154 = new BitSet(new long[]{0x0000000000100000L,0x0040000000000000L});
-    public static final BitSet FOLLOW_118_in_actionBlockSequential2158 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_actionBlockSequential2162 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_actionBlockSequential2169 = new BitSet(new long[]{0x0010000000000000L,0x0000008020000010L});
-    public static final BitSet FOLLOW_actionBlockParen_in_actionBlockSequential2178 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_actionBlockSequential2182 = new BitSet(new long[]{0x0010000000000000L,0x0000008020000010L});
-    public static final BitSet FOLLOW_actionBlockParen_in_actionBlockSequential2184 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_LPAREN_in_actionBlockParen2208 = new BitSet(new long[]{0x0010000000000000L,0x0008008020000010L});
-    public static final BitSet FOLLOW_actionBlock_in_actionBlockParen2210 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_actionBlockParen2213 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_anonymousOrNamedAction_in_actionBlockParen2218 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_anonymousAction_in_anonymousOrNamedAction2235 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_anonymousOrNamedAction2244 = new BitSet(new long[]{0x0000C00000000002L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_anonymousOrNamedAction2258 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220A40016530L});
-    public static final BitSet FOLLOW_methodCallParams_in_anonymousOrNamedAction2263 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_anonymousOrNamedAction2265 = new BitSet(new long[]{0x0000C00000000002L});
-    public static final BitSet FOLLOW_set_in_anonymousOrNamedAction2283 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_anonymousOrNamedAction2289 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_anonymousOrNamedAction2293 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_anonymousOrNamedAction2295 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_SKIP_in_anonymousOrNamedAction2306 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_blockvar_in_blockvarlist2322 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_blockvarlist2327 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_blockvar_in_blockvarlist2329 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_blockvar2349 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_blockvar2352 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_blockvar2356 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_actionBodyParallel_in_actionBody2391 = new BitSet(new long[]{0x0000000000000002L,0x0000000002000000L});
-    public static final BitSet FOLLOW_T_PRIO_in_actionBody2395 = new BitSet(new long[]{0x4010000000008040L,0x0008008820000010L});
-    public static final BitSet FOLLOW_actionBodyParallel_in_actionBody2397 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_actionBodySequential_in_actionBodyParallel2432 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
-    public static final BitSet FOLLOW_T_NONDET_in_actionBodyParallel2438 = new BitSet(new long[]{0x4010000000008040L,0x0008008820000010L});
-    public static final BitSet FOLLOW_actionBodySequential_in_actionBodyParallel2442 = new BitSet(new long[]{0x0000000000000002L,0x0000000000008000L});
-    public static final BitSet FOLLOW_T_VAR_in_actionBodySequential2478 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_blockvarlist_in_actionBodySequential2482 = new BitSet(new long[]{0x0000000000100000L,0x0040000000000000L});
-    public static final BitSet FOLLOW_118_in_actionBodySequential2486 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_actionBodySequential2490 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_actionBodySequential2497 = new BitSet(new long[]{0x4010000000008040L,0x0000008820000010L});
-    public static final BitSet FOLLOW_actionBodyParen_in_actionBodySequential2505 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_actionBodySequential2509 = new BitSet(new long[]{0x4010000000008040L,0x0000008820000010L});
-    public static final BitSet FOLLOW_actionBodyParen_in_actionBodySequential2511 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
-    public static final BitSet FOLLOW_T_LPAREN_in_actionBodyParen2539 = new BitSet(new long[]{0x4010000000008040L,0x0008008820000010L});
-    public static final BitSet FOLLOW_actionBody_in_actionBodyParen2541 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_actionBodyParen2545 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_statement_in_actionBodyParen2552 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_ABORT_in_statement2580 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_SKIP_in_statement2587 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_BREAK_in_statement2594 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_KILL_in_statement2601 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_statement2603 = new BitSet(new long[]{0x0010000000000000L,0x0000000800000000L});
-    public static final BitSet FOLLOW_set_in_statement2607 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_statement2615 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_discreteActionBody_in_statement2625 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_reference_in_statement2634 = new BitSet(new long[]{0x0000000000200402L});
-    public static final BitSet FOLLOW_T_ASSIGNMENT_in_statement2662 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_statement2667 = new BitSet(new long[]{0x0000000000000002L,0x0010000000000000L});
-    public static final BitSet FOLLOW_T_WITH_in_statement2687 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_statement2691 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_COMMA_in_statement2744 = new BitSet(new long[]{0x0010000000000000L,0x0000000800000000L});
-    public static final BitSet FOLLOW_reference_in_statement2748 = new BitSet(new long[]{0x0000000000200400L});
-    public static final BitSet FOLLOW_T_ASSIGNMENT_in_statement2763 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_statement2785 = new BitSet(new long[]{0x0000000000200000L});
-    public static final BitSet FOLLOW_T_COMMA_in_statement2804 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_statement2808 = new BitSet(new long[]{0x0000000000200002L,0x0010000000000000L});
-    public static final BitSet FOLLOW_T_WITH_in_statement2822 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_statement2826 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_atomExpression_in_expression2901 = new BitSet(new long[]{0x11A6021920802202L,0x00040C2184A31C03L});
-    public static final BitSet FOLLOW_binoperator_in_expression2914 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_atomExpression_in_expression2922 = new BitSet(new long[]{0x11A6021920802202L,0x00040C2184A31C03L});
-    public static final BitSet FOLLOW_T_BIIMPLIES_in_binoperator2955 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_GREATER_in_binoperator2964 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_GREATEREQUAL_in_binoperator2974 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LESS_in_binoperator2983 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LESSEQUAL_in_binoperator2993 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_EQUAL_in_binoperator3002 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_NOTEQUAL_in_binoperator3014 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IMPLIES_in_binoperator3025 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_MINUS_in_binoperator3034 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_SUM_in_binoperator3044 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IN_in_binoperator3054 = new BitSet(new long[]{0x0000000000000002L,0x0000004000000000L});
-    public static final BitSet FOLLOW_T_SET_in_binoperator3056 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_NOT_in_binoperator3067 = new BitSet(new long[]{0x0100000000000000L});
-    public static final BitSet FOLLOW_T_IN_in_binoperator3069 = new BitSet(new long[]{0x0000000000000002L,0x0000004000000000L});
-    public static final BitSet FOLLOW_T_SET_in_binoperator3071 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_SUBSET_in_binoperator3082 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_OR_in_binoperator3092 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DIV_in_binoperator3101 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_PROD_in_binoperator3110 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IDIV_in_binoperator3120 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_MOD_in_binoperator3130 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_UNION_in_binoperator3140 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DIFF_in_binoperator3151 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_INTER_in_binoperator3162 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_AND_in_binoperator3173 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_POW_in_binoperator3188 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_CONC_in_binoperator3203 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DOMRESBY_in_binoperator3216 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DOMRESTO_in_binoperator3226 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_RNGRESBY_in_binoperator3236 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_RNGRESTO_in_binoperator3246 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_MUNION_in_binoperator3256 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_SEQMOD_MAPOVERRIDE_in_binoperator3266 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_op_un_in_atomExpression3304 = new BitSet(new long[]{0x20112C0000020000L,0x2001020800006030L});
-    public static final BitSet FOLLOW_identifierExpression_in_atomExpression3321 = new BitSet(new long[]{0x0000000000000002L,0x0200000000000000L});
-    public static final BitSet FOLLOW_qvalExpression_in_atomExpression3332 = new BitSet(new long[]{0x0000000000000002L,0x0200000000000000L});
-    public static final BitSet FOLLOW_constant_in_atomExpression3343 = new BitSet(new long[]{0x0000000000000002L,0x0200000000000000L});
-    public static final BitSet FOLLOW_initializedComplexType_in_atomExpression3354 = new BitSet(new long[]{0x0000000000000002L,0x0200000000000000L});
-    public static final BitSet FOLLOW_quantifierExpression_in_atomExpression3366 = new BitSet(new long[]{0x0000000000000002L,0x0200000000000000L});
-    public static final BitSet FOLLOW_T_LPAREN_in_atomExpression3375 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_atomExpression3379 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_atomExpression3381 = new BitSet(new long[]{0x0000000000000002L,0x0200000000400030L});
-    public static final BitSet FOLLOW_T_POINT_in_atomExpression3404 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_atomExpression3416 = new BitSet(new long[]{0x0000000000000002L,0x0200000000400030L});
-    public static final BitSet FOLLOW_accessExpression_in_atomExpression3440 = new BitSet(new long[]{0x0000000000000002L,0x0200000000000000L});
-    public static final BitSet FOLLOW_accessExpression_in_atomExpression3460 = new BitSet(new long[]{0x0000000000000002L,0x0200000000000000L});
-    public static final BitSet FOLLOW_121_in_atomExpression3479 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_atomExpression3483 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IF_in_atomExpression3504 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_atomExpression3508 = new BitSet(new long[]{0x0000000000000000L,0x0000400000000000L});
-    public static final BitSet FOLLOW_T_THEN_in_atomExpression3510 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_atomExpression3514 = new BitSet(new long[]{0x0000008000000000L});
-    public static final BitSet FOLLOW_T_ELSE_in_atomExpression3516 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_atomExpression3520 = new BitSet(new long[]{0x0000010000000000L});
-    public static final BitSet FOLLOW_T_END_in_atomExpression3522 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_set_in_quantifierExpression3554 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_quantifierExpression3571 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_quantifierExpression3574 = new BitSet(new long[]{0x08101000000A4000L});
-    public static final BitSet FOLLOW_simpleType_in_quantifierExpression3578 = new BitSet(new long[]{0x0000000000300000L});
-    public static final BitSet FOLLOW_T_COMMA_in_quantifierExpression3589 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_quantifierExpression3593 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_quantifierExpression3596 = new BitSet(new long[]{0x08101000000A4000L});
-    public static final BitSet FOLLOW_simpleType_in_quantifierExpression3600 = new BitSet(new long[]{0x0000000000300000L});
-    public static final BitSet FOLLOW_T_COLON_in_quantifierExpression3610 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_quantifierExpression3612 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_quantifierExpression3616 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_quantifierExpression3618 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_TRUE_in_constant3652 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_FALSE_in_constant3660 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_NIL_in_constant3667 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_SELF_in_constant3675 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_FLOATNUMBER_in_constant3686 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_INTNUMBER_in_constant3695 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_STRINGLITERAL_in_constant3704 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_initializedListType_in_initializedComplexType3731 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_initializedSetType_in_initializedComplexType3740 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_NEW_in_initializedComplexType3748 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_initializedComplexType3750 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_initializedComplexType3754 = new BitSet(new long[]{0x0000000000200000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_COMMA_in_initializedComplexType3766 = new BitSet(new long[]{0x0000000000000000L,0x0000020000000000L});
-    public static final BitSet FOLLOW_T_STRINGLITERAL_in_initializedComplexType3771 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_initializedComplexType3773 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_RPAREN_in_initializedComplexType3782 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_initializedListType3813 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_initializedListType3817 = new BitSet(new long[]{0x0000000000201000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_COMMA_in_initializedListType3828 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_initializedListType3832 = new BitSet(new long[]{0x0000000000200000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_listComprehension_in_initializedListType3844 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_RSQPAREN_in_initializedListType3852 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_BAR_in_listComprehension3883 = new BitSet(new long[]{0x0000000000000000L,0x0008000000000000L});
-    public static final BitSet FOLLOW_T_VAR_in_listComprehension3885 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_listComprehension3891 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_listComprehension3894 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_listComprehension3898 = new BitSet(new long[]{0x0000000000000002L,0x0040001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_listComprehension3907 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_listComprehension3911 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_listComprehension3916 = new BitSet(new long[]{0x0000000000000002L,0x0040001000000000L});
-    public static final BitSet FOLLOW_118_in_listComprehension3926 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_listComprehension3932 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_CBRL_in_initializedSetType3958 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-    public static final BitSet FOLLOW_T_MAPS_in_initializedSetType3960 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_T_CBRR_in_initializedSetType3962 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_initializedSet_in_initializedSetType3973 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_CBRL_in_initializedSet3999 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_initializedSet4003 = new BitSet(new long[]{0x0000000000241000L,0x0000000000000080L});
-    public static final BitSet FOLLOW_T_COMMA_in_initializedSet4033 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_initializedSet4037 = new BitSet(new long[]{0x0000000000240000L});
-    public static final BitSet FOLLOW_map_in_initializedSet4055 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_setComprehension_in_initializedSet4068 = new BitSet(new long[]{0x0000000000040000L});
-    public static final BitSet FOLLOW_T_CBRR_in_initializedSet4078 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_MAPS_in_map4114 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_map4118 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_T_COMMA_in_map4126 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_map4130 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000080L});
-    public static final BitSet FOLLOW_T_MAPS_in_map4132 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_map4136 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_T_BAR_in_setComprehension4158 = new BitSet(new long[]{0x0000000000000000L,0x0008000000000000L});
-    public static final BitSet FOLLOW_T_VAR_in_setComprehension4160 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_setComprehension4164 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_setComprehension4167 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_setComprehension4171 = new BitSet(new long[]{0x0000000000000002L,0x0040001000000000L});
-    public static final BitSet FOLLOW_T_SEMICOLON_in_setComprehension4181 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_setComprehension4185 = new BitSet(new long[]{0x0000000000100000L});
-    public static final BitSet FOLLOW_T_COLON_in_setComprehension4187 = new BitSet(new long[]{0x08101000000A4000L,0x0000000008000078L});
-    public static final BitSet FOLLOW_complexType_in_setComprehension4191 = new BitSet(new long[]{0x0000000000000002L,0x0040001000000000L});
-    public static final BitSet FOLLOW_118_in_setComprehension4205 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_setComprehension4211 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_125_in_qvalExpression4246 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_qvalExpression4248 = new BitSet(new long[]{0x0410000000000000L,0x0000000800004400L});
-    public static final BitSet FOLLOW_T_NIL_in_qvalExpression4262 = new BitSet(new long[]{0x0000000000200000L});
-    public static final BitSet FOLLOW_qualifiedIdentifier_in_qvalExpression4283 = new BitSet(new long[]{0x0000000000200000L,0x0000000010000000L});
-    public static final BitSet FOLLOW_T_MINUS_in_qvalExpression4302 = new BitSet(new long[]{0x0400000000000000L});
-    public static final BitSet FOLLOW_T_INFTY_in_qvalExpression4308 = new BitSet(new long[]{0x0000000000200000L,0x0000000010000000L});
-    public static final BitSet FOLLOW_T_RANGETO_in_qvalExpression4326 = new BitSet(new long[]{0x0410000000000000L,0x0000000800000000L});
-    public static final BitSet FOLLOW_qualifiedIdentifier_in_qvalExpression4336 = new BitSet(new long[]{0x0000000000200000L});
-    public static final BitSet FOLLOW_T_INFTY_in_qvalExpression4354 = new BitSet(new long[]{0x0000000000200000L});
-    public static final BitSet FOLLOW_T_COMMA_in_qvalExpression4378 = new BitSet(new long[]{0x0000000000000000L,0x5800000000004000L});
-    public static final BitSet FOLLOW_T_NIL_in_qvalExpression4388 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_126_in_qvalExpression4404 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_124_in_qvalExpression4417 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_123_in_qvalExpression4430 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_qvalExpression4452 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_identifierExpression4485 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_identifierExpression4487 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220A40016530L});
-    public static final BitSet FOLLOW_methodCallParams_in_identifierExpression4491 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_identifierExpression4493 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_reference_in_identifierExpression4508 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_qualifiedIdentifier_in_reference4546 = new BitSet(new long[]{0x0000C00000000002L,0x0080000001000030L});
-    public static final BitSet FOLLOW_accessExpression_in_reference4558 = new BitSet(new long[]{0x0000C00000000002L,0x0080000001000000L});
-    public static final BitSet FOLLOW_T_PRIMED_in_reference4583 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_119_in_reference4599 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_reference4601 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_reference4605 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_reference4607 = new BitSet(new long[]{0x0000C00000000000L});
-    public static final BitSet FOLLOW_set_in_reference4613 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
-    public static final BitSet FOLLOW_T_LPAREN_in_reference4619 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_reference4623 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_reference4625 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LSQPAREN_in_accessExpression4670 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_accessExpression4674 = new BitSet(new long[]{0x0000000000000000L,0x0000000400000000L});
-    public static final BitSet FOLLOW_T_RSQPAREN_in_accessExpression4676 = new BitSet(new long[]{0x0000000000000002L,0x0000000000400030L});
-    public static final BitSet FOLLOW_T_LPAREN_in_accessExpression4703 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220A40016530L});
-    public static final BitSet FOLLOW_methodCallParams_in_accessExpression4707 = new BitSet(new long[]{0x0000000000000000L,0x0000000200000000L});
-    public static final BitSet FOLLOW_T_RPAREN_in_accessExpression4709 = new BitSet(new long[]{0x0000000000000002L,0x0000000000400030L});
-    public static final BitSet FOLLOW_T_POINT_in_accessExpression4731 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_accessExpression4739 = new BitSet(new long[]{0x0000000000000002L,0x0000000000400030L});
-    public static final BitSet FOLLOW_accessExpression_in_accessExpression4755 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_SELF_in_qualifiedIdentifier4794 = new BitSet(new long[]{0x0000000000000000L,0x0000000000400000L});
-    public static final BitSet FOLLOW_T_POINT_in_qualifiedIdentifier4796 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4808 = new BitSet(new long[]{0x0000000000000002L,0x0000000000400000L});
-    public static final BitSet FOLLOW_T_POINT_in_qualifiedIdentifier4817 = new BitSet(new long[]{0x0010000000000000L});
-    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4821 = new BitSet(new long[]{0x0000000000000002L,0x0000000000400000L});
-    public static final BitSet FOLLOW_expression_in_methodCallParams4854 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_T_COMMA_in_methodCallParams4859 = new BitSet(new long[]{0xA2592C6488030080L,0x2001220840016530L});
-    public static final BitSet FOLLOW_expression_in_methodCallParams4863 = new BitSet(new long[]{0x0000000000200002L});
-    public static final BitSet FOLLOW_op_un_set_list_in_op_un4902 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_op_un_map_in_op_un4911 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_MINUS_in_op_un4919 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_NOT_in_op_un4927 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_ABS_in_op_un4935 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_CARD_in_op_un_set_list4962 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DCONC_in_op_un_set_list4973 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DINTER_in_op_un_set_list4984 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DUNION_in_op_un_set_list4994 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_ELEMS_in_op_un_set_list5004 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_HEAD_in_op_un_set_list5015 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_INDS_in_op_un_set_list5026 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_LEN_in_op_un_set_list5037 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_TAIL_in_op_un_set_list5048 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_DOM_in_op_un_map5077 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_RNG_in_op_un_map5088 = new BitSet(new long[]{0x0000000000000002L});
-    public static final BitSet FOLLOW_T_MERGE_in_op_un_map5099 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_LPAREN_in_complexType492 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_complexType496 = new BitSet(new long[]{0x0000000000200000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_COMMA_in_complexType505 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_complexType509 = new BitSet(new long[]{0x0000000000200000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_complexType516 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_simpleType_in_complexType529 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_BOOL_in_simpleType562 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_INT_in_simpleType575 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
+    public static final BitSet FOLLOW_T_LSQPAREN_in_simpleType577 = new BitSet(new long[]{0x1208000000000000L});
+    public static final BitSet FOLLOW_set_in_simpleType581 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000000L});
+    public static final BitSet FOLLOW_T_RANGETO_in_simpleType589 = new BitSet(new long[]{0x1208000000000000L});
+    public static final BitSet FOLLOW_set_in_simpleType593 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_RSQPAREN_in_simpleType601 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_FLOAT_in_simpleType620 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000010L});
+    public static final BitSet FOLLOW_T_LSQPAREN_in_simpleType623 = new BitSet(new long[]{0x0208100000000000L});
+    public static final BitSet FOLLOW_set_in_simpleType627 = new BitSet(new long[]{0x0000000000000000L,0x0000000004000000L});
+    public static final BitSet FOLLOW_T_RANGETO_in_simpleType635 = new BitSet(new long[]{0x0208100000000000L});
+    public static final BitSet FOLLOW_set_in_simpleType639 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_RSQPAREN_in_simpleType647 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_CHAR_in_simpleType665 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_CBRL_in_simpleType681 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_simpleType685 = new BitSet(new long[]{0x0000010000240000L});
+    public static final BitSet FOLLOW_T_EQUAL_in_simpleType688 = new BitSet(new long[]{0x1000000000000000L});
+    public static final BitSet FOLLOW_T_INTNUMBER_in_simpleType692 = new BitSet(new long[]{0x0000000000240000L});
+    public static final BitSet FOLLOW_T_COMMA_in_simpleType703 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_simpleType707 = new BitSet(new long[]{0x0000010000240000L});
+    public static final BitSet FOLLOW_T_EQUAL_in_simpleType710 = new BitSet(new long[]{0x1000000000000000L});
+    public static final BitSet FOLLOW_T_INTNUMBER_in_simpleType714 = new BitSet(new long[]{0x0000000000240000L});
+    public static final BitSet FOLLOW_T_CBRR_in_simpleType722 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_simpleType733 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_AUTOCONS_in_ooActionSystem776 = new BitSet(new long[]{0x0000000000000000L,0x0000040000000000L});
+    public static final BitSet FOLLOW_T_SYSTEM_in_ooActionSystem785 = new BitSet(new long[]{0x0000000000000000L,0x0200000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_ooActionSystem788 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_ooActionSystem792 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_ooActionSystem794 = new BitSet(new long[]{0x0000000000000000L,0x0200000000000000L});
+    public static final BitSet FOLLOW_121_in_ooActionSystem807 = new BitSet(new long[]{0x0000000100000100L,0x0042000000000100L});
+    public static final BitSet FOLLOW_T_VAR_in_ooActionSystem813 = new BitSet(new long[]{0x0008000002000000L,0x0000004000020000L});
+    public static final BitSet FOLLOW_attrList_in_ooActionSystem815 = new BitSet(new long[]{0x0000000100000100L,0x0040000000000100L});
+    public static final BitSet FOLLOW_T_METHODS_in_ooActionSystem823 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_methodList_in_ooActionSystem825 = new BitSet(new long[]{0x0000000100000100L,0x0040000000000000L});
+    public static final BitSet FOLLOW_T_ACTIONS_in_ooActionSystem833 = new BitSet(new long[]{0x0008000002000000L,0x0000000000020000L});
+    public static final BitSet FOLLOW_namedActionList_in_ooActionSystem835 = new BitSet(new long[]{0x0000000100000000L,0x0040000000000000L});
+    public static final BitSet FOLLOW_T_DO_in_ooActionSystem843 = new BitSet(new long[]{0x0008000000000000L,0x0002002008040008L});
+    public static final BitSet FOLLOW_actionBlock_in_ooActionSystem848 = new BitSet(new long[]{0x0000000000000000L,0x0000000000040000L});
+    public static final BitSet FOLLOW_T_OD_in_ooActionSystem855 = new BitSet(new long[]{0x0000000000000000L,0x0040000000000000L});
+    public static final BitSet FOLLOW_118_in_ooActionSystem861 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_attr_in_attrList892 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_attrList895 = new BitSet(new long[]{0x0008000002000000L,0x0000004000020000L});
+    public static final BitSet FOLLOW_attr_in_attrList897 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_STATIC_in_attr922 = new BitSet(new long[]{0x0008000002000000L,0x0000000000020000L});
+    public static final BitSet FOLLOW_T_OBS_in_attr929 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_CTRL_in_attr935 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_attr946 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_attr949 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_attr953 = new BitSet(new long[]{0x0000010000000002L});
+    public static final BitSet FOLLOW_T_EQUAL_in_attr956 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_attr960 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_method_in_methodList982 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_methodList985 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_method_in_methodList987 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_method1009 = new BitSet(new long[]{0x0000010000100000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_method1017 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_methodParameterList_in_method1019 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_method1023 = new BitSet(new long[]{0x0000010000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_method1031 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_method1035 = new BitSet(new long[]{0x0000010000000000L});
+    public static final BitSet FOLLOW_T_EQUAL_in_method1045 = new BitSet(new long[]{0x2008000000008040L,0x0002002208000008L});
+    public static final BitSet FOLLOW_T_VAR_in_method1053 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_localActionVars_in_method1055 = new BitSet(new long[]{0x0000000000000000L,0x0100000000000000L});
+    public static final BitSet FOLLOW_120_in_method1058 = new BitSet(new long[]{0x2008000000008040L,0x0002002208000008L});
+    public static final BitSet FOLLOW_actionBody_in_method1333 = new BitSet(new long[]{0x0000008000000000L});
+    public static final BitSet FOLLOW_T_END_in_method1341 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_methodParameterList1365 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_methodParameterList1367 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_methodParameterList1371 = new BitSet(new long[]{0x0000000000200002L});
+    public static final BitSet FOLLOW_T_COMMA_in_methodParameterList1379 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_methodParameterList1383 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_methodParameterList1385 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_methodParameterList1389 = new BitSet(new long[]{0x0000000000200002L});
+    public static final BitSet FOLLOW_namedAction_in_namedActionList1416 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_namedActionList1419 = new BitSet(new long[]{0x0008000002000000L,0x0000000000020000L});
+    public static final BitSet FOLLOW_namedAction_in_namedActionList1421 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_CTRL_in_namedAction1446 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_OBS_in_namedAction1451 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_namedAction1463 = new BitSet(new long[]{0x0000010000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_namedAction1471 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_methodParameterList_in_namedAction1473 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_namedAction1477 = new BitSet(new long[]{0x0000010000000000L});
+    public static final BitSet FOLLOW_T_EQUAL_in_namedAction1484 = new BitSet(new long[]{0x0000000000000000L,0x0002000008000000L});
+    public static final BitSet FOLLOW_T_VAR_in_namedAction1490 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_localActionVars_in_namedAction1492 = new BitSet(new long[]{0x0000000000000000L,0x0000000008000000L});
+    public static final BitSet FOLLOW_discreteActionBody_in_namedAction1503 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_localActionVars1535 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_localActionVars1537 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_localActionVars1541 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_localActionVars1550 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_localActionVars1554 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_localActionVars1556 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_localActionVars1560 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_discreteActionBody_in_anonymousAction1593 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_REQUIRES_in_discreteActionBody1624 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_discreteActionBody1628 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_discreteActionBody1630 = new BitSet(new long[]{0x2008000000008040L,0x0002002208000008L});
+    public static final BitSet FOLLOW_actionBody_in_discreteActionBody1637 = new BitSet(new long[]{0x0000008000000000L});
+    public static final BitSet FOLLOW_T_END_in_discreteActionBody1642 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_actionBlockParallel_in_actionBlock1685 = new BitSet(new long[]{0x0000000000000002L,0x0000000001000000L});
+    public static final BitSet FOLLOW_T_PRIO_in_actionBlock1689 = new BitSet(new long[]{0x0008000000000000L,0x0002002008000008L});
+    public static final BitSet FOLLOW_actionBlockParallel_in_actionBlock1691 = new BitSet(new long[]{0x0000000000000002L,0x0000000001000000L});
+    public static final BitSet FOLLOW_actionBlockSequential_in_actionBlockParallel1724 = new BitSet(new long[]{0x0000000000000002L,0x0000000000004000L});
+    public static final BitSet FOLLOW_T_NONDET_in_actionBlockParallel1728 = new BitSet(new long[]{0x0008000000000000L,0x0002002008000008L});
+    public static final BitSet FOLLOW_actionBlockSequential_in_actionBlockParallel1730 = new BitSet(new long[]{0x0000000000000002L,0x0000000000004000L});
+    public static final BitSet FOLLOW_T_VAR_in_actionBlockSequential1764 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_blockvarlist_in_actionBlockSequential1768 = new BitSet(new long[]{0x0000000000100000L,0x0010000000000000L});
+    public static final BitSet FOLLOW_116_in_actionBlockSequential1772 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_actionBlockSequential1776 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_actionBlockSequential1783 = new BitSet(new long[]{0x0008000000000000L,0x0000002008000008L});
+    public static final BitSet FOLLOW_actionBlockParen_in_actionBlockSequential1792 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_actionBlockSequential1796 = new BitSet(new long[]{0x0008000000000000L,0x0000002008000008L});
+    public static final BitSet FOLLOW_actionBlockParen_in_actionBlockSequential1798 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_LPAREN_in_actionBlockParen1822 = new BitSet(new long[]{0x0008000000000000L,0x0002002008000008L});
+    public static final BitSet FOLLOW_actionBlock_in_actionBlockParen1824 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_actionBlockParen1827 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_anonymousOrNamedAction_in_actionBlockParen1832 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_anonymousAction_in_anonymousOrNamedAction1849 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_anonymousOrNamedAction1858 = new BitSet(new long[]{0x0000600000000002L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_anonymousOrNamedAction1872 = new BitSet(new long[]{0x512C963244030080L,0x000048829000B298L});
+    public static final BitSet FOLLOW_methodCallParams_in_anonymousOrNamedAction1877 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_anonymousOrNamedAction1879 = new BitSet(new long[]{0x0000600000000002L});
+    public static final BitSet FOLLOW_set_in_anonymousOrNamedAction1897 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_anonymousOrNamedAction1903 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_anonymousOrNamedAction1907 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_anonymousOrNamedAction1909 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_SKIP_in_anonymousOrNamedAction1920 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_blockvar_in_blockvarlist1936 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_blockvarlist1941 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_blockvar_in_blockvarlist1943 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_blockvar1963 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_blockvar1966 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_blockvar1970 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_actionBodyParallel_in_actionBody2005 = new BitSet(new long[]{0x0000000000000002L,0x0000000001000000L});
+    public static final BitSet FOLLOW_T_PRIO_in_actionBody2009 = new BitSet(new long[]{0x2008000000008040L,0x0002002208000008L});
+    public static final BitSet FOLLOW_actionBodyParallel_in_actionBody2011 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_actionBodySequential_in_actionBodyParallel2046 = new BitSet(new long[]{0x0000000000000002L,0x0000000000004000L});
+    public static final BitSet FOLLOW_T_NONDET_in_actionBodyParallel2052 = new BitSet(new long[]{0x2008000000008040L,0x0002002208000008L});
+    public static final BitSet FOLLOW_actionBodySequential_in_actionBodyParallel2056 = new BitSet(new long[]{0x0000000000000002L,0x0000000000004000L});
+    public static final BitSet FOLLOW_T_VAR_in_actionBodySequential2092 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_blockvarlist_in_actionBodySequential2096 = new BitSet(new long[]{0x0000000000100000L,0x0010000000000000L});
+    public static final BitSet FOLLOW_116_in_actionBodySequential2100 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_actionBodySequential2104 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_actionBodySequential2111 = new BitSet(new long[]{0x2008000000008040L,0x0000002208000008L});
+    public static final BitSet FOLLOW_actionBodyParen_in_actionBodySequential2119 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_actionBodySequential2123 = new BitSet(new long[]{0x2008000000008040L,0x0000002208000008L});
+    public static final BitSet FOLLOW_actionBodyParen_in_actionBodySequential2125 = new BitSet(new long[]{0x0000000000000002L,0x0000000400000000L});
+    public static final BitSet FOLLOW_T_LPAREN_in_actionBodyParen2153 = new BitSet(new long[]{0x2008000000008040L,0x0002002208000008L});
+    public static final BitSet FOLLOW_actionBody_in_actionBodyParen2155 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_actionBodyParen2159 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_statement_in_actionBodyParen2166 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_ABORT_in_statement2194 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_SKIP_in_statement2201 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_BREAK_in_statement2208 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_KILL_in_statement2215 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_statement2217 = new BitSet(new long[]{0x0008000000000000L,0x0000000200000000L});
+    public static final BitSet FOLLOW_set_in_statement2221 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_statement2229 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_discreteActionBody_in_statement2239 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_reference_in_statement2248 = new BitSet(new long[]{0x0000000000200402L});
+    public static final BitSet FOLLOW_T_ASSIGNMENT_in_statement2276 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_statement2281 = new BitSet(new long[]{0x0000000000000002L,0x0004000000000000L});
+    public static final BitSet FOLLOW_T_WITH_in_statement2301 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_statement2305 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_COMMA_in_statement2358 = new BitSet(new long[]{0x0008000000000000L,0x0000000200000000L});
+    public static final BitSet FOLLOW_reference_in_statement2362 = new BitSet(new long[]{0x0000000000200400L});
+    public static final BitSet FOLLOW_T_ASSIGNMENT_in_statement2377 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_statement2399 = new BitSet(new long[]{0x0000000000200000L});
+    public static final BitSet FOLLOW_T_COMMA_in_statement2418 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_statement2422 = new BitSet(new long[]{0x0000000000200002L,0x0004000000000000L});
+    public static final BitSet FOLLOW_T_WITH_in_statement2436 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_statement2440 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_atomExpression_in_expression2515 = new BitSet(new long[]{0x88D3010C90802202L,0x0001030862518E01L});
+    public static final BitSet FOLLOW_binoperator_in_expression2528 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_atomExpression_in_expression2536 = new BitSet(new long[]{0x88D3010C90802202L,0x0001030862518E01L});
+    public static final BitSet FOLLOW_T_BIIMPLIES_in_binoperator2569 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_GREATER_in_binoperator2578 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_GREATEREQUAL_in_binoperator2588 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_LESS_in_binoperator2597 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_LESSEQUAL_in_binoperator2607 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_EQUAL_in_binoperator2616 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_NOTEQUAL_in_binoperator2628 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IMPLIES_in_binoperator2639 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_MINUS_in_binoperator2648 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_SUM_in_binoperator2658 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IN_in_binoperator2668 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
+    public static final BitSet FOLLOW_T_SET_in_binoperator2670 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_NOT_in_binoperator2681 = new BitSet(new long[]{0x0080000000000000L});
+    public static final BitSet FOLLOW_T_IN_in_binoperator2683 = new BitSet(new long[]{0x0000000000000002L,0x0000001000000000L});
+    public static final BitSet FOLLOW_T_SET_in_binoperator2685 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_SUBSET_in_binoperator2696 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_OR_in_binoperator2706 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DIV_in_binoperator2715 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_PROD_in_binoperator2724 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IDIV_in_binoperator2734 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_MOD_in_binoperator2744 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_UNION_in_binoperator2754 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DIFF_in_binoperator2765 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_INTER_in_binoperator2776 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_AND_in_binoperator2787 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_POW_in_binoperator2802 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_CONC_in_binoperator2817 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DOMRESBY_in_binoperator2830 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DOMRESTO_in_binoperator2840 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_RNGRESBY_in_binoperator2850 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_RNGRESTO_in_binoperator2860 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_MUNION_in_binoperator2870 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_SEQMOD_MAPOVERRIDE_in_binoperator2880 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_op_un_in_atomExpression2918 = new BitSet(new long[]{0x1008960000020000L,0x0000408200003018L});
+    public static final BitSet FOLLOW_identifierExpression_in_atomExpression2935 = new BitSet(new long[]{0x0000000000000002L,0x0080000000000000L});
+    public static final BitSet FOLLOW_constant_in_atomExpression2946 = new BitSet(new long[]{0x0000000000000002L,0x0080000000000000L});
+    public static final BitSet FOLLOW_initializedComplexType_in_atomExpression2957 = new BitSet(new long[]{0x0000000000000002L,0x0080000000000000L});
+    public static final BitSet FOLLOW_quantifierExpression_in_atomExpression2969 = new BitSet(new long[]{0x0000000000000002L,0x0080000000000000L});
+    public static final BitSet FOLLOW_T_LPAREN_in_atomExpression2978 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_atomExpression2982 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_atomExpression2984 = new BitSet(new long[]{0x0000000000000002L,0x0080000000200018L});
+    public static final BitSet FOLLOW_T_POINT_in_atomExpression3007 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_atomExpression3019 = new BitSet(new long[]{0x0000000000000002L,0x0080000000200018L});
+    public static final BitSet FOLLOW_accessExpression_in_atomExpression3043 = new BitSet(new long[]{0x0000000000000002L,0x0080000000000000L});
+    public static final BitSet FOLLOW_accessExpression_in_atomExpression3063 = new BitSet(new long[]{0x0000000000000002L,0x0080000000000000L});
+    public static final BitSet FOLLOW_119_in_atomExpression3082 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_atomExpression3086 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IF_in_atomExpression3107 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_atomExpression3111 = new BitSet(new long[]{0x0000000000000000L,0x0000100000000000L});
+    public static final BitSet FOLLOW_T_THEN_in_atomExpression3113 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_atomExpression3117 = new BitSet(new long[]{0x0000004000000000L});
+    public static final BitSet FOLLOW_T_ELSE_in_atomExpression3119 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_atomExpression3123 = new BitSet(new long[]{0x0000008000000000L});
+    public static final BitSet FOLLOW_T_END_in_atomExpression3125 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_set_in_quantifierExpression3157 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_quantifierExpression3174 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_quantifierExpression3177 = new BitSet(new long[]{0x04080800000A4000L});
+    public static final BitSet FOLLOW_simpleType_in_quantifierExpression3181 = new BitSet(new long[]{0x0000000000300000L});
+    public static final BitSet FOLLOW_T_COMMA_in_quantifierExpression3192 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_quantifierExpression3196 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_quantifierExpression3199 = new BitSet(new long[]{0x04080800000A4000L});
+    public static final BitSet FOLLOW_simpleType_in_quantifierExpression3203 = new BitSet(new long[]{0x0000000000300000L});
+    public static final BitSet FOLLOW_T_COLON_in_quantifierExpression3213 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_quantifierExpression3215 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_quantifierExpression3219 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_quantifierExpression3221 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_TRUE_in_constant3255 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_FALSE_in_constant3263 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_NIL_in_constant3270 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_SELF_in_constant3278 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_FLOATNUMBER_in_constant3289 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_INTNUMBER_in_constant3298 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_STRINGLITERAL_in_constant3307 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_initializedListType_in_initializedComplexType3334 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_initializedSetType_in_initializedComplexType3343 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_NEW_in_initializedComplexType3351 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_initializedComplexType3353 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_initializedComplexType3357 = new BitSet(new long[]{0x0000000000200000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_COMMA_in_initializedComplexType3369 = new BitSet(new long[]{0x0000000000000000L,0x0000008000000000L});
+    public static final BitSet FOLLOW_T_STRINGLITERAL_in_initializedComplexType3374 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_initializedComplexType3376 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_RPAREN_in_initializedComplexType3385 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_LSQPAREN_in_initializedListType3416 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_initializedListType3420 = new BitSet(new long[]{0x0000000000201000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_COMMA_in_initializedListType3431 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_initializedListType3435 = new BitSet(new long[]{0x0000000000200000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_listComprehension_in_initializedListType3447 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_RSQPAREN_in_initializedListType3455 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_BAR_in_listComprehension3486 = new BitSet(new long[]{0x0000000000000000L,0x0002000000000000L});
+    public static final BitSet FOLLOW_T_VAR_in_listComprehension3488 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_listComprehension3494 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_listComprehension3497 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_listComprehension3501 = new BitSet(new long[]{0x0000000000000002L,0x0010000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_listComprehension3510 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_listComprehension3514 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_listComprehension3519 = new BitSet(new long[]{0x0000000000000002L,0x0010000400000000L});
+    public static final BitSet FOLLOW_116_in_listComprehension3529 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_listComprehension3535 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_CBRL_in_initializedSetType3561 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
+    public static final BitSet FOLLOW_T_MAPS_in_initializedSetType3563 = new BitSet(new long[]{0x0000000000040000L});
+    public static final BitSet FOLLOW_T_CBRR_in_initializedSetType3565 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_initializedSet_in_initializedSetType3576 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_CBRL_in_initializedSet3602 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_initializedSet3606 = new BitSet(new long[]{0x0000000000241000L,0x0000000000000040L});
+    public static final BitSet FOLLOW_T_COMMA_in_initializedSet3636 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_initializedSet3640 = new BitSet(new long[]{0x0000000000240000L});
+    public static final BitSet FOLLOW_map_in_initializedSet3658 = new BitSet(new long[]{0x0000000000040000L});
+    public static final BitSet FOLLOW_setComprehension_in_initializedSet3671 = new BitSet(new long[]{0x0000000000040000L});
+    public static final BitSet FOLLOW_T_CBRR_in_initializedSet3681 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_MAPS_in_map3717 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_map3721 = new BitSet(new long[]{0x0000000000200002L});
+    public static final BitSet FOLLOW_T_COMMA_in_map3729 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_map3733 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000040L});
+    public static final BitSet FOLLOW_T_MAPS_in_map3735 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_map3739 = new BitSet(new long[]{0x0000000000200002L});
+    public static final BitSet FOLLOW_T_BAR_in_setComprehension3761 = new BitSet(new long[]{0x0000000000000000L,0x0002000000000000L});
+    public static final BitSet FOLLOW_T_VAR_in_setComprehension3763 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_setComprehension3767 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_setComprehension3770 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_setComprehension3774 = new BitSet(new long[]{0x0000000000000002L,0x0010000400000000L});
+    public static final BitSet FOLLOW_T_SEMICOLON_in_setComprehension3784 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_setComprehension3788 = new BitSet(new long[]{0x0000000000100000L});
+    public static final BitSet FOLLOW_T_COLON_in_setComprehension3790 = new BitSet(new long[]{0x04080800000A4000L,0x000000000000003CL});
+    public static final BitSet FOLLOW_complexType_in_setComprehension3794 = new BitSet(new long[]{0x0000000000000002L,0x0010000400000000L});
+    public static final BitSet FOLLOW_116_in_setComprehension3808 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_setComprehension3814 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_identifierExpression3850 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_identifierExpression3852 = new BitSet(new long[]{0x512C963244030080L,0x000048829000B298L});
+    public static final BitSet FOLLOW_methodCallParams_in_identifierExpression3856 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_identifierExpression3858 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_reference_in_identifierExpression3873 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_qualifiedIdentifier_in_reference3911 = new BitSet(new long[]{0x0000600000000002L,0x0020000000800018L});
+    public static final BitSet FOLLOW_accessExpression_in_reference3923 = new BitSet(new long[]{0x0000600000000002L,0x0020000000800000L});
+    public static final BitSet FOLLOW_T_PRIMED_in_reference3948 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_117_in_reference3964 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_reference3966 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_reference3970 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_reference3972 = new BitSet(new long[]{0x0000600000000000L});
+    public static final BitSet FOLLOW_set_in_reference3978 = new BitSet(new long[]{0x0000000000000000L,0x0000000000000008L});
+    public static final BitSet FOLLOW_T_LPAREN_in_reference3984 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_reference3988 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_reference3990 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_LSQPAREN_in_accessExpression4035 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_accessExpression4039 = new BitSet(new long[]{0x0000000000000000L,0x0000000100000000L});
+    public static final BitSet FOLLOW_T_RSQPAREN_in_accessExpression4041 = new BitSet(new long[]{0x0000000000000002L,0x0000000000200018L});
+    public static final BitSet FOLLOW_T_LPAREN_in_accessExpression4068 = new BitSet(new long[]{0x512C963244030080L,0x000048829000B298L});
+    public static final BitSet FOLLOW_methodCallParams_in_accessExpression4072 = new BitSet(new long[]{0x0000000000000000L,0x0000000080000000L});
+    public static final BitSet FOLLOW_T_RPAREN_in_accessExpression4074 = new BitSet(new long[]{0x0000000000000002L,0x0000000000200018L});
+    public static final BitSet FOLLOW_T_POINT_in_accessExpression4096 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_accessExpression4104 = new BitSet(new long[]{0x0000000000000002L,0x0000000000200018L});
+    public static final BitSet FOLLOW_accessExpression_in_accessExpression4120 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_SELF_in_qualifiedIdentifier4159 = new BitSet(new long[]{0x0000000000000000L,0x0000000000200000L});
+    public static final BitSet FOLLOW_T_POINT_in_qualifiedIdentifier4161 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4173 = new BitSet(new long[]{0x0000000000000002L,0x0000000000200000L});
+    public static final BitSet FOLLOW_T_POINT_in_qualifiedIdentifier4182 = new BitSet(new long[]{0x0008000000000000L});
+    public static final BitSet FOLLOW_T_IDENTIFIER_in_qualifiedIdentifier4186 = new BitSet(new long[]{0x0000000000000002L,0x0000000000200000L});
+    public static final BitSet FOLLOW_expression_in_methodCallParams4219 = new BitSet(new long[]{0x0000000000200002L});
+    public static final BitSet FOLLOW_T_COMMA_in_methodCallParams4224 = new BitSet(new long[]{0x512C963244030080L,0x000048821000B298L});
+    public static final BitSet FOLLOW_expression_in_methodCallParams4228 = new BitSet(new long[]{0x0000000000200002L});
+    public static final BitSet FOLLOW_op_un_set_list_in_op_un4267 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_op_un_map_in_op_un4276 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_MINUS_in_op_un4284 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_NOT_in_op_un4292 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_ABS_in_op_un4300 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_CARD_in_op_un_set_list4327 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DCONC_in_op_un_set_list4338 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DINTER_in_op_un_set_list4349 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DUNION_in_op_un_set_list4359 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_ELEMS_in_op_un_set_list4369 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_HEAD_in_op_un_set_list4380 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_INDS_in_op_un_set_list4391 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_LEN_in_op_un_set_list4402 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_TAIL_in_op_un_set_list4413 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_DOM_in_op_un_map4442 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_RNG_in_op_un_map4453 = new BitSet(new long[]{0x0000000000000002L});
+    public static final BitSet FOLLOW_T_MERGE_in_op_un_map4464 = new BitSet(new long[]{0x0000000000000002L});
 
 }
\ No newline at end of file
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaDeepCloneVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaDeepCloneVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaDeepCloneVisitor.java	(revision 9)
@@ -28,7 +28,6 @@
 package org.momut.ooas.visitors;
 
 import java.util.ArrayList;
-import java.util.Arrays;
 import java.util.HashMap;
 import java.util.List;
 import java.util.ListIterator;
@@ -44,7 +43,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.Quantifier;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
@@ -59,7 +57,6 @@
 import org.momut.ooas.ast.identifiers.ExpressionVariableIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
 import org.momut.ooas.ast.identifiers.IdentifierKind;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
@@ -79,7 +76,6 @@
 import org.momut.ooas.ast.statements.KillStatement;
 import org.momut.ooas.ast.statements.NondetBlock;
 import org.momut.ooas.ast.statements.PrioBlock;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.SkipStatement;
 import org.momut.ooas.ast.statements.Statement;
@@ -95,7 +91,6 @@
 import org.momut.ooas.ast.types.NullType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.parser.SymbolTable;
 import org.momut.ooas.utils.OoasCompilerHashMap;
@@ -113,60 +108,57 @@
 
 	/* we do not clone types */
 	@Override
-	public /*override*/ void visit(AnyType anyType)
+	public void visit(AnyType anyType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(BoolType boolType)
+	public void visit(BoolType boolType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(CharType charType)
+	public void visit(CharType charType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(EnumType enumType)
+	public void visit(EnumType enumType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(FloatType floatType)
+	public void visit(FloatType floatType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(FunctionType functionType)
+	public void visit(FunctionType functionType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(IntType intType)
+	public void visit(IntType intType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(ListType listType)
+	public void visit(ListType listType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(MapType mapType)
+	public void visit(MapType mapType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(NullType nullType)
+	public void visit(NullType nullType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(OoActionSystemType ooActionSystemType)
+	public void visit(OoActionSystemType ooActionSystemType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(TupleType tupleType)
+	public void visit(TupleType tupleType)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(EnumIdentifier enumIdentifier)
+	public void visit(EnumIdentifier enumIdentifier)
 	{ throw new NotImplementedException(); }
 	@Override
-	public /*override*/ void visit(LandmarkIdentifier landmarkIdentifier)
+	public void visit(ExpressionVariableIdentifier expressionVariableIdentifier)
 	{ throw new NotImplementedException(); }
-	@Override
-	public /*override*/ void visit(ExpressionVariableIdentifier expressionVariableIdentifier)
-	{ throw new NotImplementedException(); }
 
 
 	@Override
-	public /*override*/ void visit(LocalVariableIdentifier localVariableIdentifier)
+	public void visit(LocalVariableIdentifier localVariableIdentifier)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(MainModule mainModule)
+	public void visit(MainModule mainModule)
 	{
 		throw new NotImplementedException();
 	}
@@ -173,19 +165,19 @@
 
 
 	@Override
-	public /*override*/ void visit(MapConstructor mapConstructor)
+	public void visit(MapConstructor mapConstructor)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(MethodIdentifier methodIdentifier)
+	public void visit(MethodIdentifier methodIdentifier)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(NamedActionIdentifier namedActionIdentifier)
+	public void visit(NamedActionIdentifier namedActionIdentifier)
 	{
 		final Statement newBlock = SClone(namedActionIdentifier.body());
 		namedActionIdentifier.SetBody(newBlock);
@@ -193,13 +185,13 @@
 	}
 
 	@Override
-	public /*override*/ void visit(Module module)
+	public void visit(Module module)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(NondetIdentifierList nondetIdentifierList)
+	public void visit(NondetIdentifierList nondetIdentifierList)
 	{
 		throw new NotImplementedException();
 	}
@@ -206,34 +198,26 @@
 
 
 	@Override
-	public /*override*/ void visit(OpaqueType opaqueType)
+	public void visit(OpaqueType opaqueType)
 	{
 		throw new NotImplementedException(); // must not happen
 	}
 
 	@Override
-	public /*override*/ void visit(ParameterIdentifier parameterIdentifier)
+	public void visit(ParameterIdentifier parameterIdentifier)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(PrioIdentifierList prioIdentifierList)
+	public void visit(PrioIdentifierList prioIdentifierList)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(QrType qrType)
+	public void visit(ObjectConstructor objectConstructor)
 	{
-		throw new NotImplementedException();
-	}
-
-
-
-	@Override
-	public /*override*/ void visit(ObjectConstructor objectConstructor)
-	{
 		//base.visit(objectConstructor);
 	}
 
@@ -325,10 +309,10 @@
 
 	/*no need to clone leafs (they are already cloned and a shallow copy is sufficient*/
 	@Override
-	public /*override*/ void visit(AbortStatement abortStatement)
+	public void visit(AbortStatement abortStatement)
 	{ }
 	@Override
-	public /*override*/ <T> void visit(ValueExpression<T> valueExpression)
+	public <T> void visit(ValueExpression<T> valueExpression)
 	{ }
 
 
@@ -345,29 +329,29 @@
 		}
 	}
 	@Override
-	public /*override*/ void visit(NondetBlock nondetBlock)
+	public void visit(NondetBlock nondetBlock)
 	{
 		cloneBlock(nondetBlock);
 	}
 	@Override
-	public /*override*/ void visit(SeqBlock seqBlock)
+	public void visit(SeqBlock seqBlock)
 	{
 		seqBlock.SetFilter(EClone(seqBlock.filter()));
 		cloneBlock(seqBlock);
 	}
 	@Override
-	public /*override*/ void visit(PrioBlock prioBlock)
+	public void visit(PrioBlock prioBlock)
 	{
 		cloneBlock(prioBlock);
 	}
 
 	@Override
-	public /*override*/ void visit(AccessExpression accessExpression)
+	public void visit(AccessExpression accessExpression)
 	{
 		visit((BinaryOperator)accessExpression);
 	}
 	@Override
-	public /*override*/ void visit(BinaryOperator binaryOperator)
+	public void visit(BinaryOperator binaryOperator)
 	{
 		final Expression left = EClone(binaryOperator.left());
 		final Expression right = EClone(binaryOperator.right());
@@ -376,7 +360,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(Assignment assignment)
+	public void visit(Assignment assignment)
 	{
 		SymTabClone(assignment.symbols());
 		cloneExpressionList(assignment.places().listIterator());
@@ -386,13 +370,13 @@
 	}
 
 	@Override
-	public /*override*/ void visit(AttributeIdentifier attributeIdentifier)
+	public void visit(AttributeIdentifier attributeIdentifier)
 	{
 		final Expression initializer = EClone(attributeIdentifier.initializer());
 		attributeIdentifier.SetInitializer(initializer);
 	}
 	@Override
-	public /*override*/ void visit(Call call)
+	public void visit(Call call)
 	{
 		final Expression cExpr = EClone(call.callExpression());
 		call.SetCallExpression(cExpr);
@@ -399,7 +383,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(CallExpression callExpression)
+	public void visit(CallExpression callExpression)
 	{
 		final ArrayList<Expression> newargs = new ArrayList<Expression>();
 		for (final Expression x: callExpression.arguments())
@@ -420,12 +404,12 @@
 		quantifierState = oldQunatifierState;
 	}
 	@Override
-	public /*override*/ void visit(ExistsQuantifier quantifier)
+	public void visit(ExistsQuantifier quantifier)
 	{
 		CloneQuantifier(quantifier);
 	}
 	@Override
-	public /*override*/ void visit(ForallQuantifier quantifier)
+	public void visit(ForallQuantifier quantifier)
 	{
 		CloneQuantifier(quantifier);
 	}
@@ -434,7 +418,7 @@
 
 
 	@Override
-	public /*override*/ void visit(GuardedCommand guardedCommand)
+	public void visit(GuardedCommand guardedCommand)
 	{
 		final Statement newblock = SClone(guardedCommand.body());
 		final Expression newguard = EClone(guardedCommand.guard());
@@ -443,40 +427,22 @@
 	}
 
 	@Override
-	public /*override*/ void visit(IdentifierExpression identifierExpression)
+	public void visit(IdentifierExpression identifierExpression)
 	{
 
 		if (identifierExpression.isSelf())
-		{
-			/*if (quantifierState) //FIXXME
-            {
-                if (!selfreplacement.tokenText.StartsWith("attr"))
-                {
-                    String oldTokenText = selfreplacement.tokenText;
-                    selfreplacement.SetTokenText("attr____model_root_" + selfreplacement.tokenText);
-                    identifierExpression.SetIdentifier(selfreplacement);
-                    selfreplacement.SetTokenText(oldTokenText);
-                }
-            }
-            else
-			 */
 			identifierExpression.SetIdentifier(selfreplacement);
-
-
-		}
 		else if (mapping.containsKey(identifierExpression.identifier())
 				&& identifierExpression.identifier().kind() != IdentifierKind.MethodIdentifier)
-
 			/* we do NOT replace method calls here, since they are prefixed by self if it's a
 			 * method in the current object or by some field/method access if it's another
 			 * object.
 			 */
 			identifierExpression.SetIdentifier((Identifier)mapping.get(identifierExpression.identifier()));
-
 	}
 
 	@Override
-	public /*override*/ void visit(KillStatement killStatement)
+	public void visit(KillStatement killStatement)
 	{
 		if (mapping.containsKey(killStatement.someOne))
 			killStatement.SetIdentifier((Identifier)mapping.get(killStatement.someOne));
@@ -484,7 +450,7 @@
 
 
 	@Override
-	public /*override*/ void visit(ListConstructor listConstructor)
+	public void visit(ListConstructor listConstructor)
 	{
 		SymTabClone(listConstructor.comprehensionVariables());
 
@@ -497,34 +463,14 @@
 	}
 
 	@Override
-	public /*override*/ void visit(QualitativeConstraintStatement qalitativeConstraintStatement)
+	public void visit(SeqIdentifierList seqIdentifierList)
 	{
-		if (qalitativeConstraintStatement.variable0() != null && mapping.containsKey(qalitativeConstraintStatement.variable0()))
-			qalitativeConstraintStatement.SetVariable0((Identifier)mapping.get(qalitativeConstraintStatement.variable0()));
-		if (qalitativeConstraintStatement.variable1() != null && mapping.containsKey(qalitativeConstraintStatement.variable1()))
-			qalitativeConstraintStatement.SetVariable1((Identifier)mapping.get(qalitativeConstraintStatement.variable1()));
-		if (qalitativeConstraintStatement.variable2() != null && mapping.containsKey(qalitativeConstraintStatement.variable2()))
-			qalitativeConstraintStatement.SetVariable2((Identifier)mapping.get(qalitativeConstraintStatement.variable2()));
-	}
-
-
-	@Override
-	public /*override*/ void visit(QValConstructor qValConstructor)
-	{
-		final List<Expression> values = Arrays.asList(qValConstructor.value());
-		for (int i = 0; i < values.size(); i++)
-			qValConstructor.value()[i] = EClone(values.get(i));
-	}
-
-	@Override
-	public /*override*/ void visit(SeqIdentifierList seqIdentifierList)
-	{
 		throw new NotImplementedException();
 	}
 
 
 	@Override
-	public /*override*/ void visit(SetConstructor setConstructor)
+	public void visit(SetConstructor setConstructor)
 	{
 		SymTabClone(setConstructor.comprehensionVariables());
 		final ArrayList<Expression> newelems = new ArrayList<Expression>();
@@ -537,11 +483,11 @@
 
 
 	@Override
-	public /*override*/ void visit(SkipStatement skipStatement)
+	public void visit(SkipStatement skipStatement)
 	{ }
 
 	@Override
-	public /*override*/ void visit(TernaryOperator ternaryOperator)
+	public void visit(TernaryOperator ternaryOperator)
 	{
 		ternaryOperator.SetLeftChild(EClone(ternaryOperator.left()));
 		ternaryOperator.SetMidChild(EClone(ternaryOperator.mid()));
@@ -549,7 +495,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(TupleConstructor tupleConstructor)
+	public void visit(TupleConstructor tupleConstructor)
 	{
 		final ArrayList<Expression> values = new ArrayList<Expression>();
 		for (final Expression x: tupleConstructor.values())
@@ -558,7 +504,7 @@
 	}
 
 	@Override
-	public /*override*/ void visit(TupleMapAccessExpression tupleMapAccessExpression)
+	public void visit(TupleMapAccessExpression tupleMapAccessExpression)
 	{
 		tupleMapAccessExpression.SetArgument(EClone(tupleMapAccessExpression.argument()));
 		visit((UnaryOperator)tupleMapAccessExpression);
@@ -565,18 +511,18 @@
 	}
 
 	@Override
-	public /*override*/ void visit(TypeExpression typeExpression)
+	public void visit(TypeExpression typeExpression)
 	{ /*we do not clone types*/ }
 
 
 	@Override
-	public /*override*/ void visit(TypeIdentifier typeIdentifier)
+	public void visit(TypeIdentifier typeIdentifier)
 	{
 		throw new NotImplementedException();
 	}
 
 	@Override
-	public /*override*/ void visit(UnaryOperator unaryOperator)
+	public void visit(UnaryOperator unaryOperator)
 	{
 		final Expression child = EClone(unaryOperator.child());
 		unaryOperator.SetChild(child);
@@ -584,13 +530,13 @@
 
 
 	@Override
-	public /*override*/ void visit(UnresolvedIdentifierExpression unresolvedIdentifierExpression)
+	public void visit(UnresolvedIdentifierExpression unresolvedIdentifierExpression)
 	{
 		throw new NotImplementedException(); // must not occur
 	}
 
 	@Override
-	public /*override*/ void visit(UnspecIdentifierList unspecIdentifierList)
+	public void visit(UnspecIdentifierList unspecIdentifierList)
 	{
 		throw new NotImplementedException();
 	}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaEmptyVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaEmptyVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaEmptyVisitor.java	(revision 9)
@@ -37,7 +37,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
 import org.momut.ooas.ast.expressions.TupleConstructor;
@@ -50,7 +49,6 @@
 import org.momut.ooas.ast.identifiers.ConstantIdentifier;
 import org.momut.ooas.ast.identifiers.EnumIdentifier;
 import org.momut.ooas.ast.identifiers.ExpressionVariableIdentifier;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.LocalVariableIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
@@ -71,7 +69,6 @@
 import org.momut.ooas.ast.statements.KillStatement;
 import org.momut.ooas.ast.statements.NondetBlock;
 import org.momut.ooas.ast.statements.PrioBlock;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.SkipStatement;
 import org.momut.ooas.ast.types.AnyType;
@@ -86,7 +83,6 @@
 import org.momut.ooas.ast.types.NullType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 
 public class OoaEmptyVisitor implements IAstVisitor {
@@ -102,8 +98,6 @@
 	@Override
 	public void visit(EnumIdentifier enumIdentifier)             {throw new UnsupportedOperationException();}
 	@Override
-	public void visit(LandmarkIdentifier landmarkIdentifier)     {throw new UnsupportedOperationException();}
-	@Override
 	public void visit(AttributeIdentifier attributeIdentifier)   {throw new UnsupportedOperationException();}
 	@Override
 	public void visit(ExpressionVariableIdentifier expressionVariableIdentifier) {throw new UnsupportedOperationException();}
@@ -152,8 +146,6 @@
 	@Override
 	public void visit(KillStatement killStatement)               {throw new UnsupportedOperationException();}
 	@Override
-	public void visit(QualitativeConstraintStatement qalitativeConstraintStatement) {throw new UnsupportedOperationException();}
-	@Override
 	public <T> void visit(ValueExpression<T> valueExpression)    {throw new UnsupportedOperationException();}
 	@Override
 	public void visit(UnresolvedIdentifierExpression unresolvedIdentifierExpression) {throw new UnsupportedOperationException();}
@@ -170,8 +162,6 @@
 	@Override
 	public void visit(ObjectConstructor objectConstructor)       {throw new UnsupportedOperationException();}
 	@Override
-	public void visit(QValConstructor qValConstructor)           {throw new UnsupportedOperationException();}
-	@Override
 	public void visit(AccessExpression accessExpression)         {throw new UnsupportedOperationException();}
 	@Override
 	public void visit(BinaryOperator binaryOperator)             {throw new UnsupportedOperationException();}
@@ -204,8 +194,6 @@
 	@Override
 	public void visit(MapType mapType)                           {throw new UnsupportedOperationException();}
 	@Override
-	public void visit(QrType qrType)                             {throw new UnsupportedOperationException();}
-	@Override
 	public void visit(TupleType tupleType)                       {throw new UnsupportedOperationException();}
 	@Override
 	public void visit(FunctionType functionType)                 {throw new UnsupportedOperationException();}
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaTypeCheckVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaTypeCheckVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaTypeCheckVisitor.java	(revision 9)
@@ -47,11 +47,10 @@
 import org.momut.ooas.ast.statements.Call;
 import org.momut.ooas.ast.statements.GuardedCommand;
 import org.momut.ooas.ast.statements.KillStatement;
-import org.momut.ooas.ast.statements.QualitativeConstraintStatement;
 import org.momut.ooas.ast.statements.Statement;
 import org.momut.ooas.ast.types.FunctionType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserError;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.parser.ParserWarning;
@@ -186,7 +185,7 @@
 									RemoveWarning(exprvar, String.format("Free variable in expression: '%s'.", exprvar.tokenText()));
 									RemoveWarning(freeRhsVar, String.format("Free variable in expression: '%s'.", exprvar.tokenText()));
 								}
-								else if (UlyssesType.TypeEqual(freeRhsVar.type(), exprvar.type()))
+								else if (Type.TypeEqual(freeRhsVar.type(), exprvar.type()))
 								{
 									assignment.AddIdentifier(exprvar, null);
 									// remove free variable warnings
@@ -226,10 +225,10 @@
 			if (avalue.kind() != ExpressionKind.Call)
 				CheckMethodCallsArePure(avalue);
 
-			final UlyssesType acover = UlyssesType.CoverType(aplace.type(), avalue.type());
+			final Type acover = Type.CoverType(aplace.type(), avalue.type());
 			if (acover == null)
 				Error(assignment, String.format("Type mismatch in assignment: %s ( %s := %s )", aplace.toString(), aplace.type().toString(), avalue.type().toString()));
-			else if (!UlyssesType.TypeEqualByKind(aplace.type(), acover)) /*ignore range things.. (see warning below)*/
+			else if (!Type.TypeEqualByKind(aplace.type(), acover)) /*ignore range things.. (see warning below)*/
 				Error(assignment, String.format("Type mismatch in assignment: %s ( %s := %s )", aplace.toString(), aplace.type().toString(), acover.toString()));
 			else
 			{
@@ -239,7 +238,7 @@
 				if (uninitvars.size() > 0)
 					Error(assignment, String.format("Undefined variable '%s'", uninitvars.get(0).tokenText()));
 
-				if (!UlyssesType.TypeEqual(avalue.type(), acover))
+				if (!Type.TypeEqual(avalue.type(), acover))
 				{
 					final UnaryOperator cast = new UnaryOperator(ExpressionKind.Cast, avalue, avalue.line(), avalue.pos());
 					cast.SetType(acover);
@@ -250,7 +249,7 @@
 						throw new OoasCompilerRuntimeException();
 				}
 
-				if (UlyssesType.FirstTypeLessRange(aplace.type(), acover))
+				if (Type.FirstTypeLessRange(aplace.type(), acover))
 				{
 					if (constantvalue == null)
 					{
@@ -310,16 +309,6 @@
 	}
 
 
-	private void TypeCheckQualConstraint(QualitativeConstraintStatement qualConstr)
-	{
-		if (qualConstr.variable0().type().kind() != TypeKind.QrType && qualConstr.variable0().type().kind() != TypeKind.Any)
-			Error(qualConstr, String.format("Qualitative type expected: '%s'", qualConstr.variable0().tokenText()));
-		if (qualConstr.variable1().type().kind() != TypeKind.QrType && qualConstr.variable1().type().kind() != TypeKind.Any)
-			Error(qualConstr, String.format("Qualitative type expected: '%s'", qualConstr.variable0().tokenText()));
-		if (qualConstr.variable2() != null && qualConstr.variable2().type().kind() != TypeKind.QrType
-				&& qualConstr.variable2().type().kind() != TypeKind.Any)
-			Error(qualConstr, String.format("Qualitative type expected: '%s'", qualConstr.variable0().tokenText()));
-	}
 	private void TypeCheck(Statement statement)
 	{
 		switch (statement.kind())
@@ -357,10 +346,6 @@
 					&& callstatement.callExpression().kind() != ExpressionKind.foldLR)
 				Error(callstatement, "Not a valid method call");
 			break;
-		case QualConstraint:
-			final QualitativeConstraintStatement qualConstr = (QualitativeConstraintStatement)statement;
-			TypeCheckQualConstraint(qualConstr);
-			break;
 		default:
 			throw new NotImplementedException();
 		}
@@ -373,7 +358,7 @@
 		if (attributeIdentifier.initializer() == null)
 			throw new ArgumentException();
 
-		final UlyssesType atype = attributeIdentifier.initializer().type();
+		final Type atype = attributeIdentifier.initializer().type();
 		if (atype == null)
 			Error(attributeIdentifier, "Initializer lacks type.");
 		else
@@ -396,18 +381,18 @@
 								attributeIdentifier.initializer().freeVariables().symbolList().get(0).tokenText()));
 			else
 			{
-				final UlyssesType idtype = attributeIdentifier.type();
-				final UlyssesType acover = UlyssesType.CoverType(idtype, atype);
+				final Type idtype = attributeIdentifier.type();
+				final Type acover = Type.CoverType(idtype, atype);
 
 				if (acover == null)
 					Error(attributeIdentifier, String.format("Type mismatch in attribute initializer: %s ( %s := %s )", attributeIdentifier.toString(), idtype.toString(), atype.toString()));
-				else if (!UlyssesType.TypeEqualByKind(idtype, acover)) /*ignore range things.. (see warning below)*/
+				else if (!Type.TypeEqualByKind(idtype, acover)) /*ignore range things.. (see warning below)*/
 					Error(attributeIdentifier, String.format("Type mismatch in attribute initializer: %s ( %s := %s )", attributeIdentifier.toString(), idtype.toString(), acover.toString()));
 				else
 				{
 					final Expression constantvalue = attributeIdentifier.initializer().kind() == ExpressionKind.Value ? attributeIdentifier.initializer() : null;
 
-					if (!UlyssesType.TypeEqual(atype, acover))
+					if (!Type.TypeEqual(atype, acover))
 					{
 						final UnaryOperator cast = new UnaryOperator(ExpressionKind.Cast, attributeIdentifier.initializer(),
 								attributeIdentifier.initializer().line(), attributeIdentifier.initializer().pos());
@@ -415,7 +400,7 @@
 						attributeIdentifier.SetInitializer(cast);
 					}
 
-					if (UlyssesType.FirstTypeLessRange(idtype, acover))
+					if (Type.FirstTypeLessRange(idtype, acover))
 					{
 						if (constantvalue == null)
 						{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaPrintVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaPrintVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaPrintVisitor.java	(revision 9)
@@ -39,7 +39,6 @@
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
 import org.momut.ooas.ast.expressions.ObjectConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
 import org.momut.ooas.ast.expressions.TupleConstructor;
@@ -54,7 +53,6 @@
 import org.momut.ooas.ast.identifiers.ExpressionVariableIdentifier;
 import org.momut.ooas.ast.identifiers.Identifier;
 import org.momut.ooas.ast.identifiers.IdentifierKind;
-import org.momut.ooas.ast.identifiers.LandmarkIdentifier;
 import org.momut.ooas.ast.identifiers.MainModule;
 import org.momut.ooas.ast.identifiers.MethodIdentifier;
 import org.momut.ooas.ast.identifiers.NamedActionIdentifier;
@@ -83,10 +81,9 @@
 import org.momut.ooas.ast.types.NullType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.codegen.OoasCodeEmitter;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
@@ -127,7 +124,7 @@
 	}
 
 	/*print the type identifier, or the type definition by calling the anAction delegate.*/
-	private void PrintType(UlyssesType atype, Action anAction)
+	private void PrintType(Type atype, Action anAction)
 	{
 		if (   (atype.identifier() != null)
 				&& (!atype.isAnonymousType())
@@ -306,24 +303,6 @@
 	}
 
 	@Override
-	public void visit(final QrType qrType)
-	{
-		PrintType(qrType, new Action(){
-			@Override
-			public void doIt() {
-				output.Append("qspace of [");
-				PrintEnumeration(qrType.landmarks());
-				output.Append("]");
-			}});
-	}
-
-	@Override
-	public void visit(LandmarkIdentifier landmarkIdentifier)
-	{
-		output.Append(landmarkIdentifier.tokenText());
-	}
-
-	@Override
 	public void visit(final OoActionSystemType ooActionSystemType)
 	{
 		PrintType(ooActionSystemType, new Action(){
@@ -768,22 +747,6 @@
 		output.Append("]");
 	}
 
-	@Override
-	public void visit(QValConstructor qValConstructor)
-	{
-		output.Append("qval(");
-		PrintSubElementOrNull(qValConstructor.value()[0]);
-		if (qValConstructor.value().length == 2)
-		{
-			output.Append(" .. ");
-			PrintSubElementOrNull(qValConstructor.value()[1]);
-		}
-		output.Append(",");
-		output.Append(qValConstructor.valueDeriv().toString());
-		output.Append(")");
-	}
-
-
 	private boolean make_parens = false;
 
 	@Override
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaReplaceOpaqueVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaReplaceOpaqueVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaReplaceOpaqueVisitor.java	(revision 9)
@@ -43,7 +43,7 @@
 import org.momut.ooas.ast.types.OpaqueType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
 
@@ -61,7 +61,7 @@
 		switch (parent.nodeType())
 		{
 		case type:
-			ReplaceOpaqueInType((UlyssesType)parent);
+			ReplaceOpaqueInType((Type)parent);
 			break;
 		case identifier:
 			ReplaceOpaqueInIdentifier((Identifier)parent);
@@ -122,7 +122,7 @@
 		}
 	}
 
-	private void ReplaceOpaqueInType(UlyssesType ulyssesType)
+	private void ReplaceOpaqueInType(Type ulyssesType)
 	{
 		switch (ulyssesType.kind())
 		{
@@ -133,7 +133,7 @@
 
 			for (int cntr = 0; cntr < func.parameter().size(); cntr ++)
 			{
-				UlyssesType t = func.parameter().get(cntr);
+				Type t = func.parameter().get(cntr);
 				if (t.kind() == TypeKind.OpaqueType)
 					func.parameter().set(cntr, ((OpaqueType)t).resolvedType());
 			}
@@ -156,7 +156,7 @@
 			case TupleType:
 				TupleType aTuple = (TupleType)ulyssesType;
 				for (int cntr = 0; cntr < aTuple.innerTypes().size(); cntr ++) {
-					UlyssesType t = aTuple.innerTypes().get(cntr);
+					Type t = aTuple.innerTypes().get(cntr);
 					if (t.kind() == TypeKind.OpaqueType)
 						aTuple.innerTypes().set(cntr, ((OpaqueType)t).resolvedType());
 				}
@@ -175,7 +175,7 @@
           to replace.*/
 		if ((subElement != null)
 				&& (subElement.nodeType() == AstNodeTypeEnum.type)
-				&& (((UlyssesType)subElement).kind() == TypeKind.OpaqueType))
+				&& (((Type)subElement).kind() == TypeKind.OpaqueType))
 			ReplaceOpaque(parent);
 	}
 
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaResolveExpressionsVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaResolveExpressionsVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaResolveExpressionsVisitor.java	(revision 9)
@@ -45,7 +45,6 @@
 import org.momut.ooas.ast.expressions.LeafExpression;
 import org.momut.ooas.ast.expressions.ListConstructor;
 import org.momut.ooas.ast.expressions.MapConstructor;
-import org.momut.ooas.ast.expressions.QValConstructor;
 import org.momut.ooas.ast.expressions.SetConstructor;
 import org.momut.ooas.ast.expressions.TernaryOperator;
 import org.momut.ooas.ast.expressions.TupleConstructor;
@@ -80,10 +79,9 @@
 import org.momut.ooas.ast.types.MapType;
 import org.momut.ooas.ast.types.NullType;
 import org.momut.ooas.ast.types.OoActionSystemType;
-import org.momut.ooas.ast.types.QrType;
 import org.momut.ooas.ast.types.TupleType;
 import org.momut.ooas.ast.types.TypeKind;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.ast.types.ValuedEnumType;
 import org.momut.ooas.parser.ParserError;
 import org.momut.ooas.parser.ParserMessage;
@@ -258,7 +256,7 @@
 			if (mid.type() == null || right.type() == null)
 				return Error(expression, "Conditional: Then or Else branch has void-type");
 
-			final UlyssesType acover = UlyssesType.CoverType(mid.type(), right.type());
+			final Type acover = Type.CoverType(mid.type(), right.type());
 
 			if (acover == null)
 				return Error(expression, String.format(
@@ -265,12 +263,12 @@
 					"Conditional: Then and Else branch must be of same type. (%s <> %s)",
 					mid.type().toString(), right.type().toString()));
 
-			if (!UlyssesType.TypeEqual(acover, mid.type()))
+			if (!Type.TypeEqual(acover, mid.type()))
 			{
 				mid = new UnaryOperator(ExpressionKind.Cast, mid, mid.line(), mid.pos());
 				mid.SetType(acover);
 			}
-			if (!UlyssesType.TypeEqual(acover, right.type()))
+			if (!Type.TypeEqual(acover, right.type()))
 			{
 				right = new UnaryOperator(ExpressionKind.Cast, right, right.line(), right.pos());
 				right.SetType(acover);
@@ -322,10 +320,10 @@
 			if (!isMap)
 			{
 				final int nextToLast = funType.parameter().size() - 2;
-				final UlyssesType initCover = UlyssesType.CoverType(funType.parameter().get(nextToLast), mid.type());
+				final Type initCover = Type.CoverType(funType.parameter().get(nextToLast), mid.type());
 				if (initCover == null)
 					return Error(expression, "Next to last parameter does not match initializer type in map operation.");
-				if (!UlyssesType.TypeEqual(mid.type(), initCover))
+				if (!Type.TypeEqual(mid.type(), initCover))
 					mid = new UnaryOperator(ExpressionKind.Cast, mid, mid.line(), mid.pos());
 				mid.SetType(initCover);
 
@@ -336,7 +334,7 @@
 			}
 			// UlyssesType listCover = UlyssesType.CoverType(funType.parameter.Last.Value, ((ListType)right.type).innerType);
 			// if (listCover == null)
-			if (!UlyssesType.TypeEqual(funType.parameter().peekLast(), ((ListType)right.type()).innerType()))
+			if (!Type.TypeEqual(funType.parameter().peekLast(), ((ListType)right.type()).innerType()))
 				return Error(expression, "Last paramter does not match inner-type of list in fold/map operation");
 
 			expression.SetLeftChild(leftcall);
@@ -372,7 +370,7 @@
 	}
 	private Expression ResolveExpression(ListConstructor expression)
 	{
-		UlyssesType type = null;
+		Type type = null;
 		ListType restype = null;
 		Expression comprehension = null;
 		if (expression.comprehension() != null)
@@ -426,7 +424,7 @@
 				if (type == null)
 					type = element.type();
 
-				type = UlyssesType.CoverType(type, element.type());
+				type = Type.CoverType(type, element.type());
 				if (type == null)
 					return Error(expression, "List constructor needs matching types");
 
@@ -436,7 +434,7 @@
 			// now we have the resulting type - we still need to insert casts that might be necessary
 			for (final Expression item: tmpitems)
 			{
-				if (!UlyssesType.TypeEqual(item.type(), type))
+				if (!Type.TypeEqual(item.type(), type))
 				{
 					final Expression cast = new UnaryOperator(ExpressionKind.Cast, item, item.line(), item.pos());
 					cast.SetType(type);
@@ -458,7 +456,7 @@
 	}
 	private Expression ResolveExpression(SetConstructor expression)
 	{
-		UlyssesType type = null;
+		Type type = null;
 		ListType restype = null;
 		Expression comprehension = null;
 		if (expression.comprehension() != null)
@@ -492,7 +490,7 @@
 
 			if (type == null)
 				type = element.type();
-			type = UlyssesType.CoverType(type, element.type());
+			type = Type.CoverType(type, element.type());
 			if (type == null)
 				return Error(expression, "Set initializer needs matching types");
 
@@ -506,8 +504,8 @@
 	}
 	private Expression ResolveExpression(MapConstructor expression)
 	{
-		UlyssesType domain = null;
-		UlyssesType range = null;
+		Type domain = null;
+		Type range = null;
 		final ArrayList<MapConstructor.MapItem> newitems = new ArrayList<MapConstructor.MapItem>();
 
 		for(final MapItem item: expression.items())
@@ -532,8 +530,8 @@
 			if (range == null)
 				range = rangeexpr.type();
 
-			domain = UlyssesType.CoverType(domain, domexpr.type());
-			range = UlyssesType.CoverType(range, rangeexpr.type());
+			domain = Type.CoverType(domain, domexpr.type());
+			range = Type.CoverType(range, rangeexpr.type());
 			if (domain == null)
 				return Error(expression, "Types of domain expressions do not match");
 
@@ -559,11 +557,11 @@
 		//TupleType resulttype = new TupleType(null);
 		final ArrayList<Expression> newvalexprs = new ArrayList<Expression>();
 
-		final Iterator<UlyssesType> innerTargetType = typeToConstruct.innerTypes().iterator();
+		final Iterator<Type> innerTargetType = typeToConstruct.innerTypes().iterator();
 		int freeVarCount = 0;
 		for (final Expression initexpr: expression.values())
 		{
-			final UlyssesType innerTargetTypeValue = innerTargetType.next();
+			final Type innerTargetTypeValue = innerTargetType.next();
 			Expression newval = ResolveExpression(initexpr);
 			if (newval == null)
 				return null;
@@ -580,18 +578,18 @@
 			}
 			else
 			{
-				final UlyssesType acover = UlyssesType.CoverType(innerTargetTypeValue, newval.type());
-				if (acover == null || !UlyssesType.TypeEqualByKind(innerTargetTypeValue, acover))
+				final Type acover = Type.CoverType(innerTargetTypeValue, newval.type());
+				if (acover == null || !Type.TypeEqualByKind(innerTargetTypeValue, acover))
 					return Error(expression,
 						String.format("Element in tuple constructor has non-matching type (%s <> %s)",
 								innerTargetTypeValue.toString(), newval.type().toString()));
 
-				if (!UlyssesType.TypeEqual(acover, newval.type()))
+				if (!Type.TypeEqual(acover, newval.type()))
 				{
 					newval = new UnaryOperator(ExpressionKind.Cast, newval, newval.line(), newval.pos());
 					newval.SetType(acover);
 				}
-				if (UlyssesType.FirstTypeLessRange(innerTargetTypeValue, acover)) {
+				if (Type.FirstTypeLessRange(innerTargetTypeValue, acover)) {
 					Warning(expression,
 						String.format("Tuple constructor may over/underflow: %s := %s",
 								innerTargetTypeValue.toString(), acover.toString()));
@@ -621,33 +619,6 @@
 		return expression;
 	}
 
-	private Expression ResolveExpression(QValConstructor expression)
-	{
-		Expression basevalue = null;
-		Expression rangevalue = null;
-
-		basevalue = ResolveExpression(expression.value()[0]);
-		if (basevalue == null || basevalue.kind() != ExpressionKind.Access
-		    || basevalue.type() == null || basevalue.type().kind() != TypeKind.QrType)
-			return Error(expression, "Landmark expected.");
-		expression.SetType(basevalue.type());
-		expression.SetValue(basevalue);
-
-		if (expression.value().length == 2)
-		{
-			rangevalue = ResolveExpression(expression.value()[1]);
-			if (rangevalue == null || rangevalue.kind() != ExpressionKind.Access
-			    || rangevalue.type() == null || rangevalue.type().kind() != TypeKind.QrType)
-				return Error(expression, "Landmark expected.");
-			if (!UlyssesType.TypeEqual(basevalue.type(), rangevalue.type()))
-				return Error(expression, String.format("Quantity spaces do not match: %s <> %s",
-						basevalue.type().toString(),
-						rangevalue.type().toString()));
-			expression.AddRange(rangevalue);
-		}
-		return expression;
-	}
-
 	private Expression ResolveExpression(IdentifierExpression expression)
 	{
 		// nothing to do here, since we do not have any consts that may be
@@ -836,10 +807,10 @@
 		}
 
 		final ArrayList<Expression> newargs = new ArrayList<Expression>();
-		final Iterator<UlyssesType> demandedArgType = funtype.parameter().iterator();
+		final Iterator<Type> demandedArgType = funtype.parameter().iterator();
 		for (final Expression arg: expression.arguments())
 		{
-			final UlyssesType demandedArgTypeValue = demandedArgType.next();
+			final Type demandedArgTypeValue = demandedArgType.next();
 			Expression newarg = ResolveExpression(arg);
 			if (newarg == null)
 				return null;
@@ -850,14 +821,14 @@
 
 			final Expression constantvalue = newarg.kind() == ExpressionKind.Value ? newarg : null;
 
-			final UlyssesType acover = UlyssesType.CoverType(newarg.type(), demandedArgTypeValue);
-			if (acover == null || !UlyssesType.TypeEqualByKind(demandedArgTypeValue, acover))
+			final Type acover = Type.CoverType(newarg.type(), demandedArgTypeValue);
+			if (acover == null || !Type.TypeEqualByKind(demandedArgTypeValue, acover))
 				return Error(arg, String.format("Argument type does not match; expected: %s delivered: %s",
 						demandedArgTypeValue.toString(), newarg.type().toString()));
 
 			newarg = UnaryOperator.TryCoerceUp(newarg, acover);
 
-			if (UlyssesType.FirstTypeLessRange(demandedArgTypeValue, acover))
+			if (Type.FirstTypeLessRange(demandedArgTypeValue, acover))
 			{
 				if (constantvalue == null)
 				{
@@ -898,7 +869,7 @@
 		final boolean staticAccess = lhs.kind() == ExpressionKind.Type;
 		final UnresolvedIdentifierExpression access = (UnresolvedIdentifierExpression)expression.right();
 		// atype could be null...
-		UlyssesType atype = lhs.type();
+		Type atype = lhs.type();
 		if ((lhs.kind() == ExpressionKind.Call) && (atype == null))
 		{
 			return Error(access, "Can not access return type of void-function");
@@ -984,22 +955,6 @@
 				return Error(access, String.format("%s not contained in enum %s",
 						access.tokenText(), anEnum.identifier().tokenText()));
 			break;
-		case QrType:
-			final QrType aQualitativeType = (QrType)atype;
-			if (!staticAccess)
-			{
-				return Error(access, "QSpace values can only be accessed statically.");
-			}
-			if (aQualitativeType.symbolTable().Defined(access.tokenText()))
-			{
-				final Identifier landmark = aQualitativeType.symbolTable().Get(access.tokenText());
-				final IdentifierExpression newrhs = new IdentifierExpression(landmark, access.line(), access.pos());
-				expression.SetRightChild(newrhs);
-			}
-			else
-				return Error(access, String.format("%s not contained in qspace %s",
-						access.tokenText(), aQualitativeType.identifier().tokenText()));
-			break;
 		default:
 			/*error, we can not access an element with '.' in any other type*/
 			return Error(expression, "Expected: System, Enum, Func, or QR type");
@@ -1174,8 +1129,8 @@
 		if ((lhs == null) || (rhs == null))
 			return null;
 
-		final UlyssesType lt = lhs.type();
-		final UlyssesType rt = rhs.type();
+		final Type lt = lhs.type();
+		final Type rt = rhs.type();
 
 		if ((lt == null) || (rt == null))
 			return Error(expression, "Binary operator not applicable to void-type subexpression.");
@@ -1192,7 +1147,7 @@
 				return Error(expression, "Domain restriction operator expects map on RHS");
 			ListType domlist = (ListType)lt;
 			MapType domMap = (MapType)rt;
-			if (!UlyssesType.TypeEqual(domlist.innerType(), domMap.fromType()))
+			if (!Type.TypeEqual(domlist.innerType(), domMap.fromType()))
 				return Error(expression, "Inner type of list and domain-type of map do not match");
 			// since this is a restriction, maxnumofelems is ok
 			expression.SetType(domMap);
@@ -1205,7 +1160,7 @@
 				return Error(expression, "Rangle restriction operator expects list on RHS");
 			final ListType rangelist = (ListType)rt;
 			domMap = (MapType)lt;
-			if (!UlyssesType.TypeEqual(rangelist.innerType(), domMap.fromType()))
+			if (!Type.TypeEqual(rangelist.innerType(), domMap.fromType()))
 				return Error(expression, "Inner type of list and rangle-type of map do not match");
 			// since this is a restriction, maxnumofelems is ok
 			expression.SetType(domMap);
@@ -1216,8 +1171,8 @@
 				return Error(expression, "Map union expects maps on LHS and RHS");
 			domMap = (MapType)lt;
 			MapType rngMap = (MapType)rt;
-			if (!UlyssesType.TypeEqual(domMap.fromType(), rngMap.fromType()) ||
-					!UlyssesType.TypeEqual(domMap.toType(), rngMap.toType()))
+			if (!Type.TypeEqual(domMap.fromType(), rngMap.fromType()) ||
+					!Type.TypeEqual(domMap.toType(), rngMap.toType()))
 				return Error(expression, "Domain and Range types of maps must be equal");
 			// union may change maximum number of elements..
 			final MapType resMap = new MapType(domMap.fromType(), domMap.toType(),
@@ -1236,7 +1191,7 @@
 				return lhs;
 			if (la.innerType().kind() == TypeKind.Null || la.maxNumberOfElements() == 0)
 				return rhs;
-			if (!UlyssesType.TypeEqual(la.innerType(), lb.innerType()))
+			if (!Type.TypeEqual(la.innerType(), lb.innerType()))
 				return Error(expression, String.format("Set/List concatenation expects two lists of same type. (%s <> %s)", la.toString(), lb.toString()));
 			ListType resultList = new ListType(la.innerType(),
 					la.maxNumberOfElements() + lb.maxNumberOfElements(), null);
@@ -1248,7 +1203,7 @@
 				return Error(expression, "Set difference expects two lists.");
 			la = (ListType)lt;
 			lb = (ListType)rt;
-			if (!UlyssesType.TypeEqual(la.innerType(), lb.innerType()))
+			if (!Type.TypeEqual(la.innerType(), lb.innerType()))
 				return Error(expression, "Set difference expects two lists of same type.");
 			expression.SetType(la);
 			break;
@@ -1258,7 +1213,7 @@
 				return Error(expression, "Set intersection expects two lists.");
 			la = (ListType)lt;
 			lb = (ListType)rt;
-			if (!UlyssesType.TypeEqual(la.innerType(), lb.innerType()))
+			if (!Type.TypeEqual(la.innerType(), lb.innerType()))
 				return Error(expression, "Set intersection expects two lists of same type.");
 			expression.SetType(la.maxNumberOfElements() > lb.maxNumberOfElements() ? la : lb);
 			break;
@@ -1269,8 +1224,8 @@
 			lb = (ListType)rt;
 			if (lhs.kind() == ExpressionKind.Value)
 				lhs = UnaryOperator.TryCoerceUp(lhs, lb.innerType());
-			final UlyssesType leftType = lhs.type();
-			if (!UlyssesType.TypeEqual(leftType, lb.innerType()))
+			final Type leftType = lhs.type();
+			if (!Type.TypeEqual(leftType, lb.innerType()))
 				return Error(expression, String.format("List and element must be of same type: %s in %s",
 						lt == null ? "<null>" : lt.toString(), lb ==null || lb.innerType() == null ? "<null>" : lb.innerType().toString()));
 			expression.SetType(new BoolType(null));
@@ -1281,7 +1236,7 @@
 				return Error(expression, "Subset operation expects two lists.");
 			la = (ListType)lt;
 			lb = (ListType)rt;
-			if (!UlyssesType.TypeEqual(la.innerType(), lb.innerType()))
+			if (!Type.TypeEqual(la.innerType(), lb.innerType()))
 				return Error(expression, "Subset operation expects two lists of same type.");
 			expression.SetType(new BoolType(null));
 			break;
@@ -1297,7 +1252,7 @@
 			if (lb.innerType().kind() == TypeKind.Null || lb.maxNumberOfElements() == 0)
 				return lhs;
 
-			if (!UlyssesType.TypeEqual(la.innerType(), lb.innerType()))
+			if (!Type.TypeEqual(la.innerType(), lb.innerType()))
 				return Error(expression, "Set union expects two lists of same type.");
 			resultList = new ListType(la.innerType(),
 					la.maxNumberOfElements() + lb.maxNumberOfElements(), null);
@@ -1334,7 +1289,7 @@
 				lhs = UnaryOperator.TryCoerceUp(lhs, ((ValuedEnumType)lhs.type()).getIntType());
 			if (rhs.type() instanceof ValuedEnumType)
 				rhs = UnaryOperator.TryCoerceUp(rhs, ((ValuedEnumType)rhs.type()).getIntType());
-			UlyssesType cover = Expression.ArithmeticCover(lt, rt, expression.kind());
+			Type cover = Expression.ArithmeticCover(lt, rt, expression.kind());
 			expression.SetType(cover);
 			break;
 		case minus:
@@ -1373,7 +1328,7 @@
 		case lessequal:
 			if (!((rt.IsNumeric() && lt.IsNumeric()) || (rt.IsQualitative() && lt.IsQualitative())))
 				return Error(expression, "Operator expects LHS and RHS to be numeric or qualitative");
-			cover = UlyssesType.CoverType(lt, rt);
+			cover = Type.CoverType(lt, rt);
 			if (cover != null)
 			{
 				lhs = UnaryOperator.TryCoerceUp(lhs, cover);
@@ -1434,7 +1389,7 @@
 			/*other binary*/
 		case equal:
 		case notequal:
-			cover = UlyssesType.CoverType(lt, rt);
+			cover = Type.CoverType(lt, rt);
 			if (cover != null)
 			{
 				/* see whether we have a tuple-matcher on one side.. */
@@ -1476,7 +1431,7 @@
 				rngMap = (MapType)rt;
 				if (rngMap.fromType().kind() != TypeKind.IntType)
 					return Error(expression, "Domain of map has to be integer");
-				if (!UlyssesType.TypeEqual(domlist.innerType(), rngMap.toType()))
+				if (!Type.TypeEqual(domlist.innerType(), rngMap.toType()))
 					return Error(expression, "Type of list expected to match range of map");
 				// since we only replace elements in the list (by matching ones from the map),
 				// we're save to return the original list..
@@ -1487,8 +1442,8 @@
 			{
 				domMap = (MapType)lt;
 				rngMap = (MapType)rt;
-				if (!UlyssesType.TypeEqual(domMap.fromType(), rngMap.fromType()) ||
-						!UlyssesType.TypeEqual(domMap.toType(), rngMap.toType()))
+				if (!Type.TypeEqual(domMap.fromType(), rngMap.fromType()) ||
+						!Type.TypeEqual(domMap.toType(), rngMap.toType()))
 					return Error(expression, "Maps need same domain and range types");
 				// since we override entries in the first map:
 				expression.SetType(domMap);
@@ -1835,9 +1790,6 @@
 		case ObjectConstr:
 			result = expression;
 			break;
-		case QValConstr:
-			result = ResolveExpression((QValConstructor)expression);
-			break;
 
 			/* identifiers */
 		case Identifier:
@@ -1869,9 +1821,9 @@
 				return Error(cast, String.format("Cast operator needs class type as argument. (Expected: OoActionSystemType, Found: %s)", cast.type().kind().name()));
 
 			cast.SetChild(ResolveExpression(cast.child()));
-			final UlyssesType acover = UlyssesType.CoverType(cast.type(), cast.child().type());
-			final boolean upcast = UlyssesType.TypeEqual(acover, cast.type());           // the cast is safe; Mostly used in list constructors..
-			final boolean downcast = UlyssesType.TypeEqual(acover, cast.child().type()); // downcast, unsafe.
+			final Type acover = Type.CoverType(cast.type(), cast.child().type());
+			final boolean upcast = Type.TypeEqual(acover, cast.type());           // the cast is safe; Mostly used in list constructors..
+			final boolean downcast = Type.TypeEqual(acover, cast.child().type()); // downcast, unsafe.
 			if (downcast)
 				Info(cast, String.format("Potentially unsafe downcast: %s as %s (cover: %s)",
 					cast.child().type().toString(), cast.type().toString(), acover.toString()));
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/optimisation/OoaRemoveTrivialNondetChoiceCompositionVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/optimisation/OoaRemoveTrivialNondetChoiceCompositionVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/optimisation/OoaRemoveTrivialNondetChoiceCompositionVisitor.java	(revision 9)
@@ -39,7 +39,7 @@
 import org.momut.ooas.ast.statements.Statement;
 import org.momut.ooas.ast.statements.StatementKind;
 import org.momut.ooas.ast.types.OoActionSystemType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
 import org.momut.ooas.utils.exceptions.InternalCompilerException;
@@ -65,7 +65,7 @@
 			switch (parent.nodeType())
 			{
 			case type:
-				switch (((UlyssesType)parent).kind())
+				switch (((Type)parent).kind())
 				{
 				case OoActionSystemType:
 					final OoActionSystemType atype = (OoActionSystemType)parent;
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaTypesVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaTypesVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/OoaTypesVisitor.java	(revision 9)
@@ -39,7 +39,7 @@
 import org.momut.ooas.ast.types.MapType;
 import org.momut.ooas.ast.types.OoActionSystemType;
 import org.momut.ooas.ast.types.TupleType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserError;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.utils.exceptions.ArgumentException;
@@ -51,7 +51,7 @@
 /// </summary>
 public final class OoaTypesVisitor extends OoaCompleteAstTraversalVisitor
 {
-	private void Error(UlyssesType aType, String p)
+	private void Error(Type aType, String p)
 	{
 		ParserError error = new ParserError(m_ParserState.filename,
 				aType.identifier().line(), aType.identifier().column(), p);
@@ -58,7 +58,7 @@
 		m_ParserState.AddErrorMessage(error);
 	}
 
-	HashSet<UlyssesType> typesSeen = new HashSet<UlyssesType>();
+	HashSet<Type> typesSeen = new HashSet<Type>();
 
 
 	@Override
@@ -89,12 +89,12 @@
 	}
 
 
-	private interface Action<T extends UlyssesType> {
+	private interface Action<T extends Type> {
 		void doIt(T param);
 	}
 
 	/* Does the check for recursion */
-	private <T extends UlyssesType> void CheckForRecursion(T aType, String Message, Action<T> toCall)
+	private <T extends Type> void CheckForRecursion(T aType, String Message, Action<T> toCall)
 	{
 		if (typesSeen.contains(aType))
 		{
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/analysis/OoaPrintActionsVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/analysis/OoaPrintActionsVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/analysis/OoaPrintActionsVisitor.java	(revision 9)
@@ -41,7 +41,7 @@
 import org.momut.ooas.ast.identifiers.NamedActionIdentifier;
 import org.momut.ooas.ast.identifiers.ParameterIdentifier;
 import org.momut.ooas.ast.types.FunctionType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.codegen.prolog.OoaPrologIdentifier;
 import org.momut.ooas.parser.ParserMessage;
 import org.momut.ooas.parser.ParserState;
@@ -160,7 +160,7 @@
 		final StringBuilder parameter = new StringBuilder();
 		if (e.arguments().size() > 0) {
 			int z = 0;
-			for (final UlyssesType ut: actionType.parameter()) {
+			for (final Type ut: actionType.parameter()) {
 				if (e.arguments().size() <= z)
 					continue;
 				Expression arg = e.arguments().get(z);
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/analysis/OoaCheckASTVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/analysis/OoaCheckASTVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/analysis/OoaCheckASTVisitor.java	(revision 9)
@@ -37,7 +37,7 @@
 import org.momut.ooas.ast.statements.SeqBlock;
 import org.momut.ooas.ast.statements.Statement;
 import org.momut.ooas.ast.types.OpaqueType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.utils.exceptions.InternalCompilerException;
 import org.momut.ooas.visitors.OoaCompleteAstTraversalVisitor;
@@ -44,12 +44,12 @@
 
 public final class OoaCheckASTVisitor extends OoaCompleteAstTraversalVisitor {
 	private final String m_tag;
-	private final HashMap<String,UlyssesType> m_seenTypes = new HashMap<>();
+	private final HashMap<String,Type> m_seenTypes = new HashMap<>();
 
 	@Override
 	protected void VisitAstElement(IAst element, IAst parent) {
-		if (element instanceof UlyssesType) {
-			final UlyssesType t = (element instanceof OpaqueType) ? ((OpaqueType) element).resolvedType()  : (UlyssesType) element;
+		if (element instanceof Type) {
+			final Type t = (element instanceof OpaqueType) ? ((OpaqueType) element).resolvedType()  : (Type) element;
 			if (t != null) { // opaque might not have resolve yet..
 				final String typeStr = t.toString();
 				if (m_seenTypes.containsKey(typeStr)) {
Index: trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/optimisation/OoaRemoveTrivialPrioritizedCompositionVisitor.java
===================================================================
--- trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/optimisation/OoaRemoveTrivialPrioritizedCompositionVisitor.java	(revision 8)
+++ trunk/compiler/ooasCompiler/src/org/momut/ooas/visitors/optimisation/OoaRemoveTrivialPrioritizedCompositionVisitor.java	(revision 9)
@@ -42,7 +42,7 @@
 import org.momut.ooas.ast.statements.Statement;
 import org.momut.ooas.ast.statements.StatementKind;
 import org.momut.ooas.ast.types.OoActionSystemType;
-import org.momut.ooas.ast.types.UlyssesType;
+import org.momut.ooas.ast.types.Type;
 import org.momut.ooas.parser.ParserState;
 import org.momut.ooas.utils.exceptions.NotImplementedException;
 import org.momut.ooas.utils.exceptions.InternalCompilerException;
@@ -66,7 +66,7 @@
 			switch (parent.nodeType())
 			{
 			case type:
-				switch (((UlyssesType)parent).kind())
+				switch (((Type)parent).kind())
 				{
 				case OoActionSystemType:
 					final OoActionSystemType atype = (OoActionSystemType)parent;
