diff --git a/ParseMe.scala b/ParseMe.scala
deleted file mode 100644
index 8e737aeb7b35c1bbbd95cdae1793fbcf494d5f48..0000000000000000000000000000000000000000
--- a/ParseMe.scala
+++ /dev/null
@@ -1,21 +0,0 @@
-import scala.collection.immutable.Set
-
-object ParseMe {
-  sealed abstract class Tree
-  case class Node(left: Tree, value: Int, right: Tree) extends Tree
-  case class Leaf() extends Tree
-
-
-
-  def insert(v: Int, t: Tree): Tree = t match {
-    case Leaf() => Node(Leaf(), v, Leaf())
-    case Node(left, v2, right) if v2 > v => Node(insert(v, left), v2, right)
-    case Node(left, v2, right) if v2 < v => Node(left, v2, insert(v, right))
-    case n @ Node(left, v2, right) if v2 == v => n
-  }
-
-  def emptySet() : Tree = {
-    Leaf()
-  }
-
-}
diff --git a/src/purescala/Analysis.scala b/src/purescala/Analysis.scala
index 1f9809ad9b459edc60f09730ae2fdc015a8898ef..e889f1f3f97ef736a8cbfdfb3861b5ae5691c689 100644
--- a/src/purescala/Analysis.scala
+++ b/src/purescala/Analysis.scala
@@ -33,4 +33,14 @@ object Analysis {
             BooleanLiteral(false)
         }
     }
+
+    def flatten(expr: Expr) : (Expr,List[(Variable,Expr)]) = {
+        // Recursively flattens the expression. The head in the end
+        // should be the top-level original expression.
+        def fl(expr: Expr, lets: List[(Variable,Expr)]) : List[(Variable,Expr)] = expr match {
+            case _ => throw new Exception("ah ha !")
+        }
+        
+    }
+
 }