diff --git a/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/Flexiprep.scala b/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/Flexiprep.scala
index 1f1f2510cc600544c95d8db117bad3c3e888be01..7c2b9ace137c347e9f78d99543eb56ebf28ef5b4 100644
--- a/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/Flexiprep.scala
+++ b/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/Flexiprep.scala
@@ -195,6 +195,7 @@ class Flexiprep(val root: Configurable) extends QScript with SummaryQScript with
 
         override def beforeGraph(): Unit = {
           fqSync.beforeGraph()
+          commands = qcCmdR1.jobs ::: qcCmdR2.jobs ::: fqSync :: Nil
           super.beforeGraph()
         }
 
diff --git a/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/QcCommand.scala b/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/QcCommand.scala
index 4cb06039b07e2bbe33fa4396aebc98a022189952..8eb65f074ea17561d45f66511c1fda343a235617 100644
--- a/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/QcCommand.scala
+++ b/public/flexiprep/src/main/scala/nl/lumc/sasc/biopet/pipelines/flexiprep/QcCommand.scala
@@ -50,7 +50,15 @@ class QcCommand(val root: Configurable, val fastqc: Fastqc) extends BiopetComman
   val seqtk = new SeqtkSeq(root)
   var clip: Option[Cutadapt] = None
   var trim: Option[Sickle] = None
-  var outputCommand: BiopetCommandLineFunction = null
+  lazy val outputCommand: BiopetCommandLineFunction = if (compress) {
+    val gzip = Gzip(root)
+    gzip.output = output
+    gzip
+  } else {
+    val cat = Cat(root)
+    cat.output = output
+    cat
+  }
 
   def jobs = (Some(seqtk) :: clip :: trim :: Some(outputCommand) :: Nil).flatten
 
@@ -123,16 +131,9 @@ class QcCommand(val root: Configurable, val fastqc: Fastqc) extends BiopetComman
       case _            => seqtk.output
     }
 
-    if (compress) outputCommand = {
-      val gzip = new Gzip(root)
-      gzip.output = output
-      outputFile :<: gzip
-    }
-    else outputCommand = {
-      val cat = new Cat(root)
-      cat.input = outputFile :: Nil
-      cat.output = output
-      cat
+    outputCommand match {
+      case gzip: Gzip => outputFile :<: gzip
+      case cat: Cat => cat.input = outputFile :: Nil
     }
 
     seqtk.beforeGraph()