diff --git a/agui2/mainwindow.cpp b/agui2/mainwindow.cpp
index 96ef43d4a2242af1ede46dc4bf6b0ee0192a6704..02c38e8c33fa8b7622e773977959d57c861995e1 100644
--- a/agui2/mainwindow.cpp
+++ b/agui2/mainwindow.cpp
@@ -168,20 +168,12 @@ void MainWindow::on_Concatenate()
 {
     WrapperBox * box = WrapperFactory::create( WrapperFactory::CONCATENATE, 200, 100 );
     scene->addItem(box->getGraphics());
-    WrapperBox * inBox = WrapperFactory::create( WrapperFactory::INPUT, 0, 100 );
-    scene->addItem(inBox->getGraphics());
-    ConnectionHelper::getInstance().startConnection(inBox);
-    ConnectionHelper::getInstance().completeConnection(box);
 }
 
 void MainWindow::on_ConcatenateEpsilon()
 {
     WrapperBox * box = WrapperFactory::create( WrapperFactory::CONCATENATE_EPSILON, 200, 100 );
     scene->addItem(box->getGraphics());
-    WrapperBox * inBox = WrapperFactory::create( WrapperFactory::INPUT, 0, 100 );
-    scene->addItem(inBox->getGraphics());
-    ConnectionHelper::getInstance().startConnection(inBox);
-    ConnectionHelper::getInstance().completeConnection(box);
 }
 
 void MainWindow::on_UnionBtn_clicked()
@@ -200,30 +192,23 @@ void MainWindow::on_Union()
 {
     WrapperBox * box = WrapperFactory::create( WrapperFactory::UNION, 200, 100 );
     scene->addItem(box->getGraphics());
-    WrapperBox * inBox = WrapperFactory::create( WrapperFactory::INPUT, 0, 100 );
-    scene->addItem(inBox->getGraphics());
-    ConnectionHelper::getInstance().startConnection(inBox);
-    ConnectionHelper::getInstance().completeConnection(box);
 }
 
 void MainWindow::on_UnionEpsilon()
 {
     WrapperBox * box = WrapperFactory::create( WrapperFactory::UNION_EPSILON, 200, 100 );
     scene->addItem(box->getGraphics());
-    WrapperBox * inBox = WrapperFactory::create( WrapperFactory::INPUT, 0, 100 );
-    scene->addItem(inBox->getGraphics());
-    ConnectionHelper::getInstance().startConnection(inBox);
-    ConnectionHelper::getInstance().completeConnection(box);
 }
 
-
-
 void MainWindow::on_IntersectBtn_clicked()
 {
     WrapperBox * box = WrapperFactory::create( WrapperFactory::INTERSCT, 200, 100 );
     scene->addItem(box->getGraphics());
-    WrapperBox * inBox = WrapperFactory::create( WrapperFactory::INPUT, 0, 100 );
-    scene->addItem(inBox->getGraphics());
-    ConnectionHelper::getInstance().startConnection(inBox);
-    ConnectionHelper::getInstance().completeConnection(box);
+}
+
+void MainWindow::on_AddInputBtn_clicked()
+{
+    int y = qrand()%4 * 100;
+    WrapperBox * box = WrapperFactory::create( WrapperFactory::INPUT, 0, y );
+    scene->addItem(box->getGraphics());
 }
diff --git a/agui2/mainwindow.h b/agui2/mainwindow.h
index 5c66d85da262d9a2a43afd4344bed5b9e5fd65a0..1b2afb91cbca7ab027f01608148976bda5ca2e6e 100644
--- a/agui2/mainwindow.h
+++ b/agui2/mainwindow.h
@@ -23,6 +23,7 @@ public:
     ~MainWindow();
 
 private slots:
+    void on_AddInputBtn_clicked();
     void on_RunBtn_clicked();
     void on_DeterminizeBtn_clicked();
     void on_TotalBtn_clicked();
diff --git a/agui2/mainwindow.ui b/agui2/mainwindow.ui
index 60f38d1fe2a3856cf0d85eef434a0a969bfbaade..359c8b05af456f6e2a614478d1d0fea0193e8aff 100644
--- a/agui2/mainwindow.ui
+++ b/agui2/mainwindow.ui
@@ -43,6 +43,13 @@
         <property name="sizeConstraint">
          <enum>QLayout::SetFixedSize</enum>
         </property>
+        <item>
+         <widget class="QPushButton" name="AddInputBtn">
+          <property name="text">
+           <string>Add Input</string>
+          </property>
+         </widget>
+        </item>
         <item>
          <widget class="QGroupBox" name="groupBox">
           <property name="sizePolicy">