diff --git a/statemachine.solution/src/main/jastadd/Analysis.jadd b/statemachine.solution/src/main/jastadd/Analysis.jadd
index a7d363ffdfead4e117290c5fd33c7990bede775c..26d12ee41caa10dc15a05333aa60dc10610ef342 100644
--- a/statemachine.solution/src/main/jastadd/Analysis.jadd
+++ b/statemachine.solution/src/main/jastadd/Analysis.jadd
@@ -1,5 +1,5 @@
 aspect Analysis {
-
+  /*
   public void StateMachine.printSomeAnalysis() {
     Set<Set<State>> sccs = this.SCC();
     System.out.print("SCCs found: ");
@@ -17,5 +17,5 @@ aspect Analysis {
           this.getInitial().minDistTo(finalState) + " step(s)");
     }
   }
-
+  */
 }
diff --git a/statemachine.solution/src/main/jastadd/Analysis.jrag b/statemachine.solution/src/main/jastadd/Analysis.jrag
index 4bc4a0502203c41538702d22c19e2f3fc9caea26..919cdf866b1c26ebdc9e07528e72ae677e4f6858 100644
--- a/statemachine.solution/src/main/jastadd/Analysis.jrag
+++ b/statemachine.solution/src/main/jastadd/Analysis.jrag
@@ -1,6 +1,7 @@
 aspect Analysis {
 
   /** Compute all states reachable from the current state */
+  /*
   syn Set<State> State.reachable() circular [new HashSet<State>()] {
     Set<State> result = new HashSet<>();
     result.addAll(successors());
@@ -9,8 +10,10 @@ aspect Analysis {
     }
     return result;
   }
+  */
 
   /** Compute the minimum number of transitions to the other state, ignoring states with empty labels */
+  /*
   syn int State.minDistTo(State other) circular [-1] {
     if (this == other) {
       return 0;
@@ -25,12 +28,13 @@ aspect Analysis {
     }
     return result;
   }
+  */
 
   /** A transition is an epsilon transition if the label is empty */
-  syn boolean Transition.isEpsilon() = getLabel().isEmpty();
+  //syn boolean Transition.isEpsilon() = getLabel().isEmpty();
 
   /** Collect all epsilon transitions */
-  coll Set<Transition> StateMachine.epsilonTransitions() [new HashSet<>()];
-  Transition contributes this when isEpsilon() to StateMachine.epsilonTransitions();
+  //coll Set<Transition> StateMachine.epsilonTransitions() [new HashSet<>()];
+  //Transition contributes this when isEpsilon() to StateMachine.epsilonTransitions();
 
 }
diff --git a/statemachine.solution/src/main/jastadd/BankParser.parser b/statemachine.solution/src/main/jastadd/BankParser.parser
index fcf625fceccfdd1af9270befff7332fe839a173f..ae992c62d8e948ef539224905df5a2ca9bdd3baf 100644
--- a/statemachine.solution/src/main/jastadd/BankParser.parser
+++ b/statemachine.solution/src/main/jastadd/BankParser.parser
@@ -8,8 +8,8 @@ import java.util.*;
 
 %embed {:
  // this code is inlined in the generated parser class
- State initial;
- List<State> finals = new ArrayList<>();
+ //State initial;
+ //List<State> finals = new ArrayList<>();
 :};
 
 %goal goal;
diff --git a/statemachine.solution/src/main/jastadd/BankScanner.flex b/statemachine.solution/src/main/jastadd/BankScanner.flex
index dbbccf626add052a39763ae670f65b50dca2b7e9..dcf37d2e0bf7be11f047e87b722c31e6fe3a0e25 100644
--- a/statemachine.solution/src/main/jastadd/BankScanner.flex
+++ b/statemachine.solution/src/main/jastadd/BankScanner.flex
@@ -35,12 +35,5 @@ Identifier = [:jletter:][:jletterdigit:]*
 {WhiteSpace}  { }
 
 // token definitions
-"initial"     { return sym(Terminals.INITIAL); }
-"final"       { return sym(Terminals.FINAL); }
-"state"       { return sym(Terminals.STATE); }
-"trans"       { return sym(Terminals.TRANS); }
 {Identifier}  { return sym(Terminals.NAME); }
-";"           { return sym(Terminals.SEMI); }
-":"           { return sym(Terminals.COLON); }
-"->"          { return sym(Terminals.ARROW); }
 <<EOF>>       { return sym(Terminals.EOF); }
