Index: /ModelExtender/.classpath
===================================================================
--- /ModelExtender/.classpath	(revision 231)
+++ /ModelExtender/.classpath	(revision 232)
@@ -4,8 +4,8 @@
 	<classpathentry kind="src" path="test"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
 	<classpathentry combineaccessrules="false" kind="src" path="/Model"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/ModelTranslator"/>
 	<classpathentry combineaccessrules="false" kind="src" path="/Utils"/>
-	<classpathentry combineaccessrules="false" kind="src" path="/ModelTranslator"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
Index: /ModelExtender/src/de/uni_hildesheim/sse/model_extender/Main.java
===================================================================
--- /ModelExtender/src/de/uni_hildesheim/sse/model_extender/Main.java	(revision 231)
+++ /ModelExtender/src/de/uni_hildesheim/sse/model_extender/Main.java	(revision 232)
@@ -6,10 +6,19 @@
 import java.io.FileWriter;
 import java.io.IOException;
-
+import java.io.StringWriter;
+import java.util.List;
+
+import de.uni_hildesheim.sse.model.varModel.AbstractVariable;
+import de.uni_hildesheim.sse.model.varModel.Constraint;
 import de.uni_hildesheim.sse.model.varModel.Project;
+import de.uni_hildesheim.sse.model.varModel.filter.ConstraintFinder;
+import de.uni_hildesheim.sse.model.varModel.filter.DeclarationFinder;
+import de.uni_hildesheim.sse.model.varModel.filter.DeclarationFinder.VisibilityType;
+import de.uni_hildesheim.sse.model.varModel.filter.FilterType;
 import de.uni_hildesheim.sse.model_extender.convert.ConstraintParserException;
 import de.uni_hildesheim.sse.model_extender.convert.ModelExtender;
 import de.uni_hildesheim.sse.model_extender.in.DimacsReader;
 import de.uni_hildesheim.sse.model_extender.in.MalformedFileException;
+import de.uni_hildesheim.sse.persistency.IVMLWriter;
 import de.uni_hildesheim.sse.trans.out.DimacsWriter;
 
@@ -21,4 +30,8 @@
  */
 public class Main {
+	
+	private static final boolean DEBUG = true;
+	
+	
 	/**
      * Will extends the <tt>sourceDimacsBufferedReader</tt> with the given <tt>constraint</tt> and save the extended file to
@@ -87,4 +100,25 @@
         }
         if (null != model) {
+        	
+        	// Cache Declarations + Constraints
+        	DeclarationFinder varFinder = new DeclarationFinder(model, FilterType.ALL, null);
+        	List<AbstractVariable> variables = varFinder.getVariableDeclarations(VisibilityType.ALL);
+        	ConstraintFinder constraintFinder = new ConstraintFinder(model);
+        	List<Constraint> constraints = constraintFinder.getConstraints();
+        	
+        	// Copy Model
+        	Project clonedModel = new Project("clonedModel");
+        	for (int i = 0; i < variables.size(); i++) {
+				clonedModel.add(variables.get(i));
+			}
+        	for (int i = 0; i < constraints.size(); i++) {
+				clonedModel.add(constraints.get(i));
+			}
+        	// Test created model
+        	StringWriter sWriter = new StringWriter();
+        	IVMLWriter iWriter = new IVMLWriter(sWriter);
+        	clonedModel.accept(iWriter);
+        	System.out.println(sWriter);
+        	
             // Extend model
             ModelExtender extender = new ModelExtender(model);
@@ -98,5 +132,53 @@
         }
     }
-
+// this method add constraints to a model
+    public static void extendModel(Project model, String constraint, File destinationDimacsFile)
+            throws FileNotFoundException, IOException, MalformedFileException, ConstraintParserException {
+            
+//            // Read existing model
+//            DimacsReader reader = null;
+//            Project model = null;
+//            try {
+//                reader = new DimacsReader(sourceDimacsFile);
+//                model = reader.getModel();
+//            } finally {
+//                if (null != reader) {
+//                    reader.close();
+//                }
+//            }
+            if (null != model) {
+            	
+            	// Cache Declarations + Constraints
+            	DeclarationFinder varFinder = new DeclarationFinder(model, FilterType.ALL, null);
+            	List<AbstractVariable> variables = varFinder.getVariableDeclarations(VisibilityType.ALL);
+            	ConstraintFinder constraintFinder = new ConstraintFinder(model);
+            	List<Constraint> constraints = constraintFinder.getConstraints();
+            	
+            	// Copy Model
+            	Project clonedModel = new Project("clonedModel");
+            	for (int i = 0; i < variables.size(); i++) {
+    				clonedModel.add(variables.get(i));
+    			}
+            	for (int i = 0; i < constraints.size(); i++) {
+    				clonedModel.add(constraints.get(i));
+    			}
+            	// Test created model
+            	StringWriter sWriter = new StringWriter();
+            	IVMLWriter iWriter = new IVMLWriter(sWriter);
+            	clonedModel.accept(iWriter);
+            	System.out.println(sWriter);
+            	
+                // Extend model
+                ModelExtender extender = new ModelExtender(model);
+                extender.addConstraint(constraint);
+                
+                // Saved extended model
+                FileWriter fWriter = new FileWriter(destinationDimacsFile);
+                DimacsWriter writer = new DimacsWriter(model, fWriter);
+                writer.write();
+                fWriter.close();
+            }
+        }
+    
     /**
      * Main-Method to run the ModelExtender.
