diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java b/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java
index 62271fab52f1c72469bfcf77ab5cfb9a3c7baafa..ce7fbd136ec6bf41ee259a750c545b578216c6af 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/core/ParameterSet.java
@@ -52,7 +52,7 @@ public class ParameterSet implements TunableValidator
 	/**Describes whether auto configuration of the reduction rules is to be used. Overrides the bit mask.**/
 	public boolean suggestReduction = true;
 
-	@Tunable(description="Determines the number of clusters that are to be generated. -1 generates the optimal amount of clusters in the sense of WCE")
+	@Tunable(description="Determines the number of clusters that are to be generated. -1 generates the optimal amount of clusters in the sense of WCE",context="nogui")
 	public int clusterCount = -1;
 
 	@Override
@@ -101,5 +101,12 @@ public class ParameterSet implements TunableValidator
 		return true;
 	}
 
+	@Override
+	public String toString(){
+		String ret = "";
+		ret += "Target Cluster Count: "+clusterCount+"\n";
+		//TODO
+		return ret;
+	}
 
 }
diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swig/ClusterEditingSolutions.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swig/ClusterEditingSolutions.java
index 10eab6276ae28f1834ada45e49b549979c532555..ae586e770de1d3b690605f796256845df2c7054e 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/swig/ClusterEditingSolutions.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swig/ClusterEditingSolutions.java
@@ -59,6 +59,10 @@ public class ClusterEditingSolutions {
     LibraryInterfaceJNI.ClusterEditingSolutions_setFlags(swigCPtr, this, SolutionFlags.getCPtr(f), f);
   }
 
+  public void printSolution(long index) {
+    LibraryInterfaceJNI.ClusterEditingSolutions_printSolution(swigCPtr, this, index);
+  }
+
   public ClusterEditingSolutions() {
     this(LibraryInterfaceJNI.new_ClusterEditingSolutions(), true);
   }
diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterface.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterface.java
index 82e0dee42b697daf9b2669c8a35bea80c5070fe7..227ab8a923211019d5bf0f831f9055addfadd5f1 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterface.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterface.java
@@ -25,8 +25,8 @@ public class LibraryInterface {
     LibraryInterfaceJNI.setVerbosity(level);
   }
 