diff --git a/statemachine.solution/src/main/jastadd/ConnectedComponents.jrag b/statemachine.solution/src/main/jastadd/ConnectedComponents.jrag
index 1637d454cde282e02789bb3a5ae53458193c08e8..f3f2e2fef68907a68ff646f2d5781adfa1304da8 100644
--- a/statemachine.solution/src/main/jastadd/ConnectedComponents.jrag
+++ b/statemachine.solution/src/main/jastadd/ConnectedComponents.jrag
@@ -3,6 +3,7 @@ aspect ConnectedComponents {
   /**
    * Kosaraju's algorithm
    */
+  /*
   syn Set<Set<State>> StateMachine.SCC() {
     Map<State, Set> visited = new HashMap<>();
     LinkedList<State> locked = new LinkedList<>();
@@ -33,5 +34,5 @@ aspect ConnectedComponents {
       if (visited.get(t.getFrom()) == null)
         t.getFrom().assign(visited, root);
   }
-
+  */
 }
diff --git a/statemachine.solution/src/main/jastadd/NameAnalysis.jrag b/statemachine.solution/src/main/jastadd/NameAnalysis.jrag
index 12adfd31b2629800dca5bc4db829173784b90264..3251423b55d43395496f0f3dd77978ee2b0052d2 100644
--- a/statemachine.solution/src/main/jastadd/NameAnalysis.jrag
+++ b/statemachine.solution/src/main/jastadd/NameAnalysis.jrag
@@ -1,6 +1,7 @@
 aspect NameAnalysis {
 
   /** resolve a state using its name */
+  /*
   syn State StateMachine.resolveState(String id) {
     for (State s : states()) {
       if (s.getLabel().equals(id)) {
@@ -9,8 +10,10 @@ aspect NameAnalysis {
     }
     return null;
   }
+  */
 
   /** resolve a transition using its name */
+  /*
   syn Transition StateMachine.resolveTransition(String id) {
     for (Transition t : transitions()) {
       if (t.getLabel().equals(id)) {
@@ -19,11 +22,12 @@ aspect NameAnalysis {
     }
     return null;
   }
+  */
 
   // required interface implementation for name analysis in parser
-  eq StateMachine.globallyResolveStateByToken(String id) = resolveState(id);
-  eq Element.globallyResolveStateByToken(String id) = containingStateMachine().resolveState(id);
+  //eq StateMachine.globallyResolveStateByToken(String id) = resolveState(id);
+  //eq Element.globallyResolveStateByToken(String id) = containingStateMachine().resolveState(id);
 
-  eq StateMachine.globallyResolveTransitionByToken(String id) = resolveTransition(id);
-  eq Element.globallyResolveTransitionByToken(String id) = containingStateMachine().resolveTransition(id);
+  //eq StateMachine.globallyResolveTransitionByToken(String id) = resolveTransition(id);
+  //eq Element.globallyResolveTransitionByToken(String id) = containingStateMachine().resolveTransition(id);
 }
diff --git a/statemachine.solution/src/main/jastadd/Navigation.jrag b/statemachine.solution/src/main/jastadd/Navigation.jrag
index 18c4e4fbf90718c6ebdef69c96053fa054bf09fd..dec925906e1ff604850f9f3f42bc3b79bdb15c75 100644
--- a/statemachine.solution/src/main/jastadd/Navigation.jrag
+++ b/statemachine.solution/src/main/jastadd/Navigation.jrag
@@ -5,22 +5,23 @@ aspect Navigation {
   // ======================================================
 
   /** Check, whether an this element is a state */
-  syn boolean Element.isState() = false;
-  eq State.isState() = true;
+  //syn boolean Element.isState() = false;
+  //eq State.isState() = true;
 
   /** View this element as a state */
-  syn State Element.asState() = null;
-  eq State.asState() = this;
+  //syn State Element.asState() = null;
+  //eq State.asState() = this;
 
   /** Check, whether an this element is a transition */
-  syn boolean Element.isTransition() = false;
-  eq Transition.isTransition() = true;
+  //syn boolean Element.isTransition() = false;
+  //eq Transition.isTransition() = true;
 
   /** View this element as a transition */
-  syn Transition Element.asTransition() = null;
-  eq Transition.asTransition() = this;
+  //syn Transition Element.asTransition() = null;
+  //eq Transition.asTransition() = this;
 
   /** Get all states */
+  /*
   syn List<State> StateMachine.states() {
     List<State> states = new ArrayList<>();
     for (Element element: getElementList()) {
@@ -30,8 +31,10 @@ aspect Navigation {
     }
     return states;
   }
+  */
 
   /** Get all transitions */
+  /*
   syn List<Transition> StateMachine.transitions() {
     List<Transition> transitions = new ArrayList<>();
     for (Element element: getElementList()) {
@@ -41,18 +44,19 @@ aspect Navigation {
     }
     return transitions;
   }
+  */
 
   /** Get the state machine the element is contained in */
-  inh StateMachine Element.containingStateMachine();
-  eq StateMachine.getElement().containingStateMachine() = this;
+  //inh StateMachine Element.containingStateMachine();
+  //eq StateMachine.getElement().containingStateMachine() = this;
 
   /** Determine whether the State is final */
-  syn boolean State.isInitial() = containingStateMachine().getInitial().equals(this);
+  //syn boolean State.isInitial() = containingStateMachine().getInitial().equals(this);
 
   /** Determine whether the State is final */
-  syn boolean State.isFinal() = containingStateMachine().getFinalList().contains(this);
+  //syn boolean State.isFinal() = containingStateMachine().getFinalList().contains(this);
 
   /** Get all successor states */
-  syn Collection<State> State.successors() = getOutgoingList().stream().map(Transition::getTo).collect(Collectors.toList());
+  //syn Collection<State> State.successors() = getOutgoingList().stream().map(Transition::getTo).collect(Collectors.toList());
 
 }
