diff --git a/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/IPipeFactory.java b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/IPipeFactory.java
index b6dbc5f9ddb4be13fe4d46688c383ae60a57f9e3..8e55a09441a205da9179e3713d4c0b83cb55c0a4 100644
--- a/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/IPipeFactory.java
+++ b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/IPipeFactory.java
@@ -3,4 +3,5 @@ package teetime.variant.methodcallWithPorts.framework.core.pipe;
 public interface IPipeFactory {
 
 	<T> IPipe<T> create(int capacity);
+
 }
diff --git a/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/OrderedGrowableArrayPipeFactory.java b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/OrderedGrowableArrayPipeFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..80445efedce4738bc37c9a1d05a43b29b4ca1509
--- /dev/null
+++ b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/OrderedGrowableArrayPipeFactory.java
@@ -0,0 +1,13 @@
+package teetime.variant.methodcallWithPorts.framework.core.pipe;
+
+public class OrderedGrowableArrayPipeFactory implements IPipeFactory {
+
+	/**
+	 * Hint: The capacity for this pipe implementation is ignored
+	 */
+	@Override
+	public <T> IPipe<T> create(final int capacity) {
+		return new OrderedGrowableArrayPipe<T>();
+	}
+
+}
diff --git a/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/SingleElementPipeFactory.java b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/SingleElementPipeFactory.java
new file mode 100644
index 0000000000000000000000000000000000000000..a6f83738f318afa60565c9d7d5d1aacc8f5b3ebd
--- /dev/null
+++ b/src/main/java/teetime/variant/methodcallWithPorts/framework/core/pipe/SingleElementPipeFactory.java
@@ -0,0 +1,13 @@
+package teetime.variant.methodcallWithPorts.framework.core.pipe;
+
+public class SingleElementPipeFactory implements IPipeFactory {
+
+	/**
+	 * Hint: The capacity for this pipe implementation is ignored
+	 */
+	@Override
+	public <T> IPipe<T> create(final int capacity) {
+		return new SingleElementPipe<T>();
+	}
+
+}
diff --git a/submodules/JCTools b/submodules/JCTools
index 88e1e25f9519b250258c7e5ada30935975ab2d10..75998aa20b7ec897ec321c1f94192de888f2dc6e 160000
--- a/submodules/JCTools
+++ b/submodules/JCTools
@@ -1 +1 @@
-Subproject commit 88e1e25f9519b250258c7e5ada30935975ab2d10
+Subproject commit 75998aa20b7ec897ec321c1f94192de888f2dc6e