-  public static CoreAlgorithm getRun(LibraryInput input, int nrOptimalSolutions, String rulesBitMask, double multiplicativeFactor, boolean useHeuristic, boolean separatePartitionCuts, boolean separateTriangles) {
-    long cPtr = LibraryInterfaceJNI.getRun(LibraryInput.getCPtr(input), input, nrOptimalSolutions, rulesBitMask, multiplicativeFactor, useHeuristic, separatePartitionCuts, separateTriangles);
+  public static CoreAlgorithm getRun(LibraryInput input, int nrOptimalSolutions, String rulesBitMask, double multiplicativeFactor, boolean useHeuristic, boolean separatePartitionCuts, boolean separateTriangles, int targetClusterCount) {
+    long cPtr = LibraryInterfaceJNI.getRun(LibraryInput.getCPtr(input), input, nrOptimalSolutions, rulesBitMask, multiplicativeFactor, useHeuristic, separatePartitionCuts, separateTriangles, targetClusterCount);
     return (cPtr == 0) ? null : new CoreAlgorithm(cPtr, false);
   }
 
diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterfaceJNI.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterfaceJNI.java
index 10744f7c6dc6ec23408e90eb9e0169dd6df0482c..49549a4b657af8b0dd0a8ef300f2319e92c77f75 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterfaceJNI.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swig/LibraryInterfaceJNI.java
@@ -53,6 +53,7 @@ public class LibraryInterfaceJNI {
   public final static native long ClusterEditingSolutions_getNumberOfSolutions(long jarg1, ClusterEditingSolutions jarg1_);
   public final static native long ClusterEditingSolutions_getFlags(long jarg1, ClusterEditingSolutions jarg1_);
   public final static native void ClusterEditingSolutions_setFlags(long jarg1, ClusterEditingSolutions jarg1_, long jarg2, SolutionFlags jarg2_);
+  public final static native void ClusterEditingSolutions_printSolution(long jarg1, ClusterEditingSolutions jarg1_, long jarg2);
   public final static native long new_ClusterEditingSolutions();
   public final static native void delete_ClusterEditingSolutions(long jarg1);
   public final static native long new_LibraryInput();
@@ -79,7 +80,7 @@ public class LibraryInterfaceJNI {
   public final static native void setTimeLimit(int jarg1);
   public final static native void setThreadLimit(int jarg1);
   public final static native void setVerbosity(int jarg1);
-  public final static native long getRun(long jarg1, LibraryInput jarg1_, int jarg2, String jarg3, double jarg4, boolean jarg5, boolean jarg6, boolean jarg7);
+  public final static native long getRun(long jarg1, LibraryInput jarg1_, int jarg2, String jarg3, double jarg4, boolean jarg5, boolean jarg6, boolean jarg7, int jarg8);
 
   public static void SwigDirector_CplexInformer_updateStatus__SWIG_0(CplexInformer jself, int state) {
     jself.updateStatus(YoshikoState.swigToEnum(state));
diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterCountChooser.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterCountChooser.java
index 24932a0f2663aec9cbecf6059ca4afe8d7071e48..983a68b8b3ac8af4c541aaf056b8f60492c6e92c 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterCountChooser.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/ClusterCountChooser.java
@@ -34,7 +34,8 @@ public class ClusterCountChooser extends JPanel {
 
 	public ClusterCountChooser() {
 		//Swing Component init
-		numSolutionsSetter = new IntegerInputField();
+		numSolutionsSetter = new IntegerInputField(1,Integer.MAX_VALUE);
+		numSolutionsSetter.setValue(2);
 		label = new JLabel(LocalizationManager.get("nrClusters"));
 		SwingUtil.addAll(this,label, numSolutionsSetter);
 	}
diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/IntegerInputField.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/IntegerInputField.java
index d7d337652ee5627a088f5eb4d714c69fcdc9e95a..7b39fd0bf2e1028120ba27092f8f167fc2712c3b 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/IntegerInputField.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/IntegerInputField.java
@@ -34,12 +34,12 @@ public class IntegerInputField extends JFormattedTextField{
 
 	private final NumberFormatter formatter;
 
-//	public IntegerInputField(int minValue, int maxValue) {
-//		super();
-//		formatter = FormatHelper.getIntegerFormatter(minValue,maxValue);
-//		this.setFormatter(formatter);
-//		this.setColumns(8);
-//	}
+	public IntegerInputField(int minValue, int maxValue) {
+		super();
+		formatter = FormatHelper.getIntegerFormatter(minValue,maxValue);
+		this.setFormatter(formatter);
+		this.setColumns(8);
+	}
 
 	public IntegerInputField() {
 		super();
diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/OperationModePanel.java b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/OperationModePanel.java
index 8a4287cc4e78b6d075456108f757a39d8ad70192..e49f4aed07d885cf11cb6fc030efbe902c2cee1d 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/OperationModePanel.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/swing/components/OperationModePanel.java
@@ -108,7 +108,7 @@ public class OperationModePanel extends JPanel{
 
 		layout.setHorizontalGroup(layout.createParallelGroup(Alignment.LEADING,true)
 				.addComponent(useClusterCount, DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE)
-				.addComponent(ccChooser, DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE)
+				.addComponent(ccChooser, DEFAULT_SIZE, DEFAULT_SIZE, DEFAULT_SIZE)
 				.addComponent(useHeuristic, DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE)
 				.addComponent(useILP, DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE)
 				.addComponent(solutionNumberChooser, DEFAULT_SIZE, DEFAULT_SIZE, Short.MAX_VALUE)
diff --git a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java
index 4031bdf20b28d9edd4739319cd701153dceaf3c7..1f252f95c85a0038134f0717efd2e7816061b5ea 100644
--- a/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java
+++ b/src/main/java/de/hhu/ba/yoshikoWrapper/tasks/AlgorithmTask.java
@@ -163,6 +163,8 @@ public class AlgorithmTask extends AbstractTask implements ObservableTask, Tunab
 		//Set the default value for insertion cost
 		c_input.setDefaultInsertionCost(parameterSet.defaultInsertionCost);
 
+		System.out.print(parameterSet.toString()); //TODO: Move to debug logger
+
 		//Call Yoshiko <<< Algorithm is performed here
 		c_algorithm = LibraryInterface.getRun(c_input,
 				parameterSet.solCount,