diff --git a/statemachine.solution/src/main/jastadd/Printing.jrag b/statemachine.solution/src/main/jastadd/Printing.jrag
index 90df2b9e9e74cdc0f3189d096c009b31aba077a8..c97dcc64b69aef70d8a7b82bf5226ffa912191f2 100644
--- a/statemachine.solution/src/main/jastadd/Printing.jrag
+++ b/statemachine.solution/src/main/jastadd/Printing.jrag
@@ -1,15 +1,17 @@
 aspect Printing {
 
   /** Return a textual representation of the state machine */
+  /*
   syn String StateMachine.prettyPrint() {
     StringBuilder sb = new StringBuilder();
     states().forEach(s -> sb.append(s.prettyPrint()));
     transitions().forEach(t -> sb.append(t.prettyPrint()));
     return sb.toString();
   }
+  */
 
   /** Return a textual representation of the state machine */
-  syn String Element.prettyPrint();
-  eq State.prettyPrint() = (isInitial() ? "initial " : "") + (isFinal() ? "final " : "") + "state " + getLabel() + ";\n";
-  eq Transition.prettyPrint() = "trans " + getFrom().getLabel() + " -> " + getTo().getLabel() + (isEpsilon() ? "" : " : " + getLabel()) + ";\n";
+  //syn String Element.prettyPrint();
+  //eq State.prettyPrint() = (isInitial() ? "initial " : "") + (isFinal() ? "final " : "") + "state " + getLabel() + ";\n";
+  //eq Transition.prettyPrint() = "trans " + getFrom().getLabel() + " -> " + getTo().getLabel() + (isEpsilon() ? "" : " : " + getLabel()) + ";\n";
 }
diff --git a/statemachine.solution/src/main/jastadd/SMtoDotG.jrag b/statemachine.solution/src/main/jastadd/SMtoDotG.jrag
index 18155d5366dc3d6f5778fba8f6193d09143c2f68..996a57db44317bf6f6a6589e987c275c72d9608f 100644
--- a/statemachine.solution/src/main/jastadd/SMtoDotG.jrag
+++ b/statemachine.solution/src/main/jastadd/SMtoDotG.jrag
@@ -1,4 +1,5 @@
 aspect StateMachinetoDotG {
+  /*
   syn String StateMachine.toDot() {
     StringBuilder b = new StringBuilder();
     b.append("strict digraph cycles {\n");
@@ -15,4 +16,5 @@ aspect StateMachinetoDotG {
     b.append("}\n");
     return b.toString();
   }
+  */
 }
diff --git a/statemachine.solution/src/main/jastadd/Transformation.jadd b/statemachine.solution/src/main/jastadd/Transformation.jadd
index 266329489bc477b806aa4ae876a0ca2771a59596..4211dac72db4ced197e54dbe6f699aa1025d25e8 100644
--- a/statemachine.solution/src/main/jastadd/Transformation.jadd
+++ b/statemachine.solution/src/main/jastadd/Transformation.jadd
@@ -1,6 +1,7 @@
 aspect Transformation {
 
   /** remove transformations with empty labels */
+  /*
   public void StateMachine.removeEpsilonTransition(Transition t) {
     if (t.isEpsilon()) {
       State oldFrom = t.getFrom();
@@ -29,4 +30,5 @@ aspect Transformation {
       System.err.println("Won't remove non-epsilon transition " + t.getLabel());
     }
   }
+  */
 }
diff --git a/statemachine.solution/src/main/jastadd/Util.jadd b/statemachine.solution/src/main/jastadd/Util.jadd
index 517b6a51d6c7ea953aeb2a59f7b42ca354a77979..e1e78b0f63d41f1d7581aa14560db8501da6463a 100644
--- a/statemachine.solution/src/main/jastadd/Util.jadd
+++ b/statemachine.solution/src/main/jastadd/Util.jadd
@@ -28,7 +28,7 @@ aspect JastAddAPIExtension {
     }
     throw new RuntimeException("unable to remove child, because it was not contained in its parent!");
   }
-
+  /*
   public String Element.customID() {
     return getLabel();
   }
@@ -36,4 +36,5 @@ aspect JastAddAPIExtension {
   public String Element.toString() {
     return getLabel();
   }
+  */
 }
diff --git a/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/Main.java b/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/Main.java
index 2d0d558c834e3afa9f095054d76196090d3db454..be4bb45e89256e9486cfce1e86353df88fe1bd4c 100644
--- a/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/Main.java
+++ b/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/Main.java
@@ -2,9 +2,9 @@ package de.tudresden.inf.st.statemachine;
 
 import beaver.Parser;
 import de.tudresden.inf.st.jastadd.dumpAst.ast.Dumper;
-import de.tudresden.inf.st.statemachine.jastadd.model.State;
-import de.tudresden.inf.st.statemachine.jastadd.model.StateMachine;
-import de.tudresden.inf.st.statemachine.jastadd.model.Transition;
+//import de.tudresden.inf.st.statemachine.jastadd.model.State;
+//import de.tudresden.inf.st.statemachine.jastadd.model.StateMachine;
+//import de.tudresden.inf.st.statemachine.jastadd.model.Transition;
 
 import java.io.IOException;
 import java.nio.file.Paths;
@@ -16,6 +16,7 @@ public class Main {
   public static Object DrAST_root_node;
 
   public static void main(String[] args) throws IOException, Parser.Exception {
+    /*
     StateMachine stateMachine;
     if (args.length == 0) {
       stateMachine = createExample();
@@ -45,8 +46,10 @@ public class Main {
     System.out.println(stateMachine.toDot());
     Dumper.read(stateMachine).dumpAsPNG(Paths.get("02-transformed.png"));
     DrAST_root_node = stateMachine;
+    */
   }
 
+  /*
   private static void printHeading(String s) {
     System.out.println();
     System.out.println("========================================");
@@ -95,5 +98,5 @@ public class Main {
           stateMachine.getInitial().minDistTo(finalState) + " step(s)");
     }
   }
-
+  */
 }
diff --git a/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/ParserUtils.java b/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/ParserUtils.java
index ef4e50169c525b631a10a531b9965283a967d2f4..f06cf1feb0aeed7fb8d857f55713bd17e1a67845 100644
--- a/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/ParserUtils.java
+++ b/statemachine.solution/src/main/java/de/tudresden/inf/st/statemachine/ParserUtils.java
@@ -1,9 +1,9 @@
 package de.tudresden.inf.st.statemachine;
 
 import beaver.Parser;
-import de.tudresden.inf.st.statemachine.jastadd.model.StateMachine;
-import de.tudresden.inf.st.statemachine.jastadd.parser.StateMachineParser;
-import de.tudresden.inf.st.statemachine.jastadd.scanner.StateMachineScanner;
+import de.tudresden.inf.st.statemachine.jastadd.model.Bank;
+import de.tudresden.inf.st.statemachine.jastadd.parser.BankParser;
+import de.tudresden.inf.st.statemachine.jastadd.scanner.BankScanner;
 
 import java.io.IOException;
 import java.io.Reader;
@@ -16,11 +16,11 @@ import java.nio.file.Path;
  * @author rschoene - Initial contribution
  */
 public class ParserUtils {
-  static StateMachine load(Path path) throws IOException, Parser.Exception {
+  static Bank load(Path path) throws IOException, Parser.Exception {
     Reader reader = Files.newBufferedReader(path);
-    StateMachineScanner scanner = new StateMachineScanner(reader);
-    StateMachineParser parser = new StateMachineParser();
-    StateMachine result = (StateMachine) parser.parse(scanner);
+    BankScanner scanner = new BankScanner(reader);
+    BankParser parser = new BankParser();
+    Bank result = (Bank) parser.parse(scanner);
     reader.close();
     return result;
   }