From 6cf28511f3e950cf675dcbb6f7810381552e38fd Mon Sep 17 00:00:00 2001
From: BIOPZ-Katsantoni Maria <maria.katsantoni@unibas.ch>
Date: Wed, 25 Mar 2020 00:19:05 +0100
Subject: [PATCH] Major refactoring

* Sequencing mode-related changes:
  * allowed sequencing modes in Snakemake input table changed from `paired_end` and `single_end` to `pe` and `se`, respectively
  * remove sequencing mode from output paths for each rule
  * corresponding wild cards removed entirely from all rules that do not depend on sequencing mode (currently all rules that are defined in the main `Snakefile` in the project root directory)
  * where absolutely necessary, sequencing mode is added as part of output file or directory instead
  * remove dependency of sequencing mode for rule for `FastQC`; now runs separately for each strand
* Changes related to MultiQC and output file/directory structure
  * moving and renaming outputs for MultiQC is no longer required
  * code to create MultiQC custom config externalized into script `scripts/rhea_multiqc_config.py`
  * add MultiQC output files with deterministic output to md5 sum checks performed during execution of `tests/test_integration_workflow/test.{local,slurm}.sh`
  * output filenames for each rule now follow this general structure: `samples/{sample_name}/{rule}/{output_file}`
  * change log directory structure matches results directory structure
* Miscellaneous changes
  * consistent, PEP8-compliant formatting in most parts, including Snakemake files, where allowed
  * remove rule `extract_decoys_salmon`; equivalent file `chrName.txt` produced by `star_index` is used instead
  * add rule `start` which copies sample data to the results directory and enforces uniform naming
  * refactoring of ALFA rules and modification of the CI/CD test to ensure compatibility
---
 .gitignore                                    |    1 +
 Snakefile                                     |  567 ++++---
 images/dag_test_workflow.svg                  | 1458 +++++++++--------
 images/rule_graph.svg                         |  734 +++++----
 scripts/labkey_to_snakemake.py                |  190 ++-
 tests/input_files/config.yaml                 |   17 +-
 tests/input_files/config_alfa.yaml            |    3 +
 tests/input_files/samples.tsv                 |    6 +-
 tests/input_files/samples_alfa.tsv            |   10 +-
 tests/test_alfa/expected_output.md5           |   80 +-
 ...ntisense.pe.Aligned.sortedByCoord.out.bam} |  Bin
 ...ense.pe.Aligned.sortedByCoord.out.bam.bai} |  Bin
 ...us_sense.pe.Aligned.sortedByCoord.out.bam} |  Bin
 ...ense.pe.Aligned.sortedByCoord.out.bam.bai} |  Bin
 ...ntisense.pe.Aligned.sortedByCoord.out.bam} |  Bin
 ...ense.pe.Aligned.sortedByCoord.out.bam.bai} |  Bin
 ...us_sense.pe.Aligned.sortedByCoord.out.bam} |  Bin
 ...ense.pe.Aligned.sortedByCoord.out.bam.bai} |  Bin
 tests/test_alfa/test.sh                       |    2 +-
 .../expected_output.files                     |   12 +-
 .../expected_output.md5                       |   40 +-
 tests/test_integration_workflow/test.local.sh |   26 +-
 tests/test_integration_workflow/test.slurm.sh |    9 +-
 .../expected_output.md5                       |    4 +-
 .../test.sh                                   |    2 +-
 .../expected_output.md5                       |    4 +-
 .../test.sh                                   |    4 +-
 workflow/rules/paired_end.snakefile.smk       |  176 +-
 workflow/rules/single_end.snakefile.smk       |  136 +-
 workflow/scripts/rhea_multiqc_config.py       |  162 ++
 30 files changed, 1972 insertions(+), 1671 deletions(-)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense_Aligned.sortedByCoord.out.bam => samples/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense.pe.Aligned.sortedByCoord.out.bam} (100%)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense_Aligned.sortedByCoord.out.bam.bai => samples/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense.pe.Aligned.sortedByCoord.out.bam.bai} (100%)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense_Aligned.sortedByCoord.out.bam => samples/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense.pe.Aligned.sortedByCoord.out.bam} (100%)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense_Aligned.sortedByCoord.out.bam.bai => samples/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense.pe.Aligned.sortedByCoord.out.bam.bai} (100%)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense_Aligned.sortedByCoord.out.bam => samples/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense.pe.Aligned.sortedByCoord.out.bam} (100%)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense_Aligned.sortedByCoord.out.bam.bai => samples/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense.pe.Aligned.sortedByCoord.out.bam.bai} (100%)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense_Aligned.sortedByCoord.out.bam => samples/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense.pe.Aligned.sortedByCoord.out.bam} (100%)
 rename tests/test_alfa/results/{paired_end/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense_Aligned.sortedByCoord.out.bam.bai => samples/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense.pe.Aligned.sortedByCoord.out.bam.bai} (100%)
 create mode 100644 workflow/scripts/rhea_multiqc_config.py

diff --git a/.gitignore b/.gitignore
index 791e748..937346f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -333,4 +333,5 @@ runs/.*
 logs/
 results/
 !tests/test_alfa/results/
+tests/input_files/homo_sapiens/genome.fa.fai
 .java/
diff --git a/Snakefile b/Snakefile
index eef73fa..50b5d13 100644
--- a/Snakefile
+++ b/Snakefile
@@ -2,8 +2,6 @@
 import os
 import pandas as pd
 import shutil
-workdir: config['workdir']
-
 
 # Get sample table
 samples_table = pd.read_csv(
@@ -18,13 +16,6 @@ samples_table = pd.read_csv(
 # Global config
 localrules: start, finish, rename_star_rpm_for_alfa, prepare_multiqc_config
 
-# Create log directories
-os.makedirs(
-    os.path.join(
-        os.getcwd(),
-        config['log_dir'],
-    ),
-    exist_ok=True)
 
 if cluster_config:
     os.makedirs(
@@ -47,16 +38,32 @@ rule finish:
             config['output_dir'],
             "multiqc_summary"),
         bigWig = expand(
-                os.path.join(
+            os.path.join(
                 config["output_dir"],
                 "samples",
                 "{sample}",
                 "bigWig",
                 "{unique_type}",
                 "{sample}_{unique_type}_{strand}.bw"),
-                sample=samples_table.index.values,
-                strand=["plus", "minus"],
-                unique_type=["Unique", "UniqueMultiple"])
+            sample=samples_table.index.values,
+            strand=["plus", "minus"],
+            unique_type=["Unique", "UniqueMultiple"]),
+
+        salmon_merge_genes = expand(
+            os.path.join(
+                config["output_dir"],
+                "summary_salmon",
+                "quantmerge",
+                "genes_{salmon_merge_on}.tsv"),
+            salmon_merge_on=["tpm", "numreads"]),
+
+        salmon_merge_transcripts = expand(
+            os.path.join(
+                config["output_dir"],
+                "summary_salmon",
+                "quantmerge",
+                "transcripts_{salmon_merge_on}.tsv"),
+            salmon_merge_on=["tpm", "numreads"]),
 
 
 rule start:
@@ -87,6 +94,9 @@ rule start:
             "{sample}",
             "start_{sample}.{mate}.stdout.log")
 
+    singularity:
+        "docker://bash:5.0.16"
+
     shell:
         "(cp {input.reads} {output.reads}) \
         1> {log.stdout} 2> {log.stderr} "
@@ -203,6 +213,7 @@ rule create_index_star:
         --sjdbGTFfile {input.gtf}) \
         1> {log.stdout} 2> {log.stderr}"
 
+
 rule extract_transcriptome:
     """
         Create transcriptome from genome and gene annotations
@@ -240,16 +251,60 @@ rule extract_transcriptome:
         1> {log.stdout} 2> {log.stderr}"
 
 
+rule concatenate_transcriptome_and_genome:
+    """
+        Concatenate genome and transcriptome
+    """
+    input:
+        transcriptome = os.path.join(
+            config['output_dir'],
+            "transcriptome",
+            "{organism}",
+            "transcriptome.fa"),
+
+        genome = lambda wildcards:
+            samples_table['genome']
+            [samples_table['organism'] == wildcards.organism]
+            [0]
+
+    output:
+        genome_transcriptome = os.path.join(
+            config['output_dir'],
+            "transcriptome",
+            "{organism}",
+            "genome_transcriptome.fa")
+
+    singularity:
+        "docker://bash:5.0.16"
+
+    log:
+        stderr = os.path.join(
+            config['log_dir'],
+            "{organism}_concatenate_transcriptome_and_genome.stderr.log")
+
+    shell:
+        "(cat {input.transcriptome} {input.genome} \
+        1> {output.genome_transcriptome}) \
+        2> {log.stderr}"
+
+
 rule create_index_salmon:
     """
         Create index for Salmon quantification
     """
     input:
-        transcriptome = os.path.join(
+        genome_transcriptome = os.path.join(
             config['output_dir'],
             "transcriptome",
             "{organism}",
-            "transcriptome.fa")
+            "genome_transcriptome.fa"),
+        chr_names = lambda wildcards:
+            os.path.join(
+                config['star_indexes'],
+                samples_table["organism"][0],
+                str(samples_table["index_size"][0]),
+                "STAR_index",
+                "chrName.txt")
 
     output:
         index = directory(
@@ -277,7 +332,8 @@ rule create_index_salmon:
 
     shell:
         "(salmon index \
-        --transcripts {input.transcriptome} \
+        --transcripts {input.genome_transcriptome} \
+        --decoys {input.chr_names} \
         --index {output.index} \
         --kmerLen {params.kmerLen} \
         --threads {threads}) \
@@ -395,142 +451,6 @@ rule index_genomic_alignment_samtools:
         1> {log.stdout} 2> {log.stderr}"
 
 
-rule star_rpm:
-    '''
-        Create stranded bedgraph coverage with STARs RPM normalisation
-    '''
-    input:
-        bam = lambda wildcards:
-            expand(
-                os.path.join(
-                    config["output_dir"],
-                    "samples",
-                    "{sample}",
-                    "map_genome",
-                    "{sample}.{seqmode}.Aligned.sortedByCoord.out.bam"),
-                sample=wildcards.sample,
-                seqmode=samples_table.loc[wildcards.sample, 'seqmode']),
-        bai = lambda wildcards:
-            expand(
-                os.path.join(
-                    config["output_dir"],
-                    "samples",
-                    "{sample}",
-                    "map_genome",
-                    "{sample}.{seqmode}.Aligned.sortedByCoord.out.bam.bai"),
-                sample=wildcards.sample,
-                seqmode=samples_table.loc[wildcards.sample, 'seqmode']),
-
-    output:
-        str1 = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "STAR_coverage",
-            "{sample}_Signal.Unique.str1.out.bg"),
-        str2 = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "STAR_coverage",
-            "{sample}_Signal.UniqueMultiple.str1.out.bg"),
-        str3 = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "STAR_coverage",
-            "{sample}_Signal.Unique.str2.out.bg"),
-        str4 = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "STAR_coverage",
-            "{sample}_Signal.UniqueMultiple.str2.out.bg")
-
-    params:
-        out_dir = lambda wildcards, output:
-            os.path.dirname(output.str1),
-        prefix = lambda wildcards, output:
-            os.path.join(
-                os.path.dirname(output.str1),
-                str(wildcards.sample) + "_"),
-        stranded = "Stranded"
-
-    singularity:
-        "docker://zavolab/star:2.7.3a-slim"
-
-    log:
-        stderr = os.path.join(
-            config["log_dir"],
-            "samples",
-            "{sample}",
-            "star_rpm.stderr.log"),
-        stdout = os.path.join(
-            config["log_dir"],
-            "samples",
-            "{sample}",
-            "star_rpm.stdout.log")
-
-    threads: 4
-
-    shell:
-        "(mkdir -p {params.out_dir}; \
-        chmod -R 777 {params.out_dir}; \
-        STAR \
-        --runMode inputAlignmentsFromBAM \
-        --runThreadN {threads} \
-        --inputBAMfile {input.bam} \
-        --outWigType \"bedGraph\" \
-        --outWigStrand {params.stranded} \
-        --outWigNorm \"RPM\" \
-        --outFileNamePrefix {params.prefix}) \
-        1> {log.stdout} 2> {log.stderr}"
-
-
-rule rename_star_rpm_for_alfa:
-    input:
-        str1 = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "STAR_coverage",
-            "{sample}_Signal.{unique}.str1.out.bg"),
-        str2 = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "STAR_coverage",
-            "{sample}_Signal.{unique}.str2.out.bg")
-
-    output:
-        plus = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "ALFA",
-            "{unique}",
-            "{sample}_Signal.{unique}.out.plus.bg"),
-        minus = os.path.join(
-            config["output_dir"],
-            "samples",
-            "{sample}",
-            "ALFA",
-            "{unique}",
-            "{sample}_Signal.{unique}.out.minus.bg")
-
-    params:
-        orientation = lambda wildcards:
-            samples_table.loc[wildcards.sample, "kallisto_directionality"]
-
-    run:
-        if params['orientation'] == "--fr":
-            shutil.copy2(input['str1'], output['plus'])
-            shutil.copy2(input['str2'], output['minus'])
-        elif params['orientation'] == "--rf":
-            shutil.copy2(input['str1'], output['minus'])
-            shutil.copy2(input['str2'], output['plus'])
-
-
 rule calculate_TIN_scores:
     """
         Calculate transcript integrity (TIN) score
@@ -574,7 +494,9 @@ rule calculate_TIN_scores:
     log:
         stderr = os.path.join(
             config['log_dir'],
-            "{sample}_calculate_TIN_scores.log")
+            "samples",
+            "{sample}",
+            "calculate_TIN_scores.log")
 
     threads: 8
 
@@ -654,15 +576,15 @@ rule plot_TIN_scores:
     output:
         TIN_boxplot_PNG = os.path.join(
             config['output_dir'],
-            "TIN_scores_boxplot.png"),
+            "TIN_scores_boxplot_mqc.png"),
         TIN_boxplot_PDF = os.path.join(
             config['output_dir'],
-            "TIN_scores_boxplot.pdf")
+            "TIN_scores_boxplot_mqc.pdf")
 
     params:
         TIN_boxplot_prefix = os.path.join(
             config['output_dir'],
-            "TIN_scores_boxplot")
+            "TIN_scores_boxplot_mqc")
 
     log:
         stderr = os.path.join(
@@ -810,8 +732,163 @@ rule salmon_quantmerge_transcripts:
         1> {log.stdout} 2> {log.stderr}"
 
 
-# ALFA: Annotation Landscape For Aligned reads
-directionality = {"--fr": "fr-firststrand", "--rf": "fr-secondstrand"}
+rule star_rpm:
+    '''
+        Create stranded bedgraph coverage with STARs RPM normalisation
+    '''
+    input:
+        bam = lambda wildcards:
+            expand(
+                os.path.join(
+                    config["output_dir"],
+                    "samples",
+                    "{sample}",
+                    "map_genome",
+                    "{sample}.{seqmode}.Aligned.sortedByCoord.out.bam"),
+                sample=wildcards.sample,
+                seqmode=samples_table.loc[wildcards.sample, 'seqmode']),
+        bai = lambda wildcards:
+            expand(
+                os.path.join(
+                    config["output_dir"],
+                    "samples",
+                    "{sample}",
+                    "map_genome",
+                    "{sample}.{seqmode}.Aligned.sortedByCoord.out.bam.bai"),
+                sample=wildcards.sample,
+                seqmode=samples_table.loc[wildcards.sample, 'seqmode']),
+
+    output:
+        str1 = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "STAR_coverage",
+            "{sample}_Signal.Unique.str1.out.bg"),
+        str2 = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "STAR_coverage",
+            "{sample}_Signal.UniqueMultiple.str1.out.bg"),
+        str3 = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "STAR_coverage",
+            "{sample}_Signal.Unique.str2.out.bg"),
+        str4 = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "STAR_coverage",
+            "{sample}_Signal.UniqueMultiple.str2.out.bg")
+
+    params:
+        out_dir = lambda wildcards, output:
+            os.path.dirname(output.str1),
+        prefix = lambda wildcards, output:
+            os.path.join(
+                os.path.dirname(output.str1),
+                str(wildcards.sample) + "_"),
+        stranded = "Stranded"
+
+    singularity:
+        "docker://zavolab/star:2.7.3a-slim"
+
+    log:
+        stderr = os.path.join(
+            config["log_dir"],
+            "samples",
+            "{sample}",
+            "star_rpm.stderr.log"),
+        stdout = os.path.join(
+            config["log_dir"],
+            "samples",
+            "{sample}",
+            "star_rpm.stdout.log")
+
+    threads: 4
+
+    shell:
+        "(mkdir -p {params.out_dir}; \
+        chmod -R 777 {params.out_dir}; \
+        STAR \
+        --runMode inputAlignmentsFromBAM \
+        --runThreadN {threads} \
+        --inputBAMfile {input.bam} \
+        --outWigType bedGraph \
+        --outWigStrand {params.stranded} \
+        --outWigNorm RPM \
+        --outFileNamePrefix {params.prefix}) \
+        1> {log.stdout} 2> {log.stderr}"
+
+
+rule rename_star_rpm_for_alfa:
+    input:
+        plus = lambda wildcards:
+            expand(
+                os.path.join(
+                    config["output_dir"],
+                    "samples",
+                    "{sample}",
+                    "STAR_coverage",
+                    "{sample}_Signal.{unique}.{plus}.out.bg"),
+                sample=wildcards.sample,
+                unique=wildcards.unique,
+                plus=samples_table.loc[wildcards.sample, 'alfa_plus']),
+
+        minus = lambda wildcards:
+            expand(
+                os.path.join(
+                    config["output_dir"],
+                    "samples",
+                    "{sample}",
+                    "STAR_coverage",
+                    "{sample}_Signal.{unique}.{minus}.out.bg"),
+                sample=wildcards.sample,
+                unique=wildcards.unique,
+                minus=samples_table.loc[wildcards.sample, 'alfa_minus'])
+
+    output:
+        plus = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "ALFA",
+            "{unique}",
+            "{sample}.{unique}.plus.bg"),
+        minus = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "ALFA",
+            "{unique}",
+            "{sample}.{unique}.minus.bg")
+
+    params:
+        orientation = lambda wildcards:
+            samples_table.loc[wildcards.sample, "kallisto_directionality"]
+
+    log:
+        stderr = os.path.join(
+            config["log_dir"],
+            "samples",
+            "{sample}",
+            "rename_star_rpm_for_alfa__{unique}.stderr.log"),
+        stdout = os.path.join(
+            config["log_dir"],
+            "samples",
+            "{sample}",
+            "rename_star_rpm_for_alfa__{unique}.stdout.log")
+
+    singularity:
+        "docker://bash:5.0.16"
+
+    shell:
+        "(cp {input.plus} {output.plus}; \
+         cp {input.minus} {output.minus};) \
+         1>{log.stdout} 2>{log.stderr}"
 
 
 rule generate_alfa_index:
@@ -875,14 +952,14 @@ rule alfa_qc:
             "{sample}",
             "ALFA",
             "{unique}",
-            "{sample}_Signal.{unique}.out.plus.bg"),
+            "{sample}.{unique}.plus.bg"),
         minus = os.path.join(
             config["output_dir"],
             "samples",
             "{sample}",
             "ALFA",
             "{unique}",
-            "{sample}_Signal.{unique}.out.minus.bg"),
+            "{sample}.{unique}.minus.bg"),
         gtf = lambda wildcards:
             os.path.join(
                 config["alfa_indexes"],
@@ -917,13 +994,13 @@ rule alfa_qc:
     params:
         out_dir = lambda wildcards, output:
             os.path.dirname(output.biotypes),
-        alfa_orientation = lambda wildcards:
-            directionality[samples_table.loc[
-                wildcards.sample, "kallisto_directionality"]],
-        in_file_plus = lambda wildcards, input:
+        plus = lambda wildcards, input:
             os.path.basename(input.plus),
-        in_file_minus = lambda wildcards, input:
+        minus = lambda wildcards, input:
             os.path.basename(input.minus),
+        alfa_orientation = lambda wildcards:
+            [samples_table.loc[
+                wildcards.sample, "alfa_directionality"]],
         genome_index = lambda wildcards, input:
             os.path.abspath(
                 os.path.join(
@@ -935,18 +1012,21 @@ rule alfa_qc:
         "docker://zavolab/alfa:1.1.1-slim"
 
     log:
-        os.path.abspath(os.path.join(
+        os.path.join(
             config["log_dir"],
-            "{sample}_alfa_qc.{unique}.log"))
+            "samples",
+            "{sample}",
+            "alfa_qc.{unique}.log")
 
     shell:
         "(cd {params.out_dir}; \
         alfa \
         -g {params.genome_index} \
-        --bedgraph {params.in_file_plus} {params.in_file_minus} {params.name} \
+        --bedgraph {params.plus} {params.minus} {params.name} \
         -s {params.alfa_orientation}) &> {log}"
 
 
+# cd {params.out_dir};
 rule alfa_qc_all_samples:
     '''
         Run ALFA from stranded bedgraph files on all samples
@@ -960,7 +1040,7 @@ rule alfa_qc_all_samples:
                     "{sample}",
                     "ALFA",
                     "{unique}",
-                    "{sample}" + ".ALFA_feature_counts.tsv"),
+                    "{sample}.ALFA_feature_counts.tsv"),
                 sample=samples_table.index.values,
                 unique=wildcards.unique)
     output:
@@ -1003,10 +1083,10 @@ rule alfa_concat_results:
             annotation=["Categories", "Biotypes"])
 
     output:
-        expand(os.path.join(
+        os.path.join(
             config["output_dir"],
             "ALFA",
-            "ALFA_plots.concat.png"))
+            "ALFA_plots_mqc.png")
 
     params:
         density = 300
@@ -1029,16 +1109,22 @@ rule prepare_multiqc_config:
         Prepare config for the MultiQC
     '''
     input:
-        logo_path = os.path.abspath(
-            os.path.join(
-                "images",
-                "logo.128px.png"))
+        script = os.path.join(
+            workflow.basedir,
+            "workflow",
+            "scripts",
+            "rhea_multiqc_config.py")
 
     output:
         multiqc_config = os.path.join(
             config["output_dir"],
             "multiqc_config.yaml")
 
+    params:
+        logo_path = config['logo'],
+        multiqc_intro_text = config['multiqc_intro_text'],
+        url = config['multiqc_url']
+
     log:
         stderr = os.path.join(
             config["log_dir"],
@@ -1048,9 +1134,11 @@ rule prepare_multiqc_config:
             "prepare_multiqc_config.stdout.log")
 
     shell:
-        "(python scripts/rhea_multiqc_config.py \
+        "(python {input.script} \
         --config {output.multiqc_config} \
-        --custom_logo {input.logo_path}) \
+        --intro-text '{params.multiqc_intro_text}' \
+        --custom-logo {params.logo_path} \
+        --url '{params.url}') \
         1> {log.stdout} 2> {log.stderr}"
 
 
@@ -1094,41 +1182,16 @@ rule multiqc_report:
 
         TIN_boxplot_PNG = os.path.join(
             config['output_dir'],
-            "TIN_scores_boxplot.png"),
+            "TIN_scores_boxplot_mqc.png"),
 
         TIN_boxplot_PDF = os.path.join(
             config['output_dir'],
-            "TIN_scores_boxplot.pdf"),
-
-        salmon_merge_genes = expand(
-            os.path.join(
-                config["output_dir"],
-                "summary_salmon",
-                "quantmerge",
-                "genes_{salmon_merge_on}.tsv"),
-            salmon_merge_on=["tpm", "numreads"]),
-
-        salmon_merge_transcripts = expand(
-            os.path.join(
-                config["output_dir"],
-                "summary_salmon",
-                "quantmerge",
-                "transcripts_{salmon_merge_on}.tsv"),
-            salmon_merge_on=["tpm", "numreads"]),
-
-        star_rpm = expand(
-            os.path.join(
-                config["output_dir"],
-                "samples",
-                "{sample}",
-                "STAR_coverage",
-                "{sample}_Signal.UniqueMultiple.str1.out.bg"),
-            sample=samples_table.index.values),
+            "TIN_scores_boxplot_mqc.pdf"),
 
         alfa_concat_out = os.path.join(
             config["output_dir"],
             "ALFA",
-            "ALFA_plots.concat.png"),
+            "ALFA_plots_mqc.png"),
 
         multiqc_config = os.path.join(
             config["output_dir"],
@@ -1165,11 +1228,9 @@ rule multiqc_report:
         1> {log.stdout} 2> {log.stderr}"
 
 
-
-
 rule sort_bed_4_big:
     '''
-    sort bedGraphs in order to work with bedGraphtobigWig
+        sort bedGraphs in order to work with bedGraphtobigWig
     '''
     input:
         bg = os.path.join(
@@ -1178,74 +1239,80 @@ rule sort_bed_4_big:
             "{sample}",
             "ALFA",
             "{unique}",
-            "{sample}_Signal.{unique}.out.{strand}.bg")
+            "{sample}.{unique}.{strand}.bg")
+
     output:
-        sorted_bg = os.path.join(config["output_dir"],
-                                "samples",
-                                "{sample}",
-                                "bigWig",
-                                "{unique}",
-                                "{sample}_{unique}_{strand}.sorted.bg")
+        sorted_bg = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "bigWig",
+            "{unique}",
+            "{sample}_{unique}_{strand}.sorted.bg")
+
     singularity:
         "docker://cjh4zavolab/bedtools:2.27"
+
     log:
         stderr = os.path.join(
             config["log_dir"],
             "samples",
             "{sample}",
-            "sort_bg_{unique}_{strand}.stderr.log"),
-        stdout = os.path.join(
-            config["log_dir"],
-            "samples",
-            "{sample}",
-            "sort_bg_{unique}_{strand}.stdout.log")
+            "sort_bg_{unique}_{strand}.stderr.log")
+
     shell:
-        '''
-        sortBed \
-        -i {input.bg} \
-        > {output.sorted_bg}
-        '''
+        "(sortBed \
+         -i {input.bg} \
+         > {output.sorted_bg};) 2> {log.stderr}"
 
 rule prepare_bigWig:
     '''
-    bedGraphtobigWig, for viewing in genome browsers
+        bedGraphtobigWig, for viewing in genome browsers
     '''
     input:
-        sorted_bg = os.path.join(config["output_dir"],
-                                "samples",
-                                "{sample}",
-                                "bigWig",
-                                "{unique}",
-                                "{sample}_{unique}_{strand}.sorted.bg"),
-        chr_sizes = lambda wildcards: os.path.join(config['star_indexes'],
-                            samples_table.loc[wildcards.sample, "organism"], 
-                            str(samples_table.loc[wildcards.sample, "index_size"]),
-                                "STAR_index",
-                                "chrNameLength.txt")
+        sorted_bg = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "bigWig",
+            "{unique}",
+            "{sample}_{unique}_{strand}.sorted.bg"),
+        chr_sizes = lambda wildcards:
+            os.path.join(
+                config['star_indexes'],
+                samples_table.loc[wildcards.sample, "organism"],
+                str(samples_table.loc[wildcards.sample, "index_size"]),
+                "STAR_index",
+                "chrNameLength.txt")
+
     output:
-        bigWig = os.path.join(config["output_dir"],
-                                "samples",
-                                "{sample}",
-                                "bigWig",
-                                "{unique}",
-                                "{sample}_{unique}_{strand}.bw")
+        bigWig = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "bigWig",
+            "{unique}",
+            "{sample}_{unique}_{strand}.bw")
+
     singularity:
         "docker://zavolab/bedgraphtobigwig:4-slim"
+
     log:
         stderr = os.path.join(
             config["log_dir"],
             "samples",
             "{sample}",
             "bigwig_{unique}_{strand}.stderr.log"),
+
         stdout = os.path.join(
             config["log_dir"],
             "samples",
             "{sample}",
             "bigwig_{unique}_{strand}.stdout.log")
+
     shell:
-        '''
-        bedGraphToBigWig \
-        {input.sorted_bg} \
-        {input.chr_sizes} \
-        {output.bigWig}
-        '''
+        "(bedGraphToBigWig \
+         {input.sorted_bg} \
+         {input.chr_sizes} \
+         {output.bigWig};) \
+         1> {log.stdout} 2> {log.stderr}"
diff --git a/images/dag_test_workflow.svg b/images/dag_test_workflow.svg
index 16ea258..ff48f0c 100644
--- a/images/dag_test_workflow.svg
+++ b/images/dag_test_workflow.svg
@@ -4,1088 +4,1094 @@
 <!-- Generated by graphviz version 2.40.1 (20161225.0304)
  -->
 <!-- Title: snakemake_dag Pages: 1 -->
-<svg width="2608pt" height="846pt"
- viewBox="0.00 0.00 2608.00 846.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<svg width="2215pt" height="846pt"
+ viewBox="0.00 0.00 2215.00 846.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
 <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 842)">
 <title>snakemake_dag</title>
-<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-842 2604,-842 2604,4 -4,4"/>
+<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-842 2211,-842 2211,4 -4,4"/>
 <!-- 0 -->
 <g id="node1" class="node">
 <title>0</title>
-<path fill="none" stroke="#56d8b1" stroke-width="2" d="M2004,-36C2004,-36 1974,-36 1974,-36 1968,-36 1962,-30 1962,-24 1962,-24 1962,-12 1962,-12 1962,-6 1968,0 1974,0 1974,0 2004,0 2004,0 2010,0 2016,-6 2016,-12 2016,-12 2016,-24 2016,-24 2016,-30 2010,-36 2004,-36"/>
-<text text-anchor="middle" x="1989" y="-15.5" font-family="sans" font-size="10.00" fill="#000000">finish</text>
+<path fill="none" stroke="#61d856" stroke-width="2" d="M1427,-36C1427,-36 1397,-36 1397,-36 1391,-36 1385,-30 1385,-24 1385,-24 1385,-12 1385,-12 1385,-6 1391,0 1397,0 1397,0 1427,0 1427,0 1433,0 1439,-6 1439,-12 1439,-12 1439,-24 1439,-24 1439,-30 1433,-36 1427,-36"/>
+<text text-anchor="middle" x="1412" y="-15.5" font-family="sans" font-size="10.00" fill="#000000">finish</text>
 </g>
 <!-- 1 -->
 <g id="node2" class="node">
 <title>1</title>
-<path fill="none" stroke="#d89556" stroke-width="2" d="M776,-108C776,-108 722,-108 722,-108 716,-108 710,-102 710,-96 710,-96 710,-84 710,-84 710,-78 716,-72 722,-72 722,-72 776,-72 776,-72 782,-72 788,-78 788,-84 788,-84 788,-96 788,-96 788,-102 782,-108 776,-108"/>
-<text text-anchor="middle" x="749" y="-87.5" font-family="sans" font-size="10.00" fill="#000000">multiqc_report</text>
+<path fill="none" stroke="#5682d8" stroke-width="2" d="M550,-108C550,-108 496,-108 496,-108 490,-108 484,-102 484,-96 484,-96 484,-84 484,-84 484,-78 490,-72 496,-72 496,-72 550,-72 550,-72 556,-72 562,-78 562,-84 562,-84 562,-96 562,-96 562,-102 556,-108 550,-108"/>
+<text text-anchor="middle" x="523" y="-87.5" font-family="sans" font-size="10.00" fill="#000000">multiqc_report</text>
 </g>
 <!-- 1&#45;&gt;0 -->
 <g id="edge1" class="edge">
 <title>1&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M788.1587,-87.7263C974.4344,-76.9103 1769.3634,-30.7531 1951.6479,-20.1688"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1952.0221,-23.6531 1961.8024,-19.5792 1951.6163,-16.6649 1952.0221,-23.6531"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M562.0407,-75.8968C567.3504,-74.3703 572.7714,-73.0081 578,-72 734.0365,-41.9147 1233.6371,-23.7794 1374.6315,-19.1702"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1375.027,-22.6594 1384.9085,-18.8376 1374.8004,-15.663 1375.027,-22.6594"/>
 </g>
 <!-- 2 -->
 <g id="node3" class="node">
 <title>2</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M1466,-252C1466,-252 1406,-252 1406,-252 1400,-252 1394,-246 1394,-240 1394,-240 1394,-228 1394,-228 1394,-222 1400,-216 1406,-216 1406,-216 1466,-216 1466,-216 1472,-216 1478,-222 1478,-228 1478,-228 1478,-240 1478,-240 1478,-246 1472,-252 1466,-252"/>
-<text text-anchor="middle" x="1436" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M1093,-252C1093,-252 1033,-252 1033,-252 1027,-252 1021,-246 1021,-240 1021,-240 1021,-228 1021,-228 1021,-222 1027,-216 1033,-216 1033,-216 1093,-216 1093,-216 1099,-216 1105,-222 1105,-228 1105,-228 1105,-240 1105,-240 1105,-246 1099,-252 1093,-252"/>
+<text text-anchor="middle" x="1063" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 2&#45;&gt;0 -->
 <g id="edge2" class="edge">
 <title>2&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1453.268,-215.7923C1487.0587,-181.4051 1565.8242,-107.2068 1648,-72 1702.2649,-48.7511 1874.9209,-29.3083 1951.6412,-21.5795"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1952.2036,-25.0409 1961.8077,-20.5675 1951.5102,-18.0754 1952.2036,-25.0409"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1092.1553,-215.9555C1155.6536,-176.6557 1306.3117,-83.4117 1375.7748,-40.4202"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1377.9636,-43.1817 1384.6248,-34.9428 1374.2796,-37.2295 1377.9636,-43.1817"/>
 </g>
 <!-- 3 -->
 <g id="node4" class="node">
 <title>3</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M1917,-252C1917,-252 1857,-252 1857,-252 1851,-252 1845,-246 1845,-240 1845,-240 1845,-228 1845,-228 1845,-222 1851,-216 1857,-216 1857,-216 1917,-216 1917,-216 1923,-216 1929,-222 1929,-228 1929,-228 1929,-240 1929,-240 1929,-246 1923,-252 1917,-252"/>
-<text text-anchor="middle" x="1887" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M1544,-252C1544,-252 1484,-252 1484,-252 1478,-252 1472,-246 1472,-240 1472,-240 1472,-228 1472,-228 1472,-222 1478,-216 1484,-216 1484,-216 1544,-216 1544,-216 1550,-216 1556,-222 1556,-228 1556,-228 1556,-240 1556,-240 1556,-246 1550,-252 1544,-252"/>
+<text text-anchor="middle" x="1514" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 3&#45;&gt;0 -->
 <g id="edge3" class="edge">
 <title>3&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1895.521,-215.9555C1913.4085,-178.0762 1954.9614,-90.0818 1976.1206,-45.274"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1979.3263,-46.6821 1980.4315,-36.1451 1972.9965,-43.693 1979.3263,-46.6821"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1505.479,-215.9555C1487.5915,-178.0762 1446.0386,-90.0818 1424.8794,-45.274"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1428.0035,-43.693 1420.5685,-36.1451 1421.6737,-46.6821 1428.0035,-43.693"/>
 </g>
 <!-- 4 -->
 <g id="node5" class="node">
 <title>4</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M1568,-252C1568,-252 1508,-252 1508,-252 1502,-252 1496,-246 1496,-240 1496,-240 1496,-228 1496,-228 1496,-222 1502,-216 1508,-216 1508,-216 1568,-216 1568,-216 1574,-216 1580,-222 1580,-228 1580,-228 1580,-240 1580,-240 1580,-246 1574,-252 1568,-252"/>
-<text text-anchor="middle" x="1538" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M1442,-252C1442,-252 1382,-252 1382,-252 1376,-252 1370,-246 1370,-240 1370,-240 1370,-228 1370,-228 1370,-222 1376,-216 1382,-216 1382,-216 1442,-216 1442,-216 1448,-216 1454,-222 1454,-228 1454,-228 1454,-240 1454,-240 1454,-246 1448,-252 1442,-252"/>
+<text text-anchor="middle" x="1412" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 4&#45;&gt;0 -->
 <g id="edge4" class="edge">
 <title>4&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1544.3856,-215.7719C1552.4206,-195.4198 1568.1264,-162.8694 1592,-144 1703.0743,-56.2085 1876.4655,-29.0029 1951.8817,-21.0621"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1952.254,-24.5424 1961.8563,-20.0652 1951.5578,-17.5771 1952.254,-24.5424"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1412,-215.9555C1412,-178.3938 1412,-91.5541 1412,-46.4103"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1415.5001,-46.145 1412,-36.1451 1408.5001,-46.1451 1415.5001,-46.145"/>
 </g>
 <!-- 5 -->
 <g id="node6" class="node">
 <title>5</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M2019,-252C2019,-252 1959,-252 1959,-252 1953,-252 1947,-246 1947,-240 1947,-240 1947,-228 1947,-228 1947,-222 1953,-216 1959,-216 1959,-216 2019,-216 2019,-216 2025,-216 2031,-222 2031,-228 2031,-228 2031,-240 2031,-240 2031,-246 2025,-252 2019,-252"/>
-<text text-anchor="middle" x="1989" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M1646,-252C1646,-252 1586,-252 1586,-252 1580,-252 1574,-246 1574,-240 1574,-240 1574,-228 1574,-228 1574,-222 1580,-216 1586,-216 1586,-216 1646,-216 1646,-216 1652,-216 1658,-222 1658,-228 1658,-228 1658,-240 1658,-240 1658,-246 1652,-252 1646,-252"/>
+<text text-anchor="middle" x="1616" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 5&#45;&gt;0 -->
 <g id="edge5" class="edge">
 <title>5&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1989,-215.9555C1989,-178.3938 1989,-91.5541 1989,-46.4103"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1992.5001,-46.145 1989,-36.1451 1985.5001,-46.1451 1992.5001,-46.145"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1598.958,-215.9555C1562.733,-177.5997 1477.9791,-87.8602 1436.1814,-43.6038"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1438.5478,-41.012 1429.137,-36.1451 1433.4587,-45.8184 1438.5478,-41.012"/>
 </g>
 <!-- 6 -->
 <g id="node7" class="node">
 <title>6</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M2121,-252C2121,-252 2061,-252 2061,-252 2055,-252 2049,-246 2049,-240 2049,-240 2049,-228 2049,-228 2049,-222 2055,-216 2061,-216 2061,-216 2121,-216 2121,-216 2127,-216 2133,-222 2133,-228 2133,-228 2133,-240 2133,-240 2133,-246 2127,-252 2121,-252"/>
-<text text-anchor="middle" x="2091" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M1748,-252C1748,-252 1688,-252 1688,-252 1682,-252 1676,-246 1676,-240 1676,-240 1676,-228 1676,-228 1676,-222 1682,-216 1688,-216 1688,-216 1748,-216 1748,-216 1754,-216 1760,-222 1760,-228 1760,-228 1760,-240 1760,-240 1760,-246 1754,-252 1748,-252"/>
+<text text-anchor="middle" x="1718" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 6&#45;&gt;0 -->
 <g id="edge6" class="edge">
 <title>6&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2082.479,-215.9555C2064.5915,-178.0762 2023.0386,-90.0818 2001.8794,-45.274"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2005.0035,-43.693 1997.5685,-36.1451 1998.6737,-46.6821 2005.0035,-43.693"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1693.722,-215.9072C1652.879,-185.5906 1567.6586,-122.8529 1494,-72 1479.0147,-61.6544 1462.2568,-50.5397 1447.8152,-41.0995"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1449.4484,-37.9862 1439.1592,-35.4598 1445.6271,-43.8512 1449.4484,-37.9862"/>
 </g>
 <!-- 7 -->
 <g id="node8" class="node">
 <title>7</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M2344,-252C2344,-252 2284,-252 2284,-252 2278,-252 2272,-246 2272,-240 2272,-240 2272,-228 2272,-228 2272,-222 2278,-216 2284,-216 2284,-216 2344,-216 2344,-216 2350,-216 2356,-222 2356,-228 2356,-228 2356,-240 2356,-240 2356,-246 2350,-252 2344,-252"/>
-<text text-anchor="middle" x="2314" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M2129,-252C2129,-252 2069,-252 2069,-252 2063,-252 2057,-246 2057,-240 2057,-240 2057,-228 2057,-228 2057,-222 2063,-216 2069,-216 2069,-216 2129,-216 2129,-216 2135,-216 2141,-222 2141,-228 2141,-228 2141,-240 2141,-240 2141,-246 2135,-252 2129,-252"/>
+<text text-anchor="middle" x="2099" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 7&#45;&gt;0 -->
 <g id="edge7" class="edge">
 <title>7&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2287.064,-215.9709C2242.2713,-186.0057 2149.6162,-124.0906 2071,-72 2055.9379,-62.0199 2039.2903,-51.0464 2024.9527,-41.6132"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2026.6371,-38.5319 2016.3588,-35.9614 2022.7907,-44.3805 2026.6371,-38.5319"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2056.9312,-217.9227C1975.6082,-187.1762 1790.8364,-118.9323 1632,-72 1568.4511,-53.2228 1493.2525,-35.7706 1449.2679,-26.0333"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1449.8318,-22.5737 1439.3133,-23.8435 1448.3278,-29.4103 1449.8318,-22.5737"/>
 </g>
 <!-- 8 -->
 <g id="node9" class="node">
 <title>8</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M2223,-252C2223,-252 2163,-252 2163,-252 2157,-252 2151,-246 2151,-240 2151,-240 2151,-228 2151,-228 2151,-222 2157,-216 2163,-216 2163,-216 2223,-216 2223,-216 2229,-216 2235,-222 2235,-228 2235,-228 2235,-240 2235,-240 2235,-246 2229,-252 2223,-252"/>
-<text text-anchor="middle" x="2193" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M1952,-252C1952,-252 1892,-252 1892,-252 1886,-252 1880,-246 1880,-240 1880,-240 1880,-228 1880,-228 1880,-222 1886,-216 1892,-216 1892,-216 1952,-216 1952,-216 1958,-216 1964,-222 1964,-228 1964,-228 1964,-240 1964,-240 1964,-246 1958,-252 1952,-252"/>
+<text text-anchor="middle" x="1922" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 8&#45;&gt;0 -->
 <g id="edge8" class="edge">
 <title>8&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2175.958,-215.9555C2139.733,-177.5997 2054.9791,-87.8602 2013.1814,-43.6038"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2015.5478,-41.012 2006.137,-36.1451 2010.4587,-45.8184 2015.5478,-41.012"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1887.3636,-215.995C1825.8949,-184.4377 1693.2497,-118.1145 1577,-72 1533.8362,-54.8776 1482.8667,-38.8067 1449.1192,-28.7229"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1449.8088,-25.2769 1439.2264,-25.7912 1447.8198,-31.9884 1449.8088,-25.2769"/>
 </g>
 <!-- 9 -->
 <g id="node10" class="node">
 <title>9</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M2484,-252C2484,-252 2424,-252 2424,-252 2418,-252 2412,-246 2412,-240 2412,-240 2412,-228 2412,-228 2412,-222 2418,-216 2424,-216 2424,-216 2484,-216 2484,-216 2490,-216 2496,-222 2496,-228 2496,-228 2496,-240 2496,-240 2496,-246 2490,-252 2484,-252"/>
-<text text-anchor="middle" x="2454" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M1850,-252C1850,-252 1790,-252 1790,-252 1784,-252 1778,-246 1778,-240 1778,-240 1778,-228 1778,-228 1778,-222 1784,-216 1790,-216 1790,-216 1850,-216 1850,-216 1856,-216 1862,-222 1862,-228 1862,-228 1862,-240 1862,-240 1862,-246 1856,-252 1850,-252"/>
+<text text-anchor="middle" x="1820" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 9&#45;&gt;0 -->
 <g id="edge9" class="edge">
 <title>9&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2416.582,-215.9588C2353.6882,-185.7174 2222.6935,-123.0863 2111,-72 2082.3629,-58.902 2049.7344,-44.4861 2025.4304,-33.8461"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2026.7854,-30.6187 2016.2206,-29.8205 2023.9817,-37.0327 2026.7854,-30.6187"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1789.798,-215.8251C1737.8788,-184.8511 1628.0161,-120.486 1532,-72 1504.3979,-58.0616 1472.4382,-43.7668 1448.4447,-33.389"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1449.5826,-30.0685 1439.0133,-29.3337 1446.8175,-36.4992 1449.5826,-30.0685"/>
 </g>
 <!-- 10 -->
 <g id="node11" class="node">
 <title>10</title>
-<path fill="none" stroke="#56d0d8" stroke-width="2" d="M54,-612C54,-612 24,-612 24,-612 18,-612 12,-606 12,-600 12,-600 12,-588 12,-588 12,-582 18,-576 24,-576 24,-576 54,-576 54,-576 60,-576 66,-582 66,-588 66,-588 66,-600 66,-600 66,-606 60,-612 54,-612"/>
-<text text-anchor="middle" x="39" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
+<path fill="none" stroke="#a7d856" stroke-width="2" d="M711,-108C711,-108 599,-108 599,-108 593,-108 587,-102 587,-96 587,-96 587,-84 587,-84 587,-78 593,-72 599,-72 599,-72 711,-72 711,-72 717,-72 723,-78 723,-84 723,-84 723,-96 723,-96 723,-102 717,-108 711,-108"/>
+<text text-anchor="middle" x="655" y="-93" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_genes</text>
+<text text-anchor="middle" x="655" y="-82" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: tpm</text>
 </g>
-<!-- 10&#45;&gt;1 -->
+<!-- 10&#45;&gt;0 -->
 <g id="edge10" class="edge">
-<title>10&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M40.6576,-575.8326C43.0009,-548.5392 47,-495.3198 47,-450 47,-450 47,-450 47,-234 47,-191.3959 46.0822,-169.7816 80,-144 129.0329,-106.729 553.3872,-94.1885 699.6762,-90.9514"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="699.7975,-94.4497 709.7194,-90.7342 699.6461,-87.4513 699.7975,-94.4497"/>
+<title>10&#45;&gt;0</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M723.3736,-73.621C726.6199,-73.0325 729.8409,-72.4874 733,-72 975.967,-34.5133 1272.1003,-22.2994 1374.8183,-19.0327"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1375.0988,-22.5258 1384.986,-18.7188 1374.8827,-15.5292 1375.0988,-22.5258"/>
 </g>
 <!-- 11 -->
 <g id="node12" class="node">
 <title>11</title>
-<path fill="none" stroke="#56d0d8" stroke-width="2" d="M342,-686.5C342,-686.5 312,-686.5 312,-686.5 306,-686.5 300,-680.5 300,-674.5 300,-674.5 300,-662.5 300,-662.5 300,-656.5 306,-650.5 312,-650.5 312,-650.5 342,-650.5 342,-650.5 348,-650.5 354,-656.5 354,-662.5 354,-662.5 354,-674.5 354,-674.5 354,-680.5 348,-686.5 342,-686.5"/>
-<text text-anchor="middle" x="327" y="-666" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
+<path fill="none" stroke="#a7d856" stroke-width="2" d="M874.5,-108C874.5,-108 753.5,-108 753.5,-108 747.5,-108 741.5,-102 741.5,-96 741.5,-96 741.5,-84 741.5,-84 741.5,-78 747.5,-72 753.5,-72 753.5,-72 874.5,-72 874.5,-72 880.5,-72 886.5,-78 886.5,-84 886.5,-84 886.5,-96 886.5,-96 886.5,-102 880.5,-108 874.5,-108"/>
+<text text-anchor="middle" x="814" y="-93" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_genes</text>
+<text text-anchor="middle" x="814" y="-82" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: numreads</text>
 </g>
-<!-- 11&#45;&gt;1 -->
+<!-- 11&#45;&gt;0 -->
 <g id="edge11" class="edge">
-<title>11&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M299.8159,-664.4991C238.3531,-653.7581 94,-618.2825 94,-522 94,-522 94,-522 94,-234 94,-193.1184 82.3655,-171.0709 113,-144 156.6446,-105.4325 557.5495,-93.7918 699.4823,-90.8625"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="699.714,-94.3586 709.6417,-90.6586 699.5735,-87.36 699.714,-94.3586"/>
+<title>11&#45;&gt;0</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M886.7966,-73.5776C889.9008,-73.0174 892.9784,-72.4882 896,-72 1074.0062,-43.2409 1289.15,-26.4392 1374.4987,-20.48"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1374.9889,-23.9546 1384.7244,-19.7748 1374.5073,-16.9712 1374.9889,-23.9546"/>
 </g>
 <!-- 12 -->
 <g id="node13" class="node">
 <title>12</title>
-<path fill="none" stroke="#56d0d8" stroke-width="2" d="M1086,-761C1086,-761 1056,-761 1056,-761 1050,-761 1044,-755 1044,-749 1044,-749 1044,-737 1044,-737 1044,-731 1050,-725 1056,-725 1056,-725 1086,-725 1086,-725 1092,-725 1098,-731 1098,-737 1098,-737 1098,-749 1098,-749 1098,-755 1092,-761 1086,-761"/>
-<text text-anchor="middle" x="1071" y="-740.5" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
+<path fill="none" stroke="#56d8b9" stroke-width="2" d="M1047.5,-108C1047.5,-108 916.5,-108 916.5,-108 910.5,-108 904.5,-102 904.5,-96 904.5,-96 904.5,-84 904.5,-84 904.5,-78 910.5,-72 916.5,-72 916.5,-72 1047.5,-72 1047.5,-72 1053.5,-72 1059.5,-78 1059.5,-84 1059.5,-84 1059.5,-96 1059.5,-96 1059.5,-102 1053.5,-108 1047.5,-108"/>
+<text text-anchor="middle" x="982" y="-93" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_transcripts</text>
+<text text-anchor="middle" x="982" y="-82" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: tpm</text>
 </g>
-<!-- 12&#45;&gt;1 -->
+<!-- 12&#45;&gt;0 -->
 <g id="edge12" class="edge">
-<title>12&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1098.2825,-732.7686C1144.6847,-713.3904 1234,-666.6546 1234,-594 1234,-594 1234,-594 1234,-522 1234,-481.1184 1226.1917,-471.3199 1215,-432 1210.343,-415.6386 1207.049,-412.2447 1202,-396 1167.6366,-285.4396 1222.5332,-220.9184 1136,-144 1111.1171,-121.8819 896.8409,-101.9327 798.2592,-93.8315"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="798.4921,-90.339 788.2412,-93.0164 797.9243,-97.316 798.4921,-90.339"/>
+<title>12&#45;&gt;0</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1059.7522,-73.7211C1062.8734,-73.1286 1065.9651,-72.5525 1069,-72 1179.7261,-51.8415 1311.3797,-32.365 1374.5444,-23.2974"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1375.3983,-26.711 1384.8019,-21.8301 1374.407,-19.7815 1375.3983,-26.711"/>
 </g>
 <!-- 13 -->
 <g id="node14" class="node">
 <title>13</title>
-<path fill="none" stroke="#d85656" stroke-width="2" d="M331,-252C331,-252 189,-252 189,-252 183,-252 177,-246 177,-240 177,-240 177,-228 177,-228 177,-222 183,-216 189,-216 189,-216 331,-216 331,-216 337,-216 343,-222 343,-228 343,-228 343,-240 343,-240 343,-246 337,-252 331,-252"/>
-<text text-anchor="middle" x="260" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">pe_genome_quantification_kallisto</text>
+<path fill="none" stroke="#56d8b9" stroke-width="2" d="M1220.5,-108C1220.5,-108 1089.5,-108 1089.5,-108 1083.5,-108 1077.5,-102 1077.5,-96 1077.5,-96 1077.5,-84 1077.5,-84 1077.5,-78 1083.5,-72 1089.5,-72 1089.5,-72 1220.5,-72 1220.5,-72 1226.5,-72 1232.5,-78 1232.5,-84 1232.5,-84 1232.5,-96 1232.5,-96 1232.5,-102 1226.5,-108 1220.5,-108"/>
+<text text-anchor="middle" x="1155" y="-93" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_transcripts</text>
+<text text-anchor="middle" x="1155" y="-82" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: numreads</text>
 </g>
-<!-- 13&#45;&gt;1 -->
+<!-- 13&#45;&gt;0 -->
 <g id="edge13" class="edge">
-<title>13&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M265.5283,-215.7016C272.9236,-194.6395 288.1899,-160.7974 314,-144 376.6805,-103.2072 599.5224,-93.222 699.6508,-90.7842"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="699.89,-94.2798 709.8076,-90.5527 699.7305,-87.2816 699.89,-94.2798"/>
+<title>13&#45;&gt;0</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1219.5202,-71.9243C1268.592,-58.1766 1334.3764,-39.7467 1374.9385,-28.383"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1375.9969,-31.7213 1384.6819,-25.6533 1374.1084,-24.9808 1375.9969,-31.7213"/>
 </g>
 <!-- 14 -->
 <g id="node15" class="node">
 <title>14</title>
-<path fill="none" stroke="#56d8a2" stroke-width="2" d="M499,-252C499,-252 373,-252 373,-252 367,-252 361,-246 361,-240 361,-240 361,-228 361,-228 361,-222 367,-216 373,-216 373,-216 499,-216 499,-216 505,-216 511,-222 511,-228 511,-228 511,-240 511,-240 511,-246 505,-252 499,-252"/>
-<text text-anchor="middle" x="436" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">genome_quantification_kallisto</text>
+<path fill="none" stroke="#56d8d8" stroke-width="2" d="M158,-612C158,-612 128,-612 128,-612 122,-612 116,-606 116,-600 116,-600 116,-588 116,-588 116,-582 122,-576 128,-576 128,-576 158,-576 158,-576 164,-576 170,-582 170,-588 170,-588 170,-600 170,-600 170,-606 164,-612 158,-612"/>
+<text text-anchor="middle" x="143" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
 </g>
 <!-- 14&#45;&gt;1 -->
 <g id="edge14" class="edge">
 <title>14&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M369.4141,-215.9556C351.9848,-207.8798 335.2289,-196.3513 325,-180 316.5145,-166.4355 314.4251,-156.0071 325,-144 349.4441,-116.2452 592.9552,-98.97 699.5097,-92.6844"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="699.9056,-96.1674 709.6857,-92.0931 699.4995,-89.1792 699.9056,-96.1674"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M146.5224,-575.8955C151.5018,-548.6824 160,-495.5642 160,-450 160,-450 160,-450 160,-234 160,-192.6022 153.2643,-171.7325 184,-144 225.7852,-106.2976 390.4391,-94.8341 473.9163,-91.4146"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="474.066,-94.9115 483.9231,-91.0274 473.7953,-87.9167 474.066,-94.9115"/>
 </g>
 <!-- 15 -->
 <g id="node16" class="node">
 <title>15</title>
-<path fill="none" stroke="#56d863" stroke-width="2" d="M1114.5,-180C1114.5,-180 1049.5,-180 1049.5,-180 1043.5,-180 1037.5,-174 1037.5,-168 1037.5,-168 1037.5,-156 1037.5,-156 1037.5,-150 1043.5,-144 1049.5,-144 1049.5,-144 1114.5,-144 1114.5,-144 1120.5,-144 1126.5,-150 1126.5,-156 1126.5,-156 1126.5,-168 1126.5,-168 1126.5,-174 1120.5,-180 1114.5,-180"/>
-<text text-anchor="middle" x="1082" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">plot_TIN_scores</text>
+<path fill="none" stroke="#56d8d8" stroke-width="2" d="M213,-686.5C213,-686.5 183,-686.5 183,-686.5 177,-686.5 171,-680.5 171,-674.5 171,-674.5 171,-662.5 171,-662.5 171,-656.5 177,-650.5 183,-650.5 183,-650.5 213,-650.5 213,-650.5 219,-650.5 225,-656.5 225,-662.5 225,-662.5 225,-674.5 225,-674.5 225,-680.5 219,-686.5 213,-686.5"/>
+<text text-anchor="middle" x="198" y="-666" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
 </g>
 <!-- 15&#45;&gt;1 -->
 <g id="edge15" class="edge">
 <title>15&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1037.3555,-147.8586C1032.5291,-146.4858 1027.6748,-145.1705 1023,-144 945.2348,-124.5279 853.6226,-107.6826 798.4903,-98.1938"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="798.7454,-94.6867 788.2987,-96.452 797.5662,-101.5866 798.7454,-94.6867"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M198,-650.4571C198,-622.8072 198,-568.2899 198,-522 198,-522 198,-522 198,-234 198,-174.3671 383.2109,-122.7057 473.9999,-100.964"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="474.8718,-104.3544 483.7974,-98.6462 473.2602,-97.5424 474.8718,-104.3544"/>
 </g>
 <!-- 16 -->
 <g id="node17" class="node">
 <title>16</title>
-<path fill="none" stroke="#5663d8" stroke-width="2" d="M805,-180C805,-180 693,-180 693,-180 687,-180 681,-174 681,-168 681,-168 681,-156 681,-156 681,-150 687,-144 693,-144 693,-144 805,-144 805,-144 811,-144 817,-150 817,-156 817,-156 817,-168 817,-168 817,-174 811,-180 805,-180"/>
-<text text-anchor="middle" x="749" y="-165" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_genes</text>
-<text text-anchor="middle" x="749" y="-154" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: tpm</text>
+<path fill="none" stroke="#56d8d8" stroke-width="2" d="M965,-761C965,-761 935,-761 935,-761 929,-761 923,-755 923,-749 923,-749 923,-737 923,-737 923,-731 929,-725 935,-725 935,-725 965,-725 965,-725 971,-725 977,-731 977,-737 977,-737 977,-749 977,-749 977,-755 971,-761 965,-761"/>
+<text text-anchor="middle" x="950" y="-740.5" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
 </g>
 <!-- 16&#45;&gt;1 -->
 <g id="edge16" class="edge">
 <title>16&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M749,-143.8314C749,-136.131 749,-126.9743 749,-118.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="752.5001,-118.4132 749,-108.4133 745.5001,-118.4133 752.5001,-118.4132"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M957.6647,-724.9179C978.2525,-673.2139 1028.7693,-522.6556 961,-432 927.151,-386.7198 885.5728,-428.0472 839,-396 783.9576,-358.1247 726.792,-186.2112 675,-144 670.7456,-140.5326 614.688,-121.0573 571.8768,-106.4828"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="572.7387,-103.0792 562.1443,-103.176 570.4867,-109.7071 572.7387,-103.0792"/>
 </g>
 <!-- 17 -->
 <g id="node18" class="node">
 <title>17</title>
-<path fill="none" stroke="#5663d8" stroke-width="2" d="M968.5,-180C968.5,-180 847.5,-180 847.5,-180 841.5,-180 835.5,-174 835.5,-168 835.5,-168 835.5,-156 835.5,-156 835.5,-150 841.5,-144 847.5,-144 847.5,-144 968.5,-144 968.5,-144 974.5,-144 980.5,-150 980.5,-156 980.5,-156 980.5,-168 980.5,-168 980.5,-174 974.5,-180 968.5,-180"/>
-<text text-anchor="middle" x="908" y="-165" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_genes</text>
-<text text-anchor="middle" x="908" y="-154" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: numreads</text>
+<path fill="none" stroke="#56d8c9" stroke-width="2" d="M418,-252C418,-252 276,-252 276,-252 270,-252 264,-246 264,-240 264,-240 264,-228 264,-228 264,-222 270,-216 276,-216 276,-216 418,-216 418,-216 424,-216 430,-222 430,-228 430,-228 430,-240 430,-240 430,-246 424,-252 418,-252"/>
+<text text-anchor="middle" x="347" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">pe_genome_quantification_kallisto</text>
 </g>
 <!-- 17&#45;&gt;1 -->
 <g id="edge17" class="edge">
 <title>17&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M867.8776,-143.8314C846.4653,-134.1352 819.9543,-122.1303 797.4052,-111.9193"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="798.5636,-108.6018 788.0103,-107.665 795.676,-114.9785 798.5636,-108.6018"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M369.2905,-215.7623C400.6323,-190.119 457.8101,-143.3372 492.9013,-114.6262"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="495.3672,-117.1309 500.8905,-108.0896 490.9345,-111.7132 495.3672,-117.1309"/>
 </g>
 <!-- 18 -->
 <g id="node19" class="node">
 <title>18</title>
-<path fill="none" stroke="#d88556" stroke-width="2" d="M477.5,-180C477.5,-180 346.5,-180 346.5,-180 340.5,-180 334.5,-174 334.5,-168 334.5,-168 334.5,-156 334.5,-156 334.5,-150 340.5,-144 346.5,-144 346.5,-144 477.5,-144 477.5,-144 483.5,-144 489.5,-150 489.5,-156 489.5,-156 489.5,-168 489.5,-168 489.5,-174 483.5,-180 477.5,-180"/>
-<text text-anchor="middle" x="412" y="-165" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_transcripts</text>
-<text text-anchor="middle" x="412" y="-154" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: tpm</text>
+<path fill="none" stroke="#56d86b" stroke-width="2" d="M586,-252C586,-252 460,-252 460,-252 454,-252 448,-246 448,-240 448,-240 448,-228 448,-228 448,-222 454,-216 460,-216 460,-216 586,-216 586,-216 592,-216 598,-222 598,-228 598,-228 598,-240 598,-240 598,-246 592,-252 586,-252"/>
+<text text-anchor="middle" x="523" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">genome_quantification_kallisto</text>
 </g>
 <!-- 18&#45;&gt;1 -->
 <g id="edge18" class="edge">
 <title>18&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M489.7378,-145.3913C554.5175,-131.5512 644.8076,-112.2607 699.9542,-100.4786"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="700.7802,-103.8812 709.8282,-98.369 699.3176,-97.0357 700.7802,-103.8812"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M523,-215.7623C523,-191.201 523,-147.2474 523,-118.3541"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="526.5001,-118.0896 523,-108.0896 519.5001,-118.0897 526.5001,-118.0896"/>
 </g>
 <!-- 19 -->
 <g id="node20" class="node">
 <title>19</title>
-<path fill="none" stroke="#d88556" stroke-width="2" d="M650.5,-180C650.5,-180 519.5,-180 519.5,-180 513.5,-180 507.5,-174 507.5,-168 507.5,-168 507.5,-156 507.5,-156 507.5,-150 513.5,-144 519.5,-144 519.5,-144 650.5,-144 650.5,-144 656.5,-144 662.5,-150 662.5,-156 662.5,-156 662.5,-168 662.5,-168 662.5,-174 656.5,-180 650.5,-180"/>
-<text text-anchor="middle" x="585" y="-165" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_transcripts</text>
-<text text-anchor="middle" x="585" y="-154" font-family="sans" font-size="10.00" fill="#000000">salmon_merge_on: numreads</text>
+<path fill="none" stroke="#56c1d8" stroke-width="2" d="M653.5,-180C653.5,-180 588.5,-180 588.5,-180 582.5,-180 576.5,-174 576.5,-168 576.5,-168 576.5,-156 576.5,-156 576.5,-150 582.5,-144 588.5,-144 588.5,-144 653.5,-144 653.5,-144 659.5,-144 665.5,-150 665.5,-156 665.5,-156 665.5,-168 665.5,-168 665.5,-174 659.5,-180 653.5,-180"/>
+<text text-anchor="middle" x="621" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">plot_TIN_scores</text>
 </g>
 <!-- 19&#45;&gt;1 -->
 <g id="edge19" class="edge">
 <title>19&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M626.3841,-143.8314C648.902,-133.9455 676.8866,-121.6595 700.4333,-111.322"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="702.1378,-114.3962 709.8872,-107.1715 699.3238,-107.9867 702.1378,-114.3962"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M596.2705,-143.8314C584.0838,-134.8779 569.2177,-123.9558 556.0688,-114.2955"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="557.8527,-111.263 547.7216,-108.1628 553.7082,-116.9042 557.8527,-111.263"/>
 </g>
 <!-- 20 -->
 <g id="node21" class="node">
 <title>20</title>
-<path fill="none" stroke="#d8c356" stroke-width="2" d="M933.5,-468C933.5,-468 902.5,-468 902.5,-468 896.5,-468 890.5,-462 890.5,-456 890.5,-456 890.5,-444 890.5,-444 890.5,-438 896.5,-432 902.5,-432 902.5,-432 933.5,-432 933.5,-432 939.5,-432 945.5,-438 945.5,-444 945.5,-444 945.5,-456 945.5,-456 945.5,-462 939.5,-468 933.5,-468"/>
-<text text-anchor="middle" x="918" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">star_rpm</text>
+<path fill="none" stroke="#d6d856" stroke-width="2" d="M1354.5,-180C1354.5,-180 1277.5,-180 1277.5,-180 1271.5,-180 1265.5,-174 1265.5,-168 1265.5,-168 1265.5,-156 1265.5,-156 1265.5,-150 1271.5,-144 1277.5,-144 1277.5,-144 1354.5,-144 1354.5,-144 1360.5,-144 1366.5,-150 1366.5,-156 1366.5,-156 1366.5,-168 1366.5,-168 1366.5,-174 1360.5,-180 1354.5,-180"/>
+<text text-anchor="middle" x="1316" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">alfa_concat_results</text>
 </g>
 <!-- 20&#45;&gt;1 -->
 <g id="edge20" class="edge">
 <title>20&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M931.5988,-431.8479C968.189,-380.6481 1061.2944,-233.0369 990,-144 966.4535,-114.5937 861.6864,-100.1145 798.2917,-93.9252"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="798.3938,-90.4194 788.1099,-92.9674 797.7381,-97.3887 798.3938,-90.4194"/>
-</g>
-<!-- 48 -->
-<g id="node49" class="node">
-<title>48</title>
-<path fill="none" stroke="#5692d8" stroke-width="2" d="M1357,-396C1357,-396 1251,-396 1251,-396 1245,-396 1239,-390 1239,-384 1239,-384 1239,-372 1239,-372 1239,-366 1245,-360 1251,-360 1251,-360 1357,-360 1357,-360 1363,-360 1369,-366 1369,-372 1369,-372 1369,-384 1369,-384 1369,-390 1363,-396 1357,-396"/>
-<text text-anchor="middle" x="1304" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
-<text text-anchor="middle" x="1304" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: Unique</text>
-</g>
-<!-- 20&#45;&gt;48 -->
-<g id="edge89" class="edge">
-<title>20&#45;&gt;48</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M945.5144,-435.5149C948.6601,-434.1905 951.8639,-432.9809 955,-432 1004.6733,-416.4629 1141.9601,-397.7834 1228.8032,-386.9632"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1229.379,-390.4187 1238.8727,-385.7156 1228.5182,-383.4718 1229.379,-390.4187"/>
-</g>
-<!-- 49 -->
-<g id="node50" class="node">
-<title>49</title>
-<path fill="none" stroke="#5692d8" stroke-width="2" d="M1518,-396C1518,-396 1412,-396 1412,-396 1406,-396 1400,-390 1400,-384 1400,-384 1400,-372 1400,-372 1400,-366 1406,-360 1412,-360 1412,-360 1518,-360 1518,-360 1524,-360 1530,-366 1530,-372 1530,-372 1530,-384 1530,-384 1530,-390 1524,-396 1518,-396"/>
-<text text-anchor="middle" x="1465" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
-<text text-anchor="middle" x="1465" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: UniqueMultiple</text>
-</g>
-<!-- 20&#45;&gt;49 -->
-<g id="edge90" class="edge">
-<title>20&#45;&gt;49</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M945.8624,-435.13C948.8882,-433.9145 951.9698,-432.8349 955,-432 1136.9022,-381.8842 1191.2857,-423.1619 1378,-396 1381.8397,-395.4414 1385.7649,-394.8188 1389.7216,-394.1502"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1390.3544,-397.5926 1399.5915,-392.4034 1389.1345,-390.6997 1390.3544,-397.5926"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1265.3906,-159.0123C1109.806,-149.7276 644.9987,-121.2095 578,-108 575.9592,-107.5976 573.8889,-107.1426 571.807,-106.6461"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="572.6115,-103.2386 562.0487,-104.0619 570.8195,-110.0054 572.6115,-103.2386"/>
 </g>
 <!-- 21 -->
 <g id="node22" class="node">
 <title>21</title>
-<path fill="none" stroke="#d8c356" stroke-width="2" d="M1479.5,-468C1479.5,-468 1448.5,-468 1448.5,-468 1442.5,-468 1436.5,-462 1436.5,-456 1436.5,-456 1436.5,-444 1436.5,-444 1436.5,-438 1442.5,-432 1448.5,-432 1448.5,-432 1479.5,-432 1479.5,-432 1485.5,-432 1491.5,-438 1491.5,-444 1491.5,-444 1491.5,-456 1491.5,-456 1491.5,-462 1485.5,-468 1479.5,-468"/>
-<text text-anchor="middle" x="1464" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">star_rpm</text>
+<path fill="none" stroke="#d8bc56" stroke-width="2" d="M119.5,-180C119.5,-180 26.5,-180 26.5,-180 20.5,-180 14.5,-174 14.5,-168 14.5,-168 14.5,-156 14.5,-156 14.5,-150 20.5,-144 26.5,-144 26.5,-144 119.5,-144 119.5,-144 125.5,-144 131.5,-150 131.5,-156 131.5,-156 131.5,-168 131.5,-168 131.5,-174 125.5,-180 119.5,-180"/>
+<text text-anchor="middle" x="73" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">prepare_multiqc_config</text>
 </g>
 <!-- 21&#45;&gt;1 -->
 <g id="edge21" class="edge">
 <title>21&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1436.2499,-447.2272C1380.7817,-441.1241 1259.0457,-424.7366 1230,-396 1148.0822,-314.9538 1254.8249,-220.8967 1169,-144 1141.7766,-119.6086 903.3729,-100.5248 798.336,-93.2227"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="798.5158,-89.7269 788.2992,-92.5327 798.0356,-96.7104 798.5158,-89.7269"/>
-</g>
-<!-- 50 -->
-<g id="node51" class="node">
-<title>50</title>
-<path fill="none" stroke="#5692d8" stroke-width="2" d="M1916,-396C1916,-396 1810,-396 1810,-396 1804,-396 1798,-390 1798,-384 1798,-384 1798,-372 1798,-372 1798,-366 1804,-360 1810,-360 1810,-360 1916,-360 1916,-360 1922,-360 1928,-366 1928,-372 1928,-372 1928,-384 1928,-384 1928,-390 1922,-396 1916,-396"/>
-<text text-anchor="middle" x="1863" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
-<text text-anchor="middle" x="1863" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: Unique</text>
-</g>
-<!-- 21&#45;&gt;50 -->
-<g id="edge91" class="edge">
-<title>21&#45;&gt;50</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1491.7401,-444.9943C1552.2965,-434.0668 1698.0829,-407.7595 1787.8967,-391.5525"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1788.5344,-394.994 1797.7539,-389.7737 1787.2912,-388.1053 1788.5344,-394.994"/>
-</g>
-<!-- 51 -->
-<g id="node52" class="node">
-<title>51</title>
-<path fill="none" stroke="#5692d8" stroke-width="2" d="M2064,-396C2064,-396 1958,-396 1958,-396 1952,-396 1946,-390 1946,-384 1946,-384 1946,-372 1946,-372 1946,-366 1952,-360 1958,-360 1958,-360 2064,-360 2064,-360 2070,-360 2076,-366 2076,-372 2076,-372 2076,-384 2076,-384 2076,-390 2070,-396 2064,-396"/>
-<text text-anchor="middle" x="2011" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
-<text text-anchor="middle" x="2011" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: UniqueMultiple</text>
-</g>
-<!-- 21&#45;&gt;51 -->
-<g id="edge92" class="edge">
-<title>21&#45;&gt;51</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1491.6324,-448.0589C1563.3904,-442.7615 1761.6282,-426.4906 1935.8683,-396.086"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1936.4844,-399.5315 1945.7238,-394.3464 1935.2676,-392.638 1936.4844,-399.5315"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M131.8552,-146.9546C136.6282,-145.8973 141.3872,-144.8968 146,-144 262.7643,-121.3004 401.5988,-103.8369 473.8202,-95.4605"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="474.4477,-98.9115 483.9819,-94.291 473.6473,-91.9574 474.4477,-98.9115"/>
 </g>
 <!-- 22 -->
 <g id="node23" class="node">
 <title>22</title>
-<path fill="none" stroke="#d86656" stroke-width="2" d="M1689.5,-180C1689.5,-180 1612.5,-180 1612.5,-180 1606.5,-180 1600.5,-174 1600.5,-168 1600.5,-168 1600.5,-156 1600.5,-156 1600.5,-150 1606.5,-144 1612.5,-144 1612.5,-144 1689.5,-144 1689.5,-144 1695.5,-144 1701.5,-150 1701.5,-156 1701.5,-156 1701.5,-168 1701.5,-168 1701.5,-174 1695.5,-180 1689.5,-180"/>
-<text text-anchor="middle" x="1651" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">alfa_concat_results</text>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M863.5,-324C863.5,-324 804.5,-324 804.5,-324 798.5,-324 792.5,-318 792.5,-312 792.5,-312 792.5,-300 792.5,-300 792.5,-294 798.5,-288 804.5,-288 804.5,-288 863.5,-288 863.5,-288 869.5,-288 875.5,-294 875.5,-300 875.5,-300 875.5,-312 875.5,-312 875.5,-318 869.5,-324 863.5,-324"/>
+<text text-anchor="middle" x="834" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="834" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
 </g>
-<!-- 22&#45;&gt;1 -->
+<!-- 22&#45;&gt;2 -->
 <g id="edge22" class="edge">
-<title>22&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1600.2464,-157.9487C1441.5815,-145.2837 956.1521,-106.5354 798.8019,-93.9753"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="798.7299,-90.4585 788.4831,-93.1516 798.1729,-97.4363 798.7299,-90.4585"/>
+<title>22&#45;&gt;2</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M875.6966,-291.1127C878.8393,-290.043 881.9666,-288.9949 885,-288 927.2127,-274.1553 975.458,-259.5967 1011.0629,-249.0893"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1012.1496,-252.418 1020.7546,-246.2371 1010.1733,-245.7028 1012.1496,-252.418"/>
 </g>
 <!-- 23 -->
 <g id="node24" class="node">
 <title>23</title>
-<path fill="none" stroke="#5673d8" stroke-width="2" d="M227.5,-180C227.5,-180 134.5,-180 134.5,-180 128.5,-180 122.5,-174 122.5,-168 122.5,-168 122.5,-156 122.5,-156 122.5,-150 128.5,-144 134.5,-144 134.5,-144 227.5,-144 227.5,-144 233.5,-144 239.5,-150 239.5,-156 239.5,-156 239.5,-168 239.5,-168 239.5,-174 233.5,-180 227.5,-180"/>
-<text text-anchor="middle" x="181" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">prepare_multiqc_config</text>
+<path fill="none" stroke="#d8a456" stroke-width="2" d="M1642.5,-689C1642.5,-689 1541.5,-689 1541.5,-689 1535.5,-689 1529.5,-683 1529.5,-677 1529.5,-677 1529.5,-660 1529.5,-660 1529.5,-654 1535.5,-648 1541.5,-648 1541.5,-648 1642.5,-648 1642.5,-648 1648.5,-648 1654.5,-654 1654.5,-660 1654.5,-660 1654.5,-677 1654.5,-677 1654.5,-683 1648.5,-689 1642.5,-689"/>
+<text text-anchor="middle" x="1592" y="-677" font-family="sans" font-size="10.00" fill="#000000">create_index_star</text>
+<text text-anchor="middle" x="1592" y="-666" font-family="sans" font-size="10.00" fill="#000000">index_size: 75</text>
+<text text-anchor="middle" x="1592" y="-655" font-family="sans" font-size="10.00" fill="#000000">organism: homo_sapiens</text>
 </g>
-<!-- 23&#45;&gt;1 -->
+<!-- 23&#45;&gt;2 -->
 <g id="edge23" class="edge">
-<title>23&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M239.8233,-146.7826C244.6034,-145.7638 249.3728,-144.8191 254,-144 415.9214,-115.3363 610.5087,-99.4553 699.8193,-93.1863"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="700.1898,-96.6692 709.9241,-92.4867 699.7062,-89.6859 700.1898,-96.6692"/>
+<title>23&#45;&gt;2</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1529.2647,-662.8914C1447.2715,-651.724 1314,-618.6995 1314,-522 1314,-522 1314,-522 1314,-450 1314,-374.7785 1320.7475,-338.5023 1265,-288 1214.1895,-241.9702 1180.8059,-271.2363 1115,-252 1114.8997,-251.9707 1114.7993,-251.9413 1114.6988,-251.9118"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1115.7614,-248.5769 1105.1745,-248.9851 1113.7053,-255.2681 1115.7614,-248.5769"/>
 </g>
-<!-- 24 -->
-<g id="node25" class="node">
-<title>24</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M1292.5,-324C1292.5,-324 1233.5,-324 1233.5,-324 1227.5,-324 1221.5,-318 1221.5,-312 1221.5,-312 1221.5,-300 1221.5,-300 1221.5,-294 1227.5,-288 1233.5,-288 1233.5,-288 1292.5,-288 1292.5,-288 1298.5,-288 1304.5,-294 1304.5,-300 1304.5,-300 1304.5,-312 1304.5,-312 1304.5,-318 1298.5,-324 1292.5,-324"/>
-<text text-anchor="middle" x="1263" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="1263" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
-</g>
-<!-- 24&#45;&gt;2 -->
-<g id="edge24" class="edge">
-<title>24&#45;&gt;2</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1304.8785,-288.5708C1328.8198,-278.6068 1359.0413,-266.0291 1384.4348,-255.4607"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1386.0201,-258.592 1393.9076,-251.5182 1383.3304,-252.1293 1386.0201,-258.592"/>
-</g>
-<!-- 25 -->
-<g id="node26" class="node">
-<title>25</title>
-<path fill="none" stroke="#56d8d0" stroke-width="2" d="M2154.5,-689C2154.5,-689 2053.5,-689 2053.5,-689 2047.5,-689 2041.5,-683 2041.5,-677 2041.5,-677 2041.5,-660 2041.5,-660 2041.5,-654 2047.5,-648 2053.5,-648 2053.5,-648 2154.5,-648 2154.5,-648 2160.5,-648 2166.5,-654 2166.5,-660 2166.5,-660 2166.5,-677 2166.5,-677 2166.5,-683 2160.5,-689 2154.5,-689"/>
-<text text-anchor="middle" x="2104" y="-677" font-family="sans" font-size="10.00" fill="#000000">create_index_star</text>
-<text text-anchor="middle" x="2104" y="-666" font-family="sans" font-size="10.00" fill="#000000">index_size: 75</text>
-<text text-anchor="middle" x="2104" y="-655" font-family="sans" font-size="10.00" fill="#000000">organism: homo_sapiens</text>
-</g>
-<!-- 25&#45;&gt;2 -->
+<!-- 23&#45;&gt;3 -->
 <g id="edge25" class="edge">
-<title>25&#45;&gt;2</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2041.3603,-663.1749C1955.9554,-655.0738 1808.1874,-637.8165 1761,-612 1713.7893,-586.1707 1680,-575.8145 1680,-522 1680,-522 1680,-522 1680,-378 1680,-337.1184 1689.966,-316.8493 1661,-288 1607.232,-234.4487 1566.3755,-270.1408 1487.9182,-251.8789"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1488.7166,-248.4705 1478.1604,-249.3748 1486.9765,-255.2508 1488.7166,-248.4705"/>
+<title>23&#45;&gt;3</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1596.4067,-647.746C1602.0195,-619.4559 1611,-567.1388 1611,-522 1611,-522 1611,-522 1611,-378 1611,-336.6022 1610.281,-322.2312 1587,-288 1579.0101,-276.252 1567.5983,-266.0831 1556.1642,-257.8374"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1558.1141,-254.9307 1547.8831,-252.1781 1554.1645,-260.7101 1558.1141,-254.9307"/>
 </g>
-<!-- 25&#45;&gt;3 -->
+<!-- 23&#45;&gt;4 -->
 <g id="edge27" class="edge">
-<title>25&#45;&gt;3</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2104,-647.6361C2104,-619.2216 2104,-566.7639 2104,-522 2104,-522 2104,-522 2104,-378 2104,-337.1184 2113.4398,-317.3681 2085,-288 2040.309,-241.8502 2005.6944,-268.5447 1938.8459,-251.9029"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1939.7647,-248.5257 1929.195,-249.2549 1937.9125,-255.2762 1939.7647,-248.5257"/>
+<title>23&#45;&gt;4</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1587.5933,-647.746C1581.9805,-619.4559 1573,-567.1388 1573,-522 1573,-522 1573,-522 1573,-378 1573,-337.1184 1580.5776,-319.0635 1554,-288 1550.8089,-284.2703 1503.3012,-266.6145 1464.1029,-252.4922"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1464.9428,-249.075 1454.3483,-248.9885 1462.5765,-255.6629 1464.9428,-249.075"/>
 </g>
-<!-- 25&#45;&gt;4 -->
+<!-- 23&#45;&gt;5 -->
 <g id="edge29" class="edge">
-<title>25&#45;&gt;4</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2041.1233,-658.0445C1931.7457,-638.0605 1718,-590.2734 1718,-522 1718,-522 1718,-522 1718,-378 1718,-336.6022 1722.1904,-318.3163 1694,-288 1694,-288 1635.0939,-267.6094 1589.6766,-251.8881"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1590.8106,-248.5769 1580.2158,-248.6132 1588.5208,-255.1918 1590.8106,-248.5769"/>
+<title>23&#45;&gt;5</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1605.7981,-647.6529C1622.6674,-620.1007 1649,-569.4869 1649,-522 1649,-522 1649,-522 1649,-378 1649,-336.8829 1636.059,-290.7926 1626.3848,-262.082"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1629.5857,-260.6302 1622.9985,-252.3321 1622.9732,-262.9269 1629.5857,-260.6302"/>
 </g>
-<!-- 25&#45;&gt;5 -->
+<!-- 23&#45;&gt;6 -->
 <g id="edge31" class="edge">
-<title>25&#45;&gt;5</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2144.8701,-647.9116C2186.1931,-623.8599 2244,-579.8715 2244,-522 2244,-522 2244,-522 2244,-378 2244,-337.1184 2254.1361,-316.6775 2225,-288 2167.517,-231.4217 2124.1462,-270.8194 2040.9493,-251.8734"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2041.7008,-248.4536 2031.1496,-249.4141 2039.9969,-255.243 2041.7008,-248.4536"/>
+<title>23&#45;&gt;6</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1654.7827,-658.8174C1767.1466,-639.7043 1991,-592.7486 1991,-522 1991,-522 1991,-522 1991,-378 1991,-337.1184 2001.3742,-316.4335 1972,-288 1908.4126,-226.4488 1860.9503,-271.9703 1769.961,-251.8591"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1770.6786,-248.4317 1760.1347,-249.4697 1769.0246,-255.2335 1770.6786,-248.4317"/>
 </g>
-<!-- 25&#45;&gt;6 -->
+<!-- 23&#45;&gt;7 -->
 <g id="edge33" class="edge">
-<title>25&#45;&gt;6</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2166.8375,-663.0924C2249.3908,-652.1517 2384,-619.3815 2384,-522 2384,-522 2384,-522 2384,-378 2384,-337.1184 2394.5931,-316.2056 2365,-288 2294.5983,-220.8992 2242.6159,-273.301 2142.9204,-251.8357"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2143.6581,-248.4137 2133.1213,-249.5214 2142.049,-255.2263 2143.6581,-248.4137"/>
+<title>23&#45;&gt;7</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1654.8549,-666.0497C1772.5288,-660.7215 2021.2964,-645.744 2100,-612 2157.1131,-587.5128 2207,-584.1412 2207,-522 2207,-522 2207,-522 2207,-378 2207,-335.2408 2198.9045,-322.0192 2173,-288 2164.1613,-276.3925 2152.1551,-266.17 2140.3863,-257.8302"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2142.1521,-254.7992 2131.9075,-252.0974 2138.2313,-260.5981 2142.1521,-254.7992"/>
 </g>
-<!-- 25&#45;&gt;7 -->
+<!-- 23&#45;&gt;8 -->
 <g id="edge35" class="edge">
-<title>25&#45;&gt;7</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2166.8146,-662.0602C2252.1164,-652.6611 2399.6214,-633.9005 2449,-612 2507.6913,-585.9692 2562,-586.2049 2562,-522 2562,-522 2562,-522 2562,-378 2562,-335.3959 2560.6703,-316.4974 2529,-288 2516.8301,-277.0493 2425.8533,-256.7992 2366.2078,-244.4497"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2366.6922,-240.9762 2356.192,-242.3891 2365.2815,-247.8326 2366.6922,-240.9762"/>
+<title>23&#45;&gt;8</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1654.5722,-665.8262C1803.9452,-657.7433 2169,-627.2253 2169,-522 2169,-522 2169,-522 2169,-378 2169,-337.1184 2178.5514,-317.2596 2150,-288 2137.6796,-275.3739 2037.3669,-255.0643 1973.969,-243.2815"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1974.5992,-239.8388 1964.1301,-241.4662 1973.329,-246.7226 1974.5992,-239.8388"/>
 </g>
-<!-- 25&#45;&gt;8 -->
+<!-- 23&#45;&gt;9 -->
 <g id="edge37" class="edge">
-<title>25&#45;&gt;8</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2166.8782,-659.9276C2284.0442,-642.181 2524,-596.7154 2524,-522 2524,-522 2524,-522 2524,-378 2524,-337.1184 2534.7671,-316.0219 2505,-288 2465.412,-250.7329 2316.2892,-262.7847 2263,-252 2257.1696,-250.82 2251.0981,-249.4598 2245.0748,-248.0266"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2245.5803,-244.5469 2235.0345,-245.5646 2243.9132,-251.3455 2245.5803,-244.5469"/>
+<title>23&#45;&gt;9</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1654.5465,-661.2631C1734.9056,-651.3308 1869.4672,-632.3736 1915,-612 1973.9236,-585.6348 2029,-586.5532 2029,-522 2029,-522 2029,-522 2029,-378 2029,-335.2408 2026.4006,-317.0232 1995,-288 1955.0799,-251.1023 1928.5477,-267.5591 1871.9735,-252.0222"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1872.8216,-248.6228 1862.2382,-249.1152 1870.8187,-255.3302 1872.8216,-248.6228"/>
 </g>
-<!-- 25&#45;&gt;9 -->
-<g id="edge39" class="edge">
-<title>25&#45;&gt;9</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2166.6966,-664.3304C2264.0804,-657.0782 2446.5765,-640.1625 2505,-612 2557.3918,-586.745 2600,-580.1611 2600,-522 2600,-522 2600,-522 2600,-378 2600,-333.4756 2586.9729,-319.986 2556,-288 2541.8754,-273.4134 2522.9504,-261.9134 2505.2388,-253.3421"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2506.6648,-250.1455 2496.1191,-249.1259 2503.7273,-256.4993 2506.6648,-250.1455"/>
+<!-- 46 -->
+<g id="node47" class="node">
+<title>46</title>
+<path fill="none" stroke="#d8ac56" stroke-width="2" d="M851.5,-252C851.5,-252 766.5,-252 766.5,-252 760.5,-252 754.5,-246 754.5,-240 754.5,-240 754.5,-228 754.5,-228 754.5,-222 760.5,-216 766.5,-216 766.5,-216 851.5,-216 851.5,-216 857.5,-216 863.5,-222 863.5,-228 863.5,-228 863.5,-240 863.5,-240 863.5,-246 857.5,-252 851.5,-252"/>
+<text text-anchor="middle" x="809" y="-237" font-family="sans" font-size="10.00" fill="#000000">create_index_salmon</text>
+<text text-anchor="middle" x="809" y="-226" font-family="sans" font-size="10.00" fill="#000000">kmer: 31</text>
 </g>
-<!-- 42 -->
-<g id="node43" class="node">
-<title>42</title>
-<path fill="none" stroke="#97d856" stroke-width="2" d="M923.5,-612C923.5,-612 834.5,-612 834.5,-612 828.5,-612 822.5,-606 822.5,-600 822.5,-600 822.5,-588 822.5,-588 822.5,-582 828.5,-576 834.5,-576 834.5,-576 923.5,-576 923.5,-576 929.5,-576 935.5,-582 935.5,-588 935.5,-588 935.5,-600 935.5,-600 935.5,-606 929.5,-612 923.5,-612"/>
-<text text-anchor="middle" x="879" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">pe_map_genome_star</text>
+<!-- 23&#45;&gt;46 -->
+<g id="edge82" class="edge">
+<title>23&#45;&gt;46</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1529.2969,-660.9124C1461.99,-651.7567 1360.4798,-634.717 1329,-612 1291.3574,-584.8357 1276,-568.4205 1276,-522 1276,-522 1276,-522 1276,-450 1276,-375.3916 1289.9296,-335.0168 1232,-288 1218.2595,-276.8479 989.0177,-252.2254 873.8948,-240.4796"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="874.0949,-236.982 863.7921,-239.452 873.3865,-243.946 874.0949,-236.982"/>
 </g>
-<!-- 25&#45;&gt;42 -->
-<g id="edge79" class="edge">
-<title>25&#45;&gt;42</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2041.1437,-664.6773C1831.9638,-651.9558 1160.438,-611.116 945.7009,-598.0565"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="945.7162,-594.5511 935.5222,-597.4375 945.2912,-601.5381 945.7162,-594.5511"/>
+<!-- 59 -->
+<g id="node60" class="node">
+<title>59</title>
+<path fill="none" stroke="#d87556" stroke-width="2" d="M692.5,-612C692.5,-612 603.5,-612 603.5,-612 597.5,-612 591.5,-606 591.5,-600 591.5,-600 591.5,-588 591.5,-588 591.5,-582 597.5,-576 603.5,-576 603.5,-576 692.5,-576 692.5,-576 698.5,-576 704.5,-582 704.5,-588 704.5,-588 704.5,-600 704.5,-600 704.5,-606 698.5,-612 692.5,-612"/>
+<text text-anchor="middle" x="648" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">pe_map_genome_star</text>
 </g>
-<!-- 44 -->
-<g id="node45" class="node">
-<title>44</title>
-<path fill="none" stroke="#56d873" stroke-width="2" d="M1385.5,-612C1385.5,-612 1312.5,-612 1312.5,-612 1306.5,-612 1300.5,-606 1300.5,-600 1300.5,-600 1300.5,-588 1300.5,-588 1300.5,-582 1306.5,-576 1312.5,-576 1312.5,-576 1385.5,-576 1385.5,-576 1391.5,-576 1397.5,-582 1397.5,-588 1397.5,-588 1397.5,-600 1397.5,-600 1397.5,-606 1391.5,-612 1385.5,-612"/>
-<text text-anchor="middle" x="1349" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">map_genome_star</text>
+<!-- 23&#45;&gt;59 -->
+<g id="edge105" class="edge">
+<title>23&#45;&gt;59</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1529.3305,-663.5542C1359.1495,-650.1236 889.4984,-613.0589 714.6947,-599.2635"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="714.8484,-595.7648 704.604,-598.4672 714.2976,-602.7431 714.8484,-595.7648"/>
 </g>
-<!-- 25&#45;&gt;44 -->
-<g id="edge82" class="edge">
-<title>25&#45;&gt;44</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2041.2506,-662.3082C1897.814,-648.1545 1547.5911,-613.5961 1407.9188,-599.8138"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1408.1304,-596.3178 1397.835,-598.8188 1407.443,-603.284 1408.1304,-596.3178"/>
+<!-- 62 -->
+<g id="node63" class="node">
+<title>62</title>
+<path fill="none" stroke="#5673d8" stroke-width="2" d="M1155.5,-612C1155.5,-612 1082.5,-612 1082.5,-612 1076.5,-612 1070.5,-606 1070.5,-600 1070.5,-600 1070.5,-588 1070.5,-588 1070.5,-582 1076.5,-576 1082.5,-576 1082.5,-576 1155.5,-576 1155.5,-576 1161.5,-576 1167.5,-582 1167.5,-588 1167.5,-588 1167.5,-600 1167.5,-600 1167.5,-606 1161.5,-612 1155.5,-612"/>
+<text text-anchor="middle" x="1119" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">map_genome_star</text>
 </g>
-<!-- 63 -->
-<g id="node64" class="node">
-<title>63</title>
-<path fill="none" stroke="#d8d356" stroke-width="2" d="M1640,-396C1640,-396 1560,-396 1560,-396 1554,-396 1548,-390 1548,-384 1548,-384 1548,-372 1548,-372 1548,-366 1554,-360 1560,-360 1560,-360 1640,-360 1640,-360 1646,-360 1652,-366 1652,-372 1652,-372 1652,-384 1652,-384 1652,-390 1646,-396 1640,-396"/>
-<text text-anchor="middle" x="1600" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">generate_alfa_index</text>
+<!-- 23&#45;&gt;62 -->
+<g id="edge108" class="edge">
+<title>23&#45;&gt;62</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1529.2628,-659.2735C1455.7936,-648.3807 1330.4597,-629.5246 1223,-612 1208.3059,-609.6037 1192.463,-606.9153 1177.6806,-604.3616"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1178.0944,-600.8812 1167.6433,-602.6204 1176.8979,-607.7782 1178.0944,-600.8812"/>
+</g>
+<!-- 64 -->
+<g id="node65" class="node">
+<title>64</title>
+<path fill="none" stroke="#70d856" stroke-width="2" d="M1236,-396C1236,-396 1156,-396 1156,-396 1150,-396 1144,-390 1144,-384 1144,-384 1144,-372 1144,-372 1144,-366 1150,-360 1156,-360 1156,-360 1236,-360 1236,-360 1242,-360 1248,-366 1248,-372 1248,-372 1248,-384 1248,-384 1248,-390 1242,-396 1236,-396"/>
+<text text-anchor="middle" x="1196" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">generate_alfa_index</text>
 </g>
-<!-- 25&#45;&gt;63 -->
+<!-- 23&#45;&gt;64 -->
 <g id="edge111" class="edge">
-<title>25&#45;&gt;63</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2041.2327,-664.2134C1926.9104,-655.8563 1693.8957,-636.0786 1666,-612 1605.2719,-559.5817 1598.3365,-456.0229 1598.7931,-406.148"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1602.2938,-406.1458 1598.9947,-396.0777 1595.2952,-406.0056 1602.2938,-406.1458"/>
+<title>23&#45;&gt;64</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1529.4721,-665.5979C1444.975,-660.4018 1300.4548,-646.6032 1262,-612 1231.2701,-584.3479 1208.9265,-462.0183 1200.1264,-406.0831"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1203.5763,-405.4894 1198.595,-396.1386 1196.6578,-406.5548 1203.5763,-405.4894"/>
+</g>
+<!-- 24 -->
+<g id="node25" class="node">
+<title>24</title>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M1138.5,-324C1138.5,-324 1079.5,-324 1079.5,-324 1073.5,-324 1067.5,-318 1067.5,-312 1067.5,-312 1067.5,-300 1067.5,-300 1067.5,-294 1073.5,-288 1079.5,-288 1079.5,-288 1138.5,-288 1138.5,-288 1144.5,-288 1150.5,-294 1150.5,-300 1150.5,-300 1150.5,-312 1150.5,-312 1150.5,-318 1144.5,-324 1138.5,-324"/>
+<text text-anchor="middle" x="1109" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="1109" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
+</g>
+<!-- 24&#45;&gt;3 -->
+<g id="edge24" class="edge">
+<title>24&#45;&gt;3</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1150.5256,-290.5015C1153.7078,-289.5732 1156.8908,-288.724 1160,-288 1288.8558,-257.9957 1328.9676,-281.5431 1461.766,-251.9822"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1462.9449,-255.303 1471.9128,-249.6615 1461.3842,-248.4792 1462.9449,-255.303"/>
+</g>
+<!-- 25 -->
+<g id="node26" class="node">
+<title>25</title>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M1037.5,-324C1037.5,-324 978.5,-324 978.5,-324 972.5,-324 966.5,-318 966.5,-312 966.5,-312 966.5,-300 966.5,-300 966.5,-294 972.5,-288 978.5,-288 978.5,-288 1037.5,-288 1037.5,-288 1043.5,-288 1049.5,-294 1049.5,-300 1049.5,-300 1049.5,-312 1049.5,-312 1049.5,-318 1043.5,-324 1037.5,-324"/>
+<text text-anchor="middle" x="1008" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="1008" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
+</g>
+<!-- 25&#45;&gt;4 -->
+<g id="edge26" class="edge">
+<title>25&#45;&gt;4</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1049.5259,-290.5029C1052.7081,-289.5742 1055.8909,-288.7246 1059,-288 1187.4306,-258.0685 1227.4098,-281.4757 1359.7971,-251.9759"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1360.9458,-255.3036 1369.9125,-249.6602 1359.3836,-248.4801 1360.9458,-255.3036"/>
 </g>
 <!-- 26 -->
 <g id="node27" class="node">
 <title>26</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M1567.5,-324C1567.5,-324 1508.5,-324 1508.5,-324 1502.5,-324 1496.5,-318 1496.5,-312 1496.5,-312 1496.5,-300 1496.5,-300 1496.5,-294 1502.5,-288 1508.5,-288 1508.5,-288 1567.5,-288 1567.5,-288 1573.5,-288 1579.5,-294 1579.5,-300 1579.5,-300 1579.5,-312 1579.5,-312 1579.5,-318 1573.5,-324 1567.5,-324"/>
-<text text-anchor="middle" x="1538" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="1538" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M1388.5,-324C1388.5,-324 1329.5,-324 1329.5,-324 1323.5,-324 1317.5,-318 1317.5,-312 1317.5,-312 1317.5,-300 1317.5,-300 1317.5,-294 1323.5,-288 1329.5,-288 1329.5,-288 1388.5,-288 1388.5,-288 1394.5,-288 1400.5,-294 1400.5,-300 1400.5,-300 1400.5,-312 1400.5,-312 1400.5,-318 1394.5,-324 1388.5,-324"/>
+<text text-anchor="middle" x="1359" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="1359" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
 </g>
-<!-- 26&#45;&gt;3 -->
-<g id="edge26" class="edge">
-<title>26&#45;&gt;3</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1579.5478,-290.5942C1582.7249,-289.6444 1585.9006,-288.7651 1589,-288 1693.5493,-262.1921 1726.379,-277.6181 1834.8587,-252.006"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1835.9983,-255.3312 1844.8915,-249.5726 1834.3483,-248.5284 1835.9983,-255.3312"/>
+<!-- 26&#45;&gt;5 -->
+<g id="edge28" class="edge">
+<title>26&#45;&gt;5</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1400.6259,-290.8845C1403.785,-289.8676 1406.9352,-288.8937 1410,-288 1474.8445,-269.09 1495.2813,-271.5233 1563.8171,-252.1738"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1565.1756,-255.425 1573.8167,-249.2945 1563.2386,-248.6983 1565.1756,-255.425"/>
 </g>
 <!-- 27 -->
 <g id="node28" class="node">
 <title>27</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M1393.5,-324C1393.5,-324 1334.5,-324 1334.5,-324 1328.5,-324 1322.5,-318 1322.5,-312 1322.5,-312 1322.5,-300 1322.5,-300 1322.5,-294 1328.5,-288 1334.5,-288 1334.5,-288 1393.5,-288 1393.5,-288 1399.5,-288 1405.5,-294 1405.5,-300 1405.5,-300 1405.5,-312 1405.5,-312 1405.5,-318 1399.5,-324 1393.5,-324"/>
-<text text-anchor="middle" x="1364" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="1364" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M1748.5,-324C1748.5,-324 1689.5,-324 1689.5,-324 1683.5,-324 1677.5,-318 1677.5,-312 1677.5,-312 1677.5,-300 1677.5,-300 1677.5,-294 1683.5,-288 1689.5,-288 1689.5,-288 1748.5,-288 1748.5,-288 1754.5,-288 1760.5,-294 1760.5,-300 1760.5,-300 1760.5,-312 1760.5,-312 1760.5,-318 1754.5,-324 1748.5,-324"/>
+<text text-anchor="middle" x="1719" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="1719" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
 </g>
-<!-- 27&#45;&gt;4 -->
-<g id="edge28" class="edge">
-<title>27&#45;&gt;4</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1405.6773,-288.7542C1429.9435,-278.713 1460.7364,-265.9711 1486.5101,-255.3062"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1487.8552,-258.5374 1495.7571,-251.4798 1485.1787,-252.0693 1487.8552,-258.5374"/>
+<!-- 27&#45;&gt;6 -->
+<g id="edge30" class="edge">
+<title>27&#45;&gt;6</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1718.7477,-287.8314C1718.6407,-280.131 1718.5135,-270.9743 1718.3947,-262.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1721.8944,-262.3637 1718.2557,-252.4133 1714.8951,-262.4609 1721.8944,-262.3637"/>
 </g>
 <!-- 28 -->
 <g id="node29" class="node">
 <title>28</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M1817.5,-324C1817.5,-324 1758.5,-324 1758.5,-324 1752.5,-324 1746.5,-318 1746.5,-312 1746.5,-312 1746.5,-300 1746.5,-300 1746.5,-294 1752.5,-288 1758.5,-288 1758.5,-288 1817.5,-288 1817.5,-288 1823.5,-288 1829.5,-294 1829.5,-300 1829.5,-300 1829.5,-312 1829.5,-312 1829.5,-318 1823.5,-324 1817.5,-324"/>
-<text text-anchor="middle" x="1788" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="1788" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M2128.5,-324C2128.5,-324 2069.5,-324 2069.5,-324 2063.5,-324 2057.5,-318 2057.5,-312 2057.5,-312 2057.5,-300 2057.5,-300 2057.5,-294 2063.5,-288 2069.5,-288 2069.5,-288 2128.5,-288 2128.5,-288 2134.5,-288 2140.5,-294 2140.5,-300 2140.5,-300 2140.5,-312 2140.5,-312 2140.5,-318 2134.5,-324 2128.5,-324"/>
+<text text-anchor="middle" x="2099" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="2099" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
 </g>
-<!-- 28&#45;&gt;5 -->
-<g id="edge30" class="edge">
-<title>28&#45;&gt;5</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1829.6473,-291.0816C1860.8353,-279.9098 1903.6984,-264.5558 1937.115,-252.5857"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1938.4806,-255.8144 1946.7145,-249.147 1936.1199,-249.2244 1938.4806,-255.8144"/>
+<!-- 28&#45;&gt;7 -->
+<g id="edge32" class="edge">
+<title>28&#45;&gt;7</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2099,-287.8314C2099,-280.131 2099,-270.9743 2099,-262.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2102.5001,-262.4132 2099,-252.4133 2095.5001,-262.4133 2102.5001,-262.4132"/>
 </g>
 <!-- 29 -->
 <g id="node30" class="node">
 <title>29</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M2063.5,-324C2063.5,-324 2004.5,-324 2004.5,-324 1998.5,-324 1992.5,-318 1992.5,-312 1992.5,-312 1992.5,-300 1992.5,-300 1992.5,-294 1998.5,-288 2004.5,-288 2004.5,-288 2063.5,-288 2063.5,-288 2069.5,-288 2075.5,-294 2075.5,-300 2075.5,-300 2075.5,-312 2075.5,-312 2075.5,-318 2069.5,-324 2063.5,-324"/>
-<text text-anchor="middle" x="2034" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="2034" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M1950.5,-324C1950.5,-324 1891.5,-324 1891.5,-324 1885.5,-324 1879.5,-318 1879.5,-312 1879.5,-312 1879.5,-300 1879.5,-300 1879.5,-294 1885.5,-288 1891.5,-288 1891.5,-288 1950.5,-288 1950.5,-288 1956.5,-288 1962.5,-294 1962.5,-300 1962.5,-300 1962.5,-312 1962.5,-312 1962.5,-318 1956.5,-324 1950.5,-324"/>
+<text text-anchor="middle" x="1921" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="1921" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
 </g>
-<!-- 29&#45;&gt;6 -->
-<g id="edge32" class="edge">
-<title>29&#45;&gt;6</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2048.3835,-287.8314C2054.9486,-279.5386 2062.8507,-269.557 2070.0578,-260.4533"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2072.9599,-262.4262 2076.4228,-252.4133 2067.4716,-258.0813 2072.9599,-262.4262"/>
+<!-- 29&#45;&gt;8 -->
+<g id="edge34" class="edge">
+<title>29&#45;&gt;8</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1921.2523,-287.8314C1921.3593,-280.131 1921.4865,-270.9743 1921.6053,-262.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1925.1049,-262.4609 1921.7443,-252.4133 1918.1056,-262.3637 1925.1049,-262.4609"/>
 </g>
 <!-- 30 -->
 <g id="node31" class="node">
 <title>30</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M2343.5,-324C2343.5,-324 2284.5,-324 2284.5,-324 2278.5,-324 2272.5,-318 2272.5,-312 2272.5,-312 2272.5,-300 2272.5,-300 2272.5,-294 2278.5,-288 2284.5,-288 2284.5,-288 2343.5,-288 2343.5,-288 2349.5,-288 2355.5,-294 2355.5,-300 2355.5,-300 2355.5,-312 2355.5,-312 2355.5,-318 2349.5,-324 2343.5,-324"/>
-<text text-anchor="middle" x="2314" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="2314" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: plus</text>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M1849.5,-324C1849.5,-324 1790.5,-324 1790.5,-324 1784.5,-324 1778.5,-318 1778.5,-312 1778.5,-312 1778.5,-300 1778.5,-300 1778.5,-294 1784.5,-288 1790.5,-288 1790.5,-288 1849.5,-288 1849.5,-288 1855.5,-288 1861.5,-294 1861.5,-300 1861.5,-300 1861.5,-312 1861.5,-312 1861.5,-318 1855.5,-324 1849.5,-324"/>
+<text text-anchor="middle" x="1820" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<text text-anchor="middle" x="1820" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
 </g>
-<!-- 30&#45;&gt;7 -->
-<g id="edge34" class="edge">
-<title>30&#45;&gt;7</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2314,-287.8314C2314,-280.131 2314,-270.9743 2314,-262.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2317.5001,-262.4132 2314,-252.4133 2310.5001,-262.4133 2317.5001,-262.4132"/>
+<!-- 30&#45;&gt;9 -->
+<g id="edge36" class="edge">
+<title>30&#45;&gt;9</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1820,-287.8314C1820,-280.131 1820,-270.9743 1820,-262.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1823.5001,-262.4132 1820,-252.4133 1816.5001,-262.4133 1823.5001,-262.4132"/>
 </g>
 <!-- 31 -->
 <g id="node32" class="node">
 <title>31</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M2203.5,-324C2203.5,-324 2144.5,-324 2144.5,-324 2138.5,-324 2132.5,-318 2132.5,-312 2132.5,-312 2132.5,-300 2132.5,-300 2132.5,-294 2138.5,-288 2144.5,-288 2144.5,-288 2203.5,-288 2203.5,-288 2209.5,-288 2215.5,-294 2215.5,-300 2215.5,-300 2215.5,-312 2215.5,-312 2215.5,-318 2209.5,-324 2203.5,-324"/>
-<text text-anchor="middle" x="2174" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="2174" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
+<path fill="none" stroke="#56d88a" stroke-width="2" d="M865.5,-180C865.5,-180 762.5,-180 762.5,-180 756.5,-180 750.5,-174 750.5,-168 750.5,-168 750.5,-156 750.5,-156 750.5,-150 756.5,-144 762.5,-144 762.5,-144 865.5,-144 865.5,-144 871.5,-144 877.5,-150 877.5,-156 877.5,-156 877.5,-168 877.5,-168 877.5,-174 871.5,-180 865.5,-180"/>
+<text text-anchor="middle" x="814" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">pe_quantification_salmon</text>
 </g>
-<!-- 31&#45;&gt;8 -->
-<g id="edge36" class="edge">
-<title>31&#45;&gt;8</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2178.7945,-287.8314C2180.8489,-280.0463 2183.296,-270.7729 2185.5756,-262.1347"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2188.9735,-262.9753 2188.1409,-252.4133 2182.2052,-261.1892 2188.9735,-262.9753"/>
+<!-- 31&#45;&gt;10 -->
+<g id="edge38" class="edge">
+<title>31&#45;&gt;10</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M773.8776,-143.8314C752.7068,-134.2446 726.5517,-122.4008 704.1697,-112.2655"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="705.3872,-108.9748 694.8339,-108.038 702.4997,-115.3515 705.3872,-108.9748"/>
+</g>
+<!-- 31&#45;&gt;11 -->
+<g id="edge40" class="edge">
+<title>31&#45;&gt;11</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M814,-143.8314C814,-136.131 814,-126.9743 814,-118.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="817.5001,-118.4132 814,-108.4133 810.5001,-118.4133 817.5001,-118.4132"/>
+</g>
+<!-- 31&#45;&gt;12 -->
+<g id="edge42" class="edge">
+<title>31&#45;&gt;12</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M856.3935,-143.8314C878.9624,-134.159 906.8921,-122.1891 930.6796,-111.9944"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="932.0986,-115.1943 939.9114,-108.038 929.3412,-108.7602 932.0986,-115.1943"/>
+</g>
+<!-- 31&#45;&gt;13 -->
+<g id="edge44" class="edge">
+<title>31&#45;&gt;13</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M877.6603,-146.1182C880.8153,-145.3891 883.9417,-144.6791 887,-144 964.351,-126.8232 986.4918,-124.6022 1067.0685,-108.3757"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1068.0859,-111.7408 1077.1922,-106.3255 1066.6965,-104.8801 1068.0859,-111.7408"/>
 </g>
 <!-- 32 -->
 <g id="node33" class="node">
 <title>32</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M2483.5,-324C2483.5,-324 2424.5,-324 2424.5,-324 2418.5,-324 2412.5,-318 2412.5,-312 2412.5,-312 2412.5,-300 2412.5,-300 2412.5,-294 2418.5,-288 2424.5,-288 2424.5,-288 2483.5,-288 2483.5,-288 2489.5,-288 2495.5,-294 2495.5,-300 2495.5,-300 2495.5,-312 2495.5,-312 2495.5,-318 2489.5,-324 2483.5,-324"/>
-<text text-anchor="middle" x="2454" y="-309" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
-<text text-anchor="middle" x="2454" y="-298" font-family="sans" font-size="10.00" fill="#000000">strand: minus</text>
+<path fill="none" stroke="#56d89a" stroke-width="2" d="M994.5,-180C994.5,-180 907.5,-180 907.5,-180 901.5,-180 895.5,-174 895.5,-168 895.5,-168 895.5,-156 895.5,-156 895.5,-150 901.5,-144 907.5,-144 907.5,-144 994.5,-144 994.5,-144 1000.5,-144 1006.5,-150 1006.5,-156 1006.5,-156 1006.5,-168 1006.5,-168 1006.5,-174 1000.5,-180 994.5,-180"/>
+<text text-anchor="middle" x="951" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">quantification_salmon</text>
 </g>
-<!-- 32&#45;&gt;9 -->
-<g id="edge38" class="edge">
-<title>32&#45;&gt;9</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2454,-287.8314C2454,-280.131 2454,-270.9743 2454,-262.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2457.5001,-262.4132 2454,-252.4133 2450.5001,-262.4133 2457.5001,-262.4132"/>
+<!-- 32&#45;&gt;10 -->
+<g id="edge39" class="edge">
+<title>32&#45;&gt;10</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M895.1927,-146.143C892.4255,-145.4073 889.683,-144.6892 887,-144 879.3089,-142.0244 797.3125,-122.9762 732.9547,-108.0557"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="733.7273,-104.642 723.1952,-105.7933 732.1465,-111.4612 733.7273,-104.642"/>
+</g>
+<!-- 32&#45;&gt;11 -->
+<g id="edge41" class="edge">
+<title>32&#45;&gt;11</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M916.4291,-143.8314C898.5815,-134.4516 876.6226,-122.9112 857.62,-112.9244"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="859.0401,-109.7168 848.5598,-108.1628 855.7836,-115.9132 859.0401,-109.7168"/>
+</g>
+<!-- 32&#45;&gt;12 -->
+<g id="edge43" class="edge">
+<title>32&#45;&gt;12</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M958.8226,-143.8314C962.2109,-135.9617 966.2541,-126.5712 970.0076,-117.8533"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="973.3321,-118.9822 974.0721,-108.4133 966.9027,-116.214 973.3321,-118.9822"/>
+</g>
+<!-- 32&#45;&gt;13 -->
+<g id="edge45" class="edge">
+<title>32&#45;&gt;13</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1002.2145,-143.9243C1030.1025,-134.0815 1064.7906,-121.8386 1094.0627,-111.5073"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1095.4994,-114.7119 1103.7644,-108.0831 1093.1696,-108.1109 1095.4994,-114.7119"/>
 </g>
 <!-- 33 -->
 <g id="node34" class="node">
 <title>33</title>
-<path fill="none" stroke="#56a2d8" stroke-width="2" d="M280,-838C280,-838 12,-838 12,-838 6,-838 0,-832 0,-826 0,-826 0,-809 0,-809 0,-803 6,-797 12,-797 12,-797 280,-797 280,-797 286,-797 292,-803 292,-809 292,-809 292,-826 292,-826 292,-832 286,-838 280,-838"/>
+<path fill="none" stroke="#56d87b" stroke-width="2" d="M280,-838C280,-838 12,-838 12,-838 6,-838 0,-832 0,-826 0,-826 0,-809 0,-809 0,-803 6,-797 12,-797 12,-797 280,-797 280,-797 286,-797 292,-803 292,-809 292,-809 292,-826 292,-826 292,-832 286,-838 280,-838"/>
 <text text-anchor="middle" x="146" y="-826" font-family="sans" font-size="10.00" fill="#000000">start</text>
 <text text-anchor="middle" x="146" y="-815" font-family="sans" font-size="10.00" fill="#000000">mate: fq1</text>
 <text text-anchor="middle" x="146" y="-804" font-family="sans" font-size="10.00" fill="#000000">sample: synthetic_10_reads_paired_synthetic_10_reads_paired</text>
 </g>
-<!-- 33&#45;&gt;10 -->
-<g id="edge40" class="edge">
-<title>33&#45;&gt;10</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M136.1255,-796.8743C116.7494,-756.4018 73.7511,-666.5877 52.0567,-621.2726"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="55.1181,-619.5617 47.643,-612.0534 48.8043,-622.5844 55.1181,-619.5617"/>
+<!-- 33&#45;&gt;14 -->
+<g id="edge46" class="edge">
+<title>33&#45;&gt;14</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M145.7231,-796.8743C145.1833,-756.6563 143.9895,-667.7154 143.3776,-622.1329"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="146.8763,-622.0055 143.2423,-612.0534 139.877,-622.0995 146.8763,-622.0055"/>
 </g>
-<!-- 52 -->
-<g id="node53" class="node">
-<title>52</title>
-<path fill="none" stroke="#d8b456" stroke-width="2" d="M569,-761C569,-761 443,-761 443,-761 437,-761 431,-755 431,-749 431,-749 431,-737 431,-737 431,-731 437,-725 443,-725 443,-725 569,-725 569,-725 575,-725 581,-731 581,-737 581,-737 581,-749 581,-749 581,-755 575,-761 569,-761"/>
-<text text-anchor="middle" x="506" y="-740.5" font-family="sans" font-size="10.00" fill="#000000">pe_remove_adapters_cutadapt</text>
+<!-- 47 -->
+<g id="node48" class="node">
+<title>47</title>
+<path fill="none" stroke="#88d856" stroke-width="2" d="M374,-761C374,-761 248,-761 248,-761 242,-761 236,-755 236,-749 236,-749 236,-737 236,-737 236,-731 242,-725 248,-725 248,-725 374,-725 374,-725 380,-725 386,-731 386,-737 386,-737 386,-749 386,-749 386,-755 380,-761 374,-761"/>
+<text text-anchor="middle" x="311" y="-740.5" font-family="sans" font-size="10.00" fill="#000000">pe_remove_adapters_cutadapt</text>
 </g>
-<!-- 33&#45;&gt;52 -->
-<g id="edge93" class="edge">
-<title>33&#45;&gt;52</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M245.3246,-796.9453C300.4611,-785.5351 368.3312,-771.4898 420.9952,-760.5913"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="421.8975,-763.9788 430.9807,-758.5248 420.4789,-757.124 421.8975,-763.9788"/>
+<!-- 33&#45;&gt;47 -->
+<g id="edge83" class="edge">
+<title>33&#45;&gt;47</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M191.5238,-796.9453C213.3082,-787.1094 239.4294,-775.3152 261.6846,-765.2667"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="263.2881,-768.3829 270.9619,-761.0778 260.4075,-762.0031 263.2881,-768.3829"/>
 </g>
 <!-- 34 -->
 <g id="node35" class="node">
 <title>34</title>
-<path fill="none" stroke="#56a2d8" stroke-width="2" d="M605,-838C605,-838 325,-838 325,-838 319,-838 313,-832 313,-826 313,-826 313,-809 313,-809 313,-803 319,-797 325,-797 325,-797 605,-797 605,-797 611,-797 617,-803 617,-809 617,-809 617,-826 617,-826 617,-832 611,-838 605,-838"/>
-<text text-anchor="middle" x="465" y="-826" font-family="sans" font-size="10.00" fill="#000000">start</text>
-<text text-anchor="middle" x="465" y="-815" font-family="sans" font-size="10.00" fill="#000000">mate: fq1</text>
-<text text-anchor="middle" x="465" y="-804" font-family="sans" font-size="10.00" fill="#000000">sample: synthetic_10_reads_mate_1_synthetic_10_reads_mate_1</text>
+<path fill="none" stroke="#56d87b" stroke-width="2" d="M613,-838C613,-838 333,-838 333,-838 327,-838 321,-832 321,-826 321,-826 321,-809 321,-809 321,-803 327,-797 333,-797 333,-797 613,-797 613,-797 619,-797 625,-803 625,-809 625,-809 625,-826 625,-826 625,-832 619,-838 613,-838"/>
+<text text-anchor="middle" x="473" y="-826" font-family="sans" font-size="10.00" fill="#000000">start</text>
+<text text-anchor="middle" x="473" y="-815" font-family="sans" font-size="10.00" fill="#000000">mate: fq1</text>
+<text text-anchor="middle" x="473" y="-804" font-family="sans" font-size="10.00" fill="#000000">sample: synthetic_10_reads_mate_1_synthetic_10_reads_mate_1</text>
 </g>
-<!-- 34&#45;&gt;11 -->
-<g id="edge41" class="edge">
-<title>34&#45;&gt;11</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M445.8117,-796.7822C421.0352,-770.0308 377.9109,-723.469 350.9944,-694.407"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="353.224,-691.6635 343.8611,-686.7051 348.0883,-696.4201 353.224,-691.6635"/>
+<!-- 34&#45;&gt;15 -->
+<g id="edge47" class="edge">
+<title>34&#45;&gt;15</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M329.5266,-796.9686C284.9644,-787.9893 243.2463,-776.0253 227,-761 209.2185,-744.5548 202.2644,-717.3668 199.5836,-696.7115"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="203.0478,-696.1835 198.5366,-686.5971 196.085,-696.9044 203.0478,-696.1835"/>
 </g>
-<!-- 54 -->
-<g id="node55" class="node">
-<title>54</title>
-<path fill="none" stroke="#56d8c1" stroke-width="2" d="M751,-761C751,-761 641,-761 641,-761 635,-761 629,-755 629,-749 629,-749 629,-737 629,-737 629,-731 635,-725 641,-725 641,-725 751,-725 751,-725 757,-725 763,-731 763,-737 763,-737 763,-749 763,-749 763,-755 757,-761 751,-761"/>
-<text text-anchor="middle" x="696" y="-740.5" font-family="sans" font-size="10.00" fill="#000000">remove_adapters_cutadapt</text>
+<!-- 49 -->
+<g id="node50" class="node">
+<title>49</title>
+<path fill="none" stroke="#78d856" stroke-width="2" d="M531,-761C531,-761 421,-761 421,-761 415,-761 409,-755 409,-749 409,-749 409,-737 409,-737 409,-731 415,-725 421,-725 421,-725 531,-725 531,-725 537,-725 543,-731 543,-737 543,-737 543,-749 543,-749 543,-755 537,-761 531,-761"/>
+<text text-anchor="middle" x="476" y="-740.5" font-family="sans" font-size="10.00" fill="#000000">remove_adapters_cutadapt</text>
 </g>
-<!-- 34&#45;&gt;54 -->
-<g id="edge95" class="edge">
-<title>34&#45;&gt;54</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M528.7333,-796.9453C560.3206,-786.7581 598.4211,-774.4703 630.2754,-764.1969"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="631.5037,-767.4784 639.9466,-761.0778 629.355,-760.8163 631.5037,-767.4784"/>
+<!-- 34&#45;&gt;49 -->
+<g id="edge85" class="edge">
+<title>34&#45;&gt;49</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M473.8357,-796.7476C474.1526,-788.8767 474.5192,-779.7743 474.8595,-771.3232"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="478.3655,-771.2414 475.2708,-761.1087 471.3712,-770.9597 478.3655,-771.2414"/>
 </g>
 <!-- 35 -->
 <g id="node36" class="node">
 <title>35</title>
-<path fill="none" stroke="#56a2d8" stroke-width="2" d="M1042,-838C1042,-838 774,-838 774,-838 768,-838 762,-832 762,-826 762,-826 762,-809 762,-809 762,-803 768,-797 774,-797 774,-797 1042,-797 1042,-797 1048,-797 1054,-803 1054,-809 1054,-809 1054,-826 1054,-826 1054,-832 1048,-838 1042,-838"/>
-<text text-anchor="middle" x="908" y="-826" font-family="sans" font-size="10.00" fill="#000000">start</text>
-<text text-anchor="middle" x="908" y="-815" font-family="sans" font-size="10.00" fill="#000000">mate: fq2</text>
-<text text-anchor="middle" x="908" y="-804" font-family="sans" font-size="10.00" fill="#000000">sample: synthetic_10_reads_paired_synthetic_10_reads_paired</text>
+<path fill="none" stroke="#56d87b" stroke-width="2" d="M977,-838C977,-838 709,-838 709,-838 703,-838 697,-832 697,-826 697,-826 697,-809 697,-809 697,-803 703,-797 709,-797 709,-797 977,-797 977,-797 983,-797 989,-803 989,-809 989,-809 989,-826 989,-826 989,-832 983,-838 977,-838"/>
+<text text-anchor="middle" x="843" y="-826" font-family="sans" font-size="10.00" fill="#000000">start</text>
+<text text-anchor="middle" x="843" y="-815" font-family="sans" font-size="10.00" fill="#000000">mate: fq2</text>
+<text text-anchor="middle" x="843" y="-804" font-family="sans" font-size="10.00" fill="#000000">sample: synthetic_10_reads_paired_synthetic_10_reads_paired</text>
 </g>
-<!-- 35&#45;&gt;12 -->
-<g id="edge42" class="edge">
-<title>35&#45;&gt;12</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M952.972,-796.9453C978.5944,-785.2345 1010.29,-770.7478 1034.382,-759.7364"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1035.9021,-762.89 1043.5422,-755.5497 1032.9922,-756.5234 1035.9021,-762.89"/>
+<!-- 35&#45;&gt;16 -->
+<g id="edge48" class="edge">
+<title>35&#45;&gt;16</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M872.5215,-796.9453C885.8403,-787.6719 901.659,-776.658 915.5196,-767.0074"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="917.6501,-769.7888 923.8569,-761.2024 913.6503,-764.0441 917.6501,-769.7888"/>
 </g>
-<!-- 35&#45;&gt;52 -->
-<g id="edge94" class="edge">
-<title>35&#45;&gt;52</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M797.3539,-796.9947C732.1855,-784.9175 651.0154,-769.8747 590.9142,-758.7366"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="591.5494,-755.2948 581.079,-756.9139 590.2738,-762.1776 591.5494,-755.2948"/>
+<!-- 35&#45;&gt;47 -->
+<g id="edge84" class="edge">
+<title>35&#45;&gt;47</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M696.9598,-801.5796C610.4044,-791.4705 498.6881,-777.2509 400,-761 398.7313,-760.7911 397.4531,-760.5772 396.1673,-760.3589"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="396.6468,-756.8896 386.1921,-758.6072 395.4361,-763.7841 396.6468,-756.8896"/>
 </g>
 <!-- 36 -->
 <g id="node37" class="node">
 <title>36</title>
-<path fill="none" stroke="#56d892" stroke-width="2" d="M562,-686.5C562,-686.5 450,-686.5 450,-686.5 444,-686.5 438,-680.5 438,-674.5 438,-674.5 438,-662.5 438,-662.5 438,-656.5 444,-650.5 450,-650.5 450,-650.5 562,-650.5 562,-650.5 568,-650.5 574,-656.5 574,-662.5 574,-662.5 574,-674.5 574,-674.5 574,-680.5 568,-686.5 562,-686.5"/>
-<text text-anchor="middle" x="506" y="-666" font-family="sans" font-size="10.00" fill="#000000">pe_remove_polya_cutadapt</text>
+<path fill="none" stroke="#d8cb56" stroke-width="2" d="M367,-686.5C367,-686.5 255,-686.5 255,-686.5 249,-686.5 243,-680.5 243,-674.5 243,-674.5 243,-662.5 243,-662.5 243,-656.5 249,-650.5 255,-650.5 255,-650.5 367,-650.5 367,-650.5 373,-650.5 379,-656.5 379,-662.5 379,-662.5 379,-674.5 379,-674.5 379,-680.5 373,-686.5 367,-686.5"/>
+<text text-anchor="middle" x="311" y="-666" font-family="sans" font-size="10.00" fill="#000000">pe_remove_polya_cutadapt</text>
 </g>
-<!-- 36&#45;&gt;13 -->
-<g id="edge43" class="edge">
-<title>36&#45;&gt;13</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M441.1153,-650.4283C383.0432,-629.8279 307,-589.8908 307,-522 307,-522 307,-522 307,-378 307,-335.6562 288.4068,-289.6118 274.6094,-261.273"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="277.5809,-259.3907 269.9675,-252.0228 271.3245,-262.5304 277.5809,-259.3907"/>
-</g>
-<!-- 40 -->
-<g id="node41" class="node">
-<title>40</title>
-<path fill="none" stroke="#d8a456" stroke-width="2" d="M644.5,-252C644.5,-252 541.5,-252 541.5,-252 535.5,-252 529.5,-246 529.5,-240 529.5,-240 529.5,-228 529.5,-228 529.5,-222 535.5,-216 541.5,-216 541.5,-216 644.5,-216 644.5,-216 650.5,-216 656.5,-222 656.5,-228 656.5,-228 656.5,-240 656.5,-240 656.5,-246 650.5,-252 644.5,-252"/>
-<text text-anchor="middle" x="593" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">pe_quantification_salmon</text>
+<!-- 36&#45;&gt;17 -->
+<g id="edge49" class="edge">
+<title>36&#45;&gt;17</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M303.3336,-650.3711C292.496,-623.0553 274,-569.4811 274,-522 274,-522 274,-522 274,-378 274,-337.1184 273.5178,-323.941 293,-288 298.7664,-277.3621 307.2845,-267.446 315.8594,-259.089"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="318.3777,-261.5273 323.3418,-252.1673 313.6243,-256.3887 318.3777,-261.5273"/>
 </g>
-<!-- 36&#45;&gt;40 -->
-<g id="edge75" class="edge">
-<title>36&#45;&gt;40</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M506,-650.4571C506,-622.8072 506,-568.2899 506,-522 506,-522 506,-522 506,-450 506,-374.906 517.7221,-353.7497 554,-288 559.1957,-278.5834 565.7633,-268.882 572.0204,-260.3455"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="574.8955,-262.3458 578.1117,-252.2509 569.3022,-258.1367 574.8955,-262.3458"/>
+<!-- 36&#45;&gt;31 -->
+<g id="edge64" class="edge">
+<title>36&#45;&gt;31</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M294.3551,-650.1517C272.2595,-623.8199 236,-572.8604 236,-522 236,-522 236,-522 236,-306 236,-265.1184 224.3763,-243.0832 255,-216 290.0853,-184.971 628.4308,-185.0087 675,-180 696.2075,-177.719 719.1885,-174.8897 740.2421,-172.1551"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="740.9461,-175.5928 750.4065,-170.823 740.0364,-168.6522 740.9461,-175.5928"/>
 </g>
-<!-- 36&#45;&gt;42 -->
-<g id="edge80" class="edge">
-<title>36&#45;&gt;42</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M574.4139,-654.8356C642.1298,-641.3105 745.1289,-620.7383 812.257,-607.3307"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="813.181,-610.7154 822.3018,-605.3244 811.8099,-603.8509 813.181,-610.7154"/>
+<!-- 36&#45;&gt;59 -->
+<g id="edge106" class="edge">
+<title>36&#45;&gt;59</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M379.197,-653.4238C438.1946,-640.3813 522.9861,-621.6366 581.4863,-608.7041"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="582.3565,-612.0963 591.3652,-606.5202 580.8454,-605.2613 582.3565,-612.0963"/>
 </g>
 <!-- 37 -->
 <g id="node38" class="node">
 <title>37</title>
-<path fill="none" stroke="#afd856" stroke-width="2" d="M457,-324C457,-324 373,-324 373,-324 367,-324 361,-318 361,-312 361,-312 361,-300 361,-300 361,-294 367,-288 373,-288 373,-288 457,-288 457,-288 463,-288 469,-294 469,-300 469,-300 469,-312 469,-312 469,-318 463,-324 457,-324"/>
-<text text-anchor="middle" x="415" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">create_index_kallisto</text>
+<path fill="none" stroke="#56a2d8" stroke-width="2" d="M398,-324C398,-324 314,-324 314,-324 308,-324 302,-318 302,-312 302,-312 302,-300 302,-300 302,-294 308,-288 314,-288 314,-288 398,-288 398,-288 404,-288 410,-294 410,-300 410,-300 410,-312 410,-312 410,-318 404,-324 398,-324"/>
+<text text-anchor="middle" x="356" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">create_index_kallisto</text>
 </g>
-<!-- 37&#45;&gt;13 -->
-<g id="edge44" class="edge">
-<title>37&#45;&gt;13</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M375.887,-287.8314C355.2488,-278.2446 329.7516,-266.4008 307.9327,-256.2655"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="309.3756,-253.0766 298.8318,-252.038 306.4266,-259.4251 309.3756,-253.0766"/>
+<!-- 37&#45;&gt;17 -->
+<g id="edge50" class="edge">
+<title>37&#45;&gt;17</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M353.7289,-287.8314C352.7664,-280.131 351.6218,-270.9743 350.5521,-262.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="354.0151,-261.9019 349.3017,-252.4133 347.0691,-262.7702 354.0151,-261.9019"/>
 </g>
-<!-- 37&#45;&gt;14 -->
-<g id="edge46" class="edge">
-<title>37&#45;&gt;14</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M420.2992,-287.8314C422.5698,-280.0463 425.2746,-270.7729 427.794,-262.1347"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="431.1894,-262.9933 430.6295,-252.4133 424.4694,-261.0332 431.1894,-262.9933"/>
+<!-- 37&#45;&gt;18 -->
+<g id="edge52" class="edge">
+<title>37&#45;&gt;18</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M398.1412,-287.8314C420.4764,-278.2018 448.0936,-266.295 471.671,-256.1299"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="473.3647,-259.2112 481.1619,-252.038 470.5933,-252.7831 473.3647,-259.2112"/>
 </g>
 <!-- 38 -->
 <g id="node39" class="node">
 <title>38</title>
-<path fill="none" stroke="#56c1d8" stroke-width="2" d="M759,-686.5C759,-686.5 663,-686.5 663,-686.5 657,-686.5 651,-680.5 651,-674.5 651,-674.5 651,-662.5 651,-662.5 651,-656.5 657,-650.5 663,-650.5 663,-650.5 759,-650.5 759,-650.5 765,-650.5 771,-656.5 771,-662.5 771,-662.5 771,-674.5 771,-674.5 771,-680.5 765,-686.5 759,-686.5"/>
-<text text-anchor="middle" x="711" y="-666" font-family="sans" font-size="10.00" fill="#000000">remove_polya_cutadapt</text>
+<path fill="none" stroke="#d89556" stroke-width="2" d="M538,-686.5C538,-686.5 442,-686.5 442,-686.5 436,-686.5 430,-680.5 430,-674.5 430,-674.5 430,-662.5 430,-662.5 430,-656.5 436,-650.5 442,-650.5 442,-650.5 538,-650.5 538,-650.5 544,-650.5 550,-656.5 550,-662.5 550,-662.5 550,-674.5 550,-674.5 550,-680.5 544,-686.5 538,-686.5"/>
+<text text-anchor="middle" x="490" y="-666" font-family="sans" font-size="10.00" fill="#000000">remove_polya_cutadapt</text>
 </g>
-<!-- 38&#45;&gt;14 -->
-<g id="edge45" class="edge">
-<title>38&#45;&gt;14</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M706.2344,-650.1441C699.4975,-622.5387 688,-568.5995 688,-522 688,-522 688,-522 688,-450 688,-409.0242 695.6837,-390.2097 668,-360 632.1028,-320.8273 601.1597,-348.476 554,-324 520.0424,-306.376 485.7772,-278.9165 462.9864,-258.9614"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="465.2241,-256.2677 455.4228,-252.2444 460.5759,-261.5017 465.2241,-256.2677"/>
-</g>
-<!-- 41 -->
-<g id="node42" class="node">
-<title>41</title>
-<path fill="none" stroke="#68d856" stroke-width="2" d="M773.5,-252C773.5,-252 686.5,-252 686.5,-252 680.5,-252 674.5,-246 674.5,-240 674.5,-240 674.5,-228 674.5,-228 674.5,-222 680.5,-216 686.5,-216 686.5,-216 773.5,-216 773.5,-216 779.5,-216 785.5,-222 785.5,-228 785.5,-228 785.5,-240 785.5,-240 785.5,-246 779.5,-252 773.5,-252"/>
-<text text-anchor="middle" x="730" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">quantification_salmon</text>
+<!-- 38&#45;&gt;18 -->
+<g id="edge51" class="edge">
+<title>38&#45;&gt;18</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M482.9552,-650.314C472.9964,-622.9252 456,-569.2591 456,-522 456,-522 456,-522 456,-450 456,-377.9986 425.9662,-352.97 457,-288 462.589,-276.2993 472.0792,-266.2841 482.147,-258.1706"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="484.3775,-260.8729 490.2815,-252.0755 480.18,-255.2709 484.3775,-260.8729"/>
 </g>
-<!-- 38&#45;&gt;41 -->
-<g id="edge77" class="edge">
-<title>38&#45;&gt;41</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M714.108,-650.0609C718.5016,-622.3494 726,-568.2763 726,-522 726,-522 726,-522 726,-378 726,-337.8605 727.5722,-291.4516 728.7453,-262.4112"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="732.2521,-262.3179 729.1712,-252.1809 725.2581,-262.0266 732.2521,-262.3179"/>
+<!-- 38&#45;&gt;32 -->
+<g id="edge66" class="edge">
+<title>38&#45;&gt;32</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M492.771,-650.0546C498.1542,-618.3368 512.1225,-552.2275 541,-504 615.2326,-380.0261 657.318,-357.5102 784,-288 821.4078,-267.4744 838.286,-276.8109 873,-252 897.3244,-234.6148 919.0558,-208.1546 933.3628,-188.4184"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="936.2942,-190.3349 939.2109,-180.1495 930.579,-186.293 936.2942,-190.3349"/>
 </g>
-<!-- 38&#45;&gt;44 -->
-<g id="edge83" class="edge">
-<title>38&#45;&gt;44</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M771.0215,-661.4912C893.0937,-647.2367 1168.9639,-615.023 1290.0933,-600.8786"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1290.756,-604.3251 1300.2825,-599.6888 1289.944,-597.3723 1290.756,-604.3251"/>
+<!-- 38&#45;&gt;62 -->
+<g id="edge109" class="edge">
+<title>38&#45;&gt;62</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M550.0262,-661.3904C670.5706,-647.1129 940.7416,-615.1133 1060.2345,-600.9603"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1060.7723,-604.4212 1070.2912,-599.7692 1059.9489,-597.4697 1060.7723,-604.4212"/>
 </g>
 <!-- 39 -->
 <g id="node40" class="node">
 <title>39</title>
-<path fill="none" stroke="#56d882" stroke-width="2" d="M1120,-396C1120,-396 1044,-396 1044,-396 1038,-396 1032,-390 1032,-384 1032,-384 1032,-372 1032,-372 1032,-366 1038,-360 1044,-360 1044,-360 1120,-360 1120,-360 1126,-360 1132,-366 1132,-372 1132,-372 1132,-384 1132,-384 1132,-390 1126,-396 1120,-396"/>
-<text text-anchor="middle" x="1082" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">merge_TIN_scores</text>
+<path fill="none" stroke="#d86656" stroke-width="2" d="M780,-396C780,-396 704,-396 704,-396 698,-396 692,-390 692,-384 692,-384 692,-372 692,-372 692,-366 698,-360 704,-360 704,-360 780,-360 780,-360 786,-360 792,-366 792,-372 792,-372 792,-384 792,-384 792,-390 786,-396 780,-396"/>
+<text text-anchor="middle" x="742" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">merge_TIN_scores</text>
 </g>
-<!-- 39&#45;&gt;15 -->
-<g id="edge47" class="edge">
-<title>39&#45;&gt;15</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1082,-359.9555C1082,-322.3938 1082,-235.5541 1082,-190.4103"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1085.5001,-190.145 1082,-180.1451 1078.5001,-190.1451 1085.5001,-190.145"/>
+<!-- 39&#45;&gt;19 -->
+<g id="edge53" class="edge">
+<title>39&#45;&gt;19</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M731.8917,-359.9555C710.6278,-321.9967 661.1724,-233.7127 636.121,-188.9928"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="639.1054,-187.1589 631.1646,-180.1451 632.9984,-190.58 639.1054,-187.1589"/>
 </g>
-<!-- 40&#45;&gt;16 -->
-<g id="edge48" class="edge">
-<title>40&#45;&gt;16</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M632.3654,-215.8314C653.1367,-206.2446 678.7983,-194.4008 700.7581,-184.2655"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="702.3048,-187.4065 709.9177,-180.038 699.3714,-181.0508 702.3048,-187.4065"/>
+<!-- 40 -->
+<g id="node41" class="node">
+<title>40</title>
+<path fill="none" stroke="#56d8a9" stroke-width="2" d="M1216.5,-252C1216.5,-252 1135.5,-252 1135.5,-252 1129.5,-252 1123.5,-246 1123.5,-240 1123.5,-240 1123.5,-228 1123.5,-228 1123.5,-222 1129.5,-216 1135.5,-216 1135.5,-216 1216.5,-216 1216.5,-216 1222.5,-216 1228.5,-222 1228.5,-228 1228.5,-228 1228.5,-240 1228.5,-240 1228.5,-246 1222.5,-252 1216.5,-252"/>
+<text text-anchor="middle" x="1176" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc_all_samples</text>
 </g>
-<!-- 40&#45;&gt;17 -->
-<g id="edge50" class="edge">
-<title>40&#45;&gt;17</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M656.5811,-218.0084C659.4248,-217.3235 662.2412,-216.6513 665,-216 680.7453,-212.283 761.2088,-194.4393 825.2937,-180.2665"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="826.4175,-183.6026 835.4259,-178.0261 824.9061,-176.7677 826.4175,-183.6026"/>
+<!-- 40&#45;&gt;20 -->
+<g id="edge54" class="edge">
+<title>40&#45;&gt;20</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1211.3279,-215.8314C1229.6493,-206.4089 1252.2102,-194.8062 1271.6895,-184.7883"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1273.3912,-187.8489 1280.6834,-180.1628 1270.1898,-181.6239 1273.3912,-187.8489"/>
 </g>
-<!-- 40&#45;&gt;18 -->
-<g id="edge52" class="edge">
-<title>40&#45;&gt;18</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M547.3261,-215.8314C522.9032,-206.1162 492.6534,-194.0831 466.9516,-183.8592"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="467.931,-180.4821 457.3455,-180.038 465.3437,-186.9864 467.931,-180.4821"/>
+<!-- 41 -->
+<g id="node42" class="node">
+<title>41</title>
+<path fill="none" stroke="#56d8a9" stroke-width="2" d="M1339.5,-252C1339.5,-252 1258.5,-252 1258.5,-252 1252.5,-252 1246.5,-246 1246.5,-240 1246.5,-240 1246.5,-228 1246.5,-228 1246.5,-222 1252.5,-216 1258.5,-216 1258.5,-216 1339.5,-216 1339.5,-216 1345.5,-216 1351.5,-222 1351.5,-228 1351.5,-228 1351.5,-240 1351.5,-240 1351.5,-246 1345.5,-252 1339.5,-252"/>
+<text text-anchor="middle" x="1299" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc_all_samples</text>
 </g>
-<!-- 40&#45;&gt;19 -->
-<g id="edge54" class="edge">
-<title>40&#45;&gt;19</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M590.9813,-215.8314C590.1257,-208.131 589.1083,-198.9743 588.1574,-190.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="591.6289,-189.9656 587.0459,-180.4133 584.6717,-190.7386 591.6289,-189.9656"/>
+<!-- 41&#45;&gt;20 -->
+<g id="edge55" class="edge">
+<title>41&#45;&gt;20</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1303.2898,-215.8314C1305.108,-208.131 1307.2699,-198.9743 1309.2905,-190.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1312.7608,-190.95 1311.6524,-180.4133 1305.9481,-189.3414 1312.7608,-190.95"/>
 </g>
-<!-- 41&#45;&gt;16 -->
-<g id="edge49" class="edge">
-<title>41&#45;&gt;16</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M734.7945,-215.8314C736.8489,-208.0463 739.296,-198.7729 741.5756,-190.1347"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="744.9735,-190.9753 744.1409,-180.4133 738.2052,-189.1892 744.9735,-190.9753"/>
+<!-- 42 -->
+<g id="node43" class="node">
+<title>42</title>
+<path fill="none" stroke="#5692d8" stroke-width="2" d="M966,-396C966,-396 860,-396 860,-396 854,-396 848,-390 848,-384 848,-384 848,-372 848,-372 848,-366 854,-360 860,-360 860,-360 966,-360 966,-360 972,-360 978,-366 978,-372 978,-372 978,-384 978,-384 978,-390 972,-396 966,-396"/>
+<text text-anchor="middle" x="913" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
+<text text-anchor="middle" x="913" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: Unique</text>
 </g>
-<!-- 41&#45;&gt;17 -->
-<g id="edge51" class="edge">
-<title>41&#45;&gt;17</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M774.9169,-215.8314C798.935,-206.1162 828.6834,-194.0831 853.9592,-183.8592"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="855.4482,-187.0325 863.4061,-180.038 852.8233,-180.5432 855.4482,-187.0325"/>
+<!-- 42&#45;&gt;22 -->
+<g id="edge56" class="edge">
+<title>42&#45;&gt;22</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M893.065,-359.8314C883.5217,-351.1337 871.9401,-340.5783 861.5694,-331.1265"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="863.6772,-328.3121 853.9287,-324.1628 858.962,-333.4857 863.6772,-328.3121"/>
 </g>
-<!-- 41&#45;&gt;18 -->
-<g id="edge53" class="edge">
-<title>41&#45;&gt;18</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M674.3881,-218.3641C671.2168,-217.5459 668.0708,-216.7522 665,-216 648.7917,-212.0298 566.1324,-194.4694 499.641,-180.4364"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="500.0472,-176.9451 489.54,-178.3055 498.6022,-183.7944 500.0472,-176.9451"/>
+<!-- 42&#45;&gt;25 -->
+<g id="edge58" class="edge">
+<title>42&#45;&gt;25</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M936.9725,-359.8314C948.7861,-350.8779 963.1972,-339.9558 975.9435,-330.2955"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="978.1795,-332.9925 984.0352,-324.1628 973.9514,-327.4137 978.1795,-332.9925"/>
 </g>
-<!-- 41&#45;&gt;19 -->
-<g id="edge55" class="edge">
-<title>41&#45;&gt;19</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M693.4104,-215.8314C674.2761,-206.3302 650.6771,-194.6121 630.3878,-184.5374"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="631.8397,-181.3506 621.3265,-180.038 628.7265,-187.6203 631.8397,-181.3506"/>
+<!-- 52 -->
+<g id="node53" class="node">
+<title>52</title>
+<path fill="none" stroke="#5663d8" stroke-width="2" d="M936,-324C936,-324 906,-324 906,-324 900,-324 894,-318 894,-312 894,-312 894,-300 894,-300 894,-294 900,-288 906,-288 906,-288 936,-288 936,-288 942,-288 948,-294 948,-300 948,-300 948,-312 948,-312 948,-318 942,-324 936,-324"/>
+<text text-anchor="middle" x="921" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
 </g>
-<!-- 42&#45;&gt;20 -->
-<g id="edge56" class="edge">
-<title>42&#45;&gt;20</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M824.7405,-575.9128C808.4149,-567.642 792.3643,-556.0115 783,-540 774.9225,-526.1886 774.0299,-517.2491 783,-504 804.5513,-472.168 848.2339,-459.0988 880.0914,-453.734"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="881.0203,-457.1341 890.3929,-452.194 879.9853,-450.211 881.0203,-457.1341"/>
+<!-- 42&#45;&gt;52 -->
+<g id="edge92" class="edge">
+<title>42&#45;&gt;52</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M915.0187,-359.8314C915.8743,-352.131 916.8917,-342.9743 917.8426,-334.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="921.3283,-334.7386 918.9541,-324.4133 914.3711,-333.9656 921.3283,-334.7386"/>
 </g>
 <!-- 43 -->
 <g id="node44" class="node">
 <title>43</title>
-<path fill="none" stroke="#ced856" stroke-width="2" d="M954,-540C954,-540 804,-540 804,-540 798,-540 792,-534 792,-528 792,-528 792,-516 792,-516 792,-510 798,-504 804,-504 804,-504 954,-504 954,-504 960,-504 966,-510 966,-516 966,-516 966,-528 966,-528 966,-534 960,-540 954,-540"/>
-<text text-anchor="middle" x="879" y="-525" font-family="sans" font-size="10.00" fill="#000000">index_genomic_alignment_samtools</text>
-<text text-anchor="middle" x="879" y="-514" font-family="sans" font-size="10.00" fill="#000000">seqmode: pe</text>
+<path fill="none" stroke="#5692d8" stroke-width="2" d="M1114,-396C1114,-396 1008,-396 1008,-396 1002,-396 996,-390 996,-384 996,-384 996,-372 996,-372 996,-366 1002,-360 1008,-360 1008,-360 1114,-360 1114,-360 1120,-360 1126,-366 1126,-372 1126,-372 1126,-384 1126,-384 1126,-390 1120,-396 1114,-396"/>
+<text text-anchor="middle" x="1061" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
+<text text-anchor="middle" x="1061" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: UniqueMultiple</text>
 </g>
-<!-- 42&#45;&gt;43 -->
-<g id="edge81" class="edge">
-<title>42&#45;&gt;43</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M879,-575.8314C879,-568.131 879,-558.9743 879,-550.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="882.5001,-550.4132 879,-540.4133 875.5001,-550.4133 882.5001,-550.4132"/>
+<!-- 43&#45;&gt;24 -->
+<g id="edge57" class="edge">
+<title>43&#45;&gt;24</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1073.1124,-359.8314C1078.5281,-351.7079 1085.0242,-341.9637 1090.9921,-333.0118"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1094.0896,-334.6753 1096.7245,-324.4133 1088.2653,-330.7923 1094.0896,-334.6753"/>
 </g>
-<!-- 55 -->
-<g id="node56" class="node">
-<title>55</title>
-<path fill="none" stroke="#d87556" stroke-width="2" d="M1064,-468C1064,-468 976,-468 976,-468 970,-468 964,-462 964,-456 964,-456 964,-444 964,-444 964,-438 970,-432 976,-432 976,-432 1064,-432 1064,-432 1070,-432 1076,-438 1076,-444 1076,-444 1076,-456 1076,-456 1076,-462 1070,-468 1064,-468"/>
-<text text-anchor="middle" x="1020" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">calculate_TIN_scores</text>
+<!-- 43&#45;&gt;26 -->
+<g id="edge59" class="edge">
+<title>43&#45;&gt;26</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1126.3682,-362.0919C1129.2852,-361.3845 1132.1729,-360.6846 1135,-360 1194.098,-345.689 1261.9881,-329.3347 1307.394,-318.409"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1308.393,-321.7686 1317.2969,-316.0264 1306.7556,-314.9628 1308.393,-321.7686"/>
 </g>
-<!-- 42&#45;&gt;55 -->
+<!-- 54 -->
+<g id="node55" class="node">
+<title>54</title>
+<path fill="none" stroke="#5663d8" stroke-width="2" d="M1211,-324C1211,-324 1181,-324 1181,-324 1175,-324 1169,-318 1169,-312 1169,-312 1169,-300 1169,-300 1169,-294 1175,-288 1181,-288 1181,-288 1211,-288 1211,-288 1217,-288 1223,-294 1223,-300 1223,-300 1223,-312 1223,-312 1223,-318 1217,-324 1211,-324"/>
+<text text-anchor="middle" x="1196" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+</g>
+<!-- 43&#45;&gt;54 -->
 <g id="edge96" class="edge">
-<title>42&#45;&gt;55</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M923.3895,-575.9625C941.0874,-567.1234 960.625,-555.0933 975,-540 991.9283,-522.2258 1003.8302,-496.8505 1011.1237,-477.5724"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1014.4325,-478.714 1014.5198,-468.1195 1007.8447,-476.3472 1014.4325,-478.714"/>
+<title>43&#45;&gt;54</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1095.0662,-359.8314C1114.8453,-349.2825 1139.7483,-336.0009 1159.8691,-325.2698"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1161.5652,-328.3319 1168.7417,-320.5378 1158.2711,-322.1555 1161.5652,-328.3319"/>
 </g>
-<!-- 43&#45;&gt;20 -->
-<g id="edge57" class="edge">
-<title>43&#45;&gt;20</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M888.8413,-503.8314C893.1957,-495.7925 898.4098,-486.1666 903.2169,-477.2918"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="906.3408,-478.8732 908.0261,-468.4133 900.1857,-475.5392 906.3408,-478.8732"/>
+<!-- 44 -->
+<g id="node45" class="node">
+<title>44</title>
+<path fill="none" stroke="#5692d8" stroke-width="2" d="M1795,-396C1795,-396 1689,-396 1689,-396 1683,-396 1677,-390 1677,-384 1677,-384 1677,-372 1677,-372 1677,-366 1683,-360 1689,-360 1689,-360 1795,-360 1795,-360 1801,-360 1807,-366 1807,-372 1807,-372 1807,-384 1807,-384 1807,-390 1801,-396 1795,-396"/>
+<text text-anchor="middle" x="1742" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
+<text text-anchor="middle" x="1742" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: Unique</text>
 </g>
-<!-- 43&#45;&gt;55 -->
-<g id="edge97" class="edge">
-<title>43&#45;&gt;55</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M914.5803,-503.8314C933.0325,-494.4089 955.7545,-482.8062 975.373,-472.7883"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="977.1168,-475.8278 984.4311,-468.1628 973.9333,-469.5935 977.1168,-475.8278"/>
+<!-- 44&#45;&gt;27 -->
+<g id="edge60" class="edge">
+<title>44&#45;&gt;27</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1736.1961,-359.8314C1733.7092,-352.0463 1730.7469,-342.7729 1727.9875,-334.1347"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1731.2591,-332.874 1724.882,-324.4133 1724.591,-335.0041 1731.2591,-332.874"/>
 </g>
-<!-- 44&#45;&gt;21 -->
-<g id="edge58" class="edge">
-<title>44&#45;&gt;21</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1397.8953,-576.4505C1415.1813,-567.9496 1433.2316,-556.0316 1445,-540 1458.0158,-522.2691 1462.5259,-497.5652 1463.9152,-478.5241"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1467.4206,-478.4934 1464.4068,-468.3363 1460.4288,-478.1559 1467.4206,-478.4934"/>
+<!-- 44&#45;&gt;29 -->
+<g id="edge62" class="edge">
+<title>44&#45;&gt;29</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1787.1693,-359.8314C1812.3511,-349.7024 1843.7968,-337.0538 1869.8783,-326.5629"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1871.2516,-329.7831 1879.2231,-322.8041 1868.6393,-323.2888 1871.2516,-329.7831"/>
+</g>
+<!-- 53 -->
+<g id="node54" class="node">
+<title>53</title>
+<path fill="none" stroke="#5663d8" stroke-width="2" d="M1461,-324C1461,-324 1431,-324 1431,-324 1425,-324 1419,-318 1419,-312 1419,-312 1419,-300 1419,-300 1419,-294 1425,-288 1431,-288 1431,-288 1461,-288 1461,-288 1467,-288 1473,-294 1473,-300 1473,-300 1473,-312 1473,-312 1473,-318 1467,-324 1461,-324"/>
+<text text-anchor="middle" x="1446" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+</g>
+<!-- 44&#45;&gt;53 -->
+<g id="edge94" class="edge">
+<title>44&#45;&gt;53</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1676.9062,-369.269C1625.8366,-361.3381 1553.1365,-347.6594 1482.6746,-323.7897"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1483.7943,-320.4736 1473.1996,-320.5126 1481.5062,-327.0891 1483.7943,-320.4736"/>
 </g>
 <!-- 45 -->
 <g id="node46" class="node">
 <title>45</title>
-<path fill="none" stroke="#ced856" stroke-width="2" d="M1424,-540C1424,-540 1274,-540 1274,-540 1268,-540 1262,-534 1262,-528 1262,-528 1262,-516 1262,-516 1262,-510 1268,-504 1274,-504 1274,-504 1424,-504 1424,-504 1430,-504 1436,-510 1436,-516 1436,-516 1436,-528 1436,-528 1436,-534 1430,-540 1424,-540"/>
-<text text-anchor="middle" x="1349" y="-525" font-family="sans" font-size="10.00" fill="#000000">index_genomic_alignment_samtools</text>
-<text text-anchor="middle" x="1349" y="-514" font-family="sans" font-size="10.00" fill="#000000">seqmode: se</text>
-</g>
-<!-- 44&#45;&gt;45 -->
-<g id="edge84" class="edge">
-<title>44&#45;&gt;45</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1349,-575.8314C1349,-568.131 1349,-558.9743 1349,-550.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1352.5001,-550.4132 1349,-540.4133 1345.5001,-550.4133 1352.5001,-550.4132"/>
-</g>
-<!-- 56 -->
-<g id="node57" class="node">
-<title>56</title>
-<path fill="none" stroke="#d87556" stroke-width="2" d="M1194,-468C1194,-468 1106,-468 1106,-468 1100,-468 1094,-462 1094,-456 1094,-456 1094,-444 1094,-444 1094,-438 1100,-432 1106,-432 1106,-432 1194,-432 1194,-432 1200,-432 1206,-438 1206,-444 1206,-444 1206,-456 1206,-456 1206,-462 1200,-468 1194,-468"/>
-<text text-anchor="middle" x="1150" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">calculate_TIN_scores</text>
+<path fill="none" stroke="#5692d8" stroke-width="2" d="M1943,-396C1943,-396 1837,-396 1837,-396 1831,-396 1825,-390 1825,-384 1825,-384 1825,-372 1825,-372 1825,-366 1831,-360 1837,-360 1837,-360 1943,-360 1943,-360 1949,-360 1955,-366 1955,-372 1955,-372 1955,-384 1955,-384 1955,-390 1949,-396 1943,-396"/>
+<text text-anchor="middle" x="1890" y="-381" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
+<text text-anchor="middle" x="1890" y="-370" font-family="sans" font-size="10.00" fill="#000000">unique: UniqueMultiple</text>
 </g>
-<!-- 44&#45;&gt;56 -->
-<g id="edge99" class="edge">
-<title>44&#45;&gt;56</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1312.8301,-575.9289C1294.3752,-566.1489 1271.8951,-553.3548 1253,-540 1224.9717,-520.19 1195.7599,-494.0605 1175.6354,-475.062"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1178.0432,-472.5218 1168.3888,-468.1578 1173.2146,-477.5898 1178.0432,-472.5218"/>
+<!-- 45&#45;&gt;28 -->
+<g id="edge61" class="edge">
+<title>45&#45;&gt;28</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1942.4698,-359.9243C1974.6868,-348.8256 2015.7618,-334.6754 2047.7513,-323.655"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2049.0529,-326.9086 2057.3675,-320.3423 2046.7728,-320.2903 2049.0529,-326.9086"/>
 </g>
-<!-- 45&#45;&gt;21 -->
-<g id="edge59" class="edge">
-<title>45&#45;&gt;21</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1378.0194,-503.8314C1393.0654,-494.4112 1411.5922,-482.8118 1427.5905,-472.7955"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1429.5615,-475.6909 1436.18,-467.4177 1425.8469,-469.7578 1429.5615,-475.6909"/>
+<!-- 45&#45;&gt;30 -->
+<g id="edge63" class="edge">
+<title>45&#45;&gt;30</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1872.336,-359.8314C1864.0268,-351.2848 1853.9736,-340.9443 1844.9082,-331.6198"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1847.3821,-329.1435 1837.9018,-324.4133 1842.3631,-334.023 1847.3821,-329.1435"/>
 </g>
-<!-- 45&#45;&gt;56 -->
-<g id="edge100" class="edge">
-<title>45&#45;&gt;56</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1299.0408,-503.9243C1271.8363,-494.0815 1237.9983,-481.8386 1209.4438,-471.5073"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1210.5741,-468.1943 1199.9798,-468.0831 1208.1924,-474.7767 1210.5741,-468.1943"/>
+<!-- 55 -->
+<g id="node56" class="node">
+<title>55</title>
+<path fill="none" stroke="#5663d8" stroke-width="2" d="M1533,-324C1533,-324 1503,-324 1503,-324 1497,-324 1491,-318 1491,-312 1491,-312 1491,-300 1491,-300 1491,-294 1497,-288 1503,-288 1503,-288 1533,-288 1533,-288 1539,-288 1545,-294 1545,-300 1545,-300 1545,-312 1545,-312 1545,-318 1539,-324 1533,-324"/>
+<text text-anchor="middle" x="1518" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
 </g>
-<!-- 46 -->
-<g id="node47" class="node">
-<title>46</title>
-<path fill="none" stroke="#56b1d8" stroke-width="2" d="M1691.5,-252C1691.5,-252 1610.5,-252 1610.5,-252 1604.5,-252 1598.5,-246 1598.5,-240 1598.5,-240 1598.5,-228 1598.5,-228 1598.5,-222 1604.5,-216 1610.5,-216 1610.5,-216 1691.5,-216 1691.5,-216 1697.5,-216 1703.5,-222 1703.5,-228 1703.5,-228 1703.5,-240 1703.5,-240 1703.5,-246 1697.5,-252 1691.5,-252"/>
-<text text-anchor="middle" x="1651" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc_all_samples</text>
+<!-- 45&#45;&gt;55 -->
+<g id="edge98" class="edge">
+<title>45&#45;&gt;55</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1824.678,-361.8882C1821.7485,-361.2359 1818.8455,-360.6033 1816,-360 1722.5467,-340.1851 1611.6386,-321.2959 1555.1264,-311.9995"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1555.6581,-308.54 1545.2238,-310.3773 1554.5264,-315.448 1555.6581,-308.54"/>
 </g>
-<!-- 46&#45;&gt;22 -->
-<g id="edge60" class="edge">
-<title>46&#45;&gt;22</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1651,-215.8314C1651,-208.131 1651,-198.9743 1651,-190.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1654.5001,-190.4132 1651,-180.4133 1647.5001,-190.4133 1654.5001,-190.4132"/>
+<!-- 46&#45;&gt;31 -->
+<g id="edge65" class="edge">
+<title>46&#45;&gt;31</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M810.2617,-215.8314C810.7965,-208.131 811.4323,-198.9743 812.0266,-190.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="815.52,-190.6317 812.7213,-180.4133 808.5368,-190.1467 815.52,-190.6317"/>
 </g>
-<!-- 47 -->
-<g id="node48" class="node">
-<title>47</title>
-<path fill="none" stroke="#56b1d8" stroke-width="2" d="M1814.5,-252C1814.5,-252 1733.5,-252 1733.5,-252 1727.5,-252 1721.5,-246 1721.5,-240 1721.5,-240 1721.5,-228 1721.5,-228 1721.5,-222 1727.5,-216 1733.5,-216 1733.5,-216 1814.5,-216 1814.5,-216 1820.5,-216 1826.5,-222 1826.5,-228 1826.5,-228 1826.5,-240 1826.5,-240 1826.5,-246 1820.5,-252 1814.5,-252"/>
-<text text-anchor="middle" x="1774" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc_all_samples</text>
+<!-- 46&#45;&gt;32 -->
+<g id="edge67" class="edge">
+<title>46&#45;&gt;32</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M844.8326,-215.8314C863.4157,-206.4089 886.2989,-194.8062 906.0565,-184.7883"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="907.8427,-187.8069 915.1789,-180.1628 904.677,-181.5635 907.8427,-187.8069"/>
 </g>
-<!-- 47&#45;&gt;22 -->
-<g id="edge61" class="edge">
-<title>47&#45;&gt;22</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1742.9619,-215.8314C1727.2295,-206.6221 1707.9389,-195.3301 1691.0956,-185.4706"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1692.4265,-182.1941 1682.0282,-180.1628 1688.8902,-188.2352 1692.4265,-182.1941"/>
+<!-- 47&#45;&gt;36 -->
+<g id="edge68" class="edge">
+<title>47&#45;&gt;36</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M311,-724.9656C311,-716.5178 311,-706.2542 311,-696.8064"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="314.5001,-696.6265 311,-686.6265 307.5001,-696.6265 314.5001,-696.6265"/>
 </g>
-<!-- 48&#45;&gt;24 -->
-<g id="edge62" class="edge">
-<title>48&#45;&gt;24</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1293.654,-359.8314C1289.0763,-351.7925 1283.5948,-342.1666 1278.5412,-333.2918"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1281.4752,-331.3712 1273.4853,-324.4133 1275.3923,-334.8351 1281.4752,-331.3712"/>
+<!-- 48 -->
+<g id="node49" class="node">
+<title>48</title>
+<path fill="none" stroke="#d88556" stroke-width="2" d="M415.5,-396C415.5,-396 314.5,-396 314.5,-396 308.5,-396 302.5,-390 302.5,-384 302.5,-384 302.5,-372 302.5,-372 302.5,-366 308.5,-360 314.5,-360 314.5,-360 415.5,-360 415.5,-360 421.5,-360 427.5,-366 427.5,-372 427.5,-372 427.5,-384 427.5,-384 427.5,-390 421.5,-396 415.5,-396"/>
+<text text-anchor="middle" x="365" y="-381" font-family="sans" font-size="10.00" fill="#000000">extract_transcriptome</text>
+<text text-anchor="middle" x="365" y="-370" font-family="sans" font-size="10.00" fill="#000000">organism: homo_sapiens</text>
 </g>
-<!-- 48&#45;&gt;27 -->
-<g id="edge64" class="edge">
-<title>48&#45;&gt;27</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1319.1405,-359.8314C1326.1217,-351.454 1334.5391,-341.3531 1342.1876,-332.1749"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1344.9425,-334.3362 1348.6556,-324.4133 1339.5649,-329.8548 1344.9425,-334.3362"/>
+<!-- 48&#45;&gt;37 -->
+<g id="edge69" class="edge">
+<title>48&#45;&gt;37</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M362.7289,-359.8314C361.7664,-352.131 360.6218,-342.9743 359.5521,-334.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="363.0151,-333.9019 358.3017,-324.4133 356.0691,-334.7702 363.0151,-333.9019"/>
 </g>
 <!-- 58 -->
 <g id="node59" class="node">
 <title>58</title>
-<path fill="none" stroke="#88d856" stroke-width="2" d="M1466,-324C1466,-324 1436,-324 1436,-324 1430,-324 1424,-318 1424,-312 1424,-312 1424,-300 1424,-300 1424,-294 1430,-288 1436,-288 1436,-288 1466,-288 1466,-288 1472,-288 1478,-294 1478,-300 1478,-300 1478,-312 1478,-312 1478,-318 1472,-324 1466,-324"/>
-<text text-anchor="middle" x="1451" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+<path fill="none" stroke="#d85656" stroke-width="2" d="M648.5,-324C648.5,-324 477.5,-324 477.5,-324 471.5,-324 465.5,-318 465.5,-312 465.5,-312 465.5,-300 465.5,-300 465.5,-294 471.5,-288 477.5,-288 477.5,-288 648.5,-288 648.5,-288 654.5,-288 660.5,-294 660.5,-300 660.5,-300 660.5,-312 660.5,-312 660.5,-318 654.5,-324 648.5,-324"/>
+<text text-anchor="middle" x="563" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">concatenate_transcriptome_and_genome</text>
 </g>
 <!-- 48&#45;&gt;58 -->
-<g id="edge103" class="edge">
+<g id="edge104" class="edge">
 <title>48&#45;&gt;58</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1341.3026,-359.9776C1360.8441,-350.508 1385.3678,-338.5805 1414.6491,-324.1529"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1416.4691,-327.1578 1423.8889,-319.595 1413.3723,-320.8801 1416.4691,-327.1578"/>
-</g>
-<!-- 49&#45;&gt;26 -->
-<g id="edge63" class="edge">
-<title>49&#45;&gt;26</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1483.421,-359.8314C1492.1529,-351.219 1502.7317,-340.7851 1512.2423,-331.4048"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1514.923,-333.6769 1519.5849,-324.1628 1510.0075,-328.6931 1514.923,-333.6769"/>
-</g>
-<!-- 49&#45;&gt;28 -->
-<g id="edge65" class="edge">
-<title>49&#45;&gt;28</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1530.3489,-362.0103C1533.2712,-361.325 1536.1652,-360.652 1539,-360 1606.9559,-344.369 1685.6371,-327.5125 1736.0669,-316.8669"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1737.0116,-320.2447 1746.0747,-314.7575 1735.5678,-313.3952 1737.0116,-320.2447"/>
-</g>
-<!-- 60 -->
-<g id="node61" class="node">
-<title>60</title>
-<path fill="none" stroke="#88d856" stroke-width="2" d="M1640,-324C1640,-324 1610,-324 1610,-324 1604,-324 1598,-318 1598,-312 1598,-312 1598,-300 1598,-300 1598,-294 1604,-288 1610,-288 1610,-288 1640,-288 1640,-288 1646,-288 1652,-294 1652,-300 1652,-300 1652,-312 1652,-312 1652,-318 1646,-324 1640,-324"/>
-<text text-anchor="middle" x="1625" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M414.7082,-359.9243C441.7759,-350.0815 475.4439,-337.8386 503.8549,-327.5073"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="505.0695,-330.7899 513.2714,-324.0831 502.6773,-324.2114 505.0695,-330.7899"/>
 </g>
-<!-- 49&#45;&gt;60 -->
-<g id="edge107" class="edge">
-<title>49&#45;&gt;60</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1508.004,-359.9355C1529.9206,-350.5777 1557.1387,-338.7269 1588.8769,-323.9605"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1590.3725,-327.125 1597.948,-319.718 1587.4069,-320.7842 1590.3725,-327.125"/>
+<!-- 49&#45;&gt;38 -->
+<g id="edge70" class="edge">
+<title>49&#45;&gt;38</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M479.389,-724.9656C480.9936,-716.427 482.9468,-706.0333 484.7379,-696.502"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="488.1865,-697.1009 486.5937,-686.6265 481.3069,-695.8081 488.1865,-697.1009"/>
 </g>
-<!-- 50&#45;&gt;29 -->
-<g id="edge66" class="edge">
-<title>50&#45;&gt;29</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1906.1505,-359.8314C1929.4718,-350.0119 1958.4169,-337.8245 1982.865,-327.5305"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1984.4814,-330.6476 1992.3396,-323.5412 1981.765,-324.1961 1984.4814,-330.6476"/>
+<!-- 50 -->
+<g id="node51" class="node">
+<title>50</title>
+<path fill="none" stroke="#97d856" stroke-width="2" d="M803,-468C803,-468 715,-468 715,-468 709,-468 703,-462 703,-456 703,-456 703,-444 703,-444 703,-438 709,-432 715,-432 715,-432 803,-432 803,-432 809,-432 815,-438 815,-444 815,-444 815,-456 815,-456 815,-462 809,-468 803,-468"/>
+<text text-anchor="middle" x="759" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">calculate_TIN_scores</text>
 </g>
-<!-- 50&#45;&gt;31 -->
-<g id="edge68" class="edge">
-<title>50&#45;&gt;31</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1928.3576,-362.0475C1931.2775,-361.3521 1934.1687,-360.6669 1937,-360 2000.8505,-344.9611 2074.541,-328.2761 2122.5806,-317.4887"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2123.4384,-320.8833 2132.4296,-315.279 2121.906,-314.0531 2123.4384,-320.8833"/>
+<!-- 50&#45;&gt;39 -->
+<g id="edge71" class="edge">
+<title>50&#45;&gt;39</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M754.7102,-431.8314C752.892,-424.131 750.7301,-414.9743 748.7095,-406.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="752.0519,-405.3414 746.3476,-396.4133 745.2392,-406.95 752.0519,-405.3414"/>
 </g>
-<!-- 59 -->
-<g id="node60" class="node">
-<title>59</title>
-<path fill="none" stroke="#88d856" stroke-width="2" d="M1890,-324C1890,-324 1860,-324 1860,-324 1854,-324 1848,-318 1848,-312 1848,-312 1848,-300 1848,-300 1848,-294 1854,-288 1860,-288 1860,-288 1890,-288 1890,-288 1896,-288 1902,-294 1902,-300 1902,-300 1902,-312 1902,-312 1902,-318 1896,-324 1890,-324"/>
-<text text-anchor="middle" x="1875" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+<!-- 51 -->
+<g id="node52" class="node">
+<title>51</title>
+<path fill="none" stroke="#97d856" stroke-width="2" d="M940,-468C940,-468 852,-468 852,-468 846,-468 840,-462 840,-456 840,-456 840,-444 840,-444 840,-438 846,-432 852,-432 852,-432 940,-432 940,-432 946,-432 952,-438 952,-444 952,-444 952,-456 952,-456 952,-462 946,-468 940,-468"/>
+<text text-anchor="middle" x="896" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">calculate_TIN_scores</text>
 </g>
-<!-- 50&#45;&gt;59 -->
-<g id="edge105" class="edge">
-<title>50&#45;&gt;59</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1866.0281,-359.8314C1867.3115,-352.131 1868.8376,-342.9743 1870.2639,-334.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1873.7394,-334.8526 1871.9311,-324.4133 1866.8347,-333.7018 1873.7394,-334.8526"/>
+<!-- 51&#45;&gt;39 -->
+<g id="edge72" class="edge">
+<title>51&#45;&gt;39</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M857.1393,-431.8314C836.7258,-422.2874 811.5277,-410.5065 789.914,-400.4013"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="791.1225,-397.1027 780.5813,-396.038 788.1577,-403.4439 791.1225,-397.1027"/>
 </g>
-<!-- 51&#45;&gt;30 -->
-<g id="edge67" class="edge">
-<title>51&#45;&gt;30</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2076.0011,-362.5542C2131.7544,-349.3059 2211.0118,-330.4724 2262.472,-318.2443"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2263.4583,-321.6075 2272.3782,-315.8903 2261.8399,-314.7971 2263.4583,-321.6075"/>
+<!-- 52&#45;&gt;40 -->
+<g id="edge73" class="edge">
+<title>52&#45;&gt;40</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M948.183,-291.9244C951.4459,-290.4898 954.7672,-289.1428 958,-288 1022.2046,-265.3037 1043.3295,-269.4958 1113.5294,-252.0103"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1114.466,-255.3836 1123.2901,-249.5196 1112.7351,-248.6009 1114.466,-255.3836"/>
 </g>
-<!-- 51&#45;&gt;32 -->
-<g id="edge69" class="edge">
-<title>51&#45;&gt;32</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M2076.0749,-369.0321C2147.2046,-359.0065 2264.4549,-341.8255 2365,-324 2377.1267,-321.8501 2390.1406,-319.336 2402.3709,-316.8802"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="2403.3191,-320.2592 2412.4233,-314.8404 2401.9269,-313.399 2403.3191,-320.2592"/>
+<!-- 53&#45;&gt;40 -->
+<g id="edge74" class="edge">
+<title>53&#45;&gt;40</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1418.7988,-291.492C1415.8727,-290.2059 1412.9037,-289.0108 1410,-288 1339.2656,-263.377 1315.708,-270.2554 1238.8527,-252.0692"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1239.2353,-248.5601 1228.691,-249.5937 1237.5785,-255.3612 1239.2353,-248.5601"/>
 </g>
-<!-- 61 -->
-<g id="node62" class="node">
-<title>61</title>
-<path fill="none" stroke="#88d856" stroke-width="2" d="M1962,-324C1962,-324 1932,-324 1932,-324 1926,-324 1920,-318 1920,-312 1920,-312 1920,-300 1920,-300 1920,-294 1926,-288 1932,-288 1932,-288 1962,-288 1962,-288 1968,-288 1974,-294 1974,-300 1974,-300 1974,-312 1974,-312 1974,-318 1968,-324 1962,-324"/>
-<text text-anchor="middle" x="1947" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+<!-- 54&#45;&gt;41 -->
+<g id="edge75" class="edge">
+<title>54&#45;&gt;41</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1221.9912,-287.8314C1234.9216,-278.7927 1250.7222,-267.7476 1264.6383,-258.0198"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1266.8263,-260.7608 1273.0171,-252.1628 1262.8157,-255.0235 1266.8263,-260.7608"/>
 </g>
-<!-- 51&#45;&gt;61 -->
-<g id="edge109" class="edge">
-<title>51&#45;&gt;61</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1994.8501,-359.8314C1987.3283,-351.3694 1978.2435,-341.1489 1970.0196,-331.8971"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1972.627,-329.5621 1963.3673,-324.4133 1967.3951,-334.2127 1972.627,-329.5621"/>
+<!-- 55&#45;&gt;41 -->
+<g id="edge76" class="edge">
+<title>55&#45;&gt;41</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1490.7102,-291.731C1487.8013,-290.3983 1484.8606,-289.127 1482,-288 1476.1188,-285.683 1412.1748,-266.9263 1361.5089,-252.161"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1362.4772,-248.7976 1351.8974,-249.3613 1360.5196,-255.5183 1362.4772,-248.7976"/>
 </g>
-<!-- 52&#45;&gt;36 -->
-<g id="edge70" class="edge">
-<title>52&#45;&gt;36</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M506,-724.9656C506,-716.5178 506,-706.2542 506,-696.8064"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="509.5001,-696.6265 506,-686.6265 502.5001,-696.6265 509.5001,-696.6265"/>
+<!-- 56 -->
+<g id="node57" class="node">
+<title>56</title>
+<path fill="none" stroke="#56d85b" stroke-width="2" d="M666.5,-468C666.5,-468 635.5,-468 635.5,-468 629.5,-468 623.5,-462 623.5,-456 623.5,-456 623.5,-444 623.5,-444 623.5,-438 629.5,-432 635.5,-432 635.5,-432 666.5,-432 666.5,-432 672.5,-432 678.5,-438 678.5,-444 678.5,-444 678.5,-456 678.5,-456 678.5,-462 672.5,-468 666.5,-468"/>
+<text text-anchor="middle" x="651" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">star_rpm</text>
 </g>
-<!-- 53 -->
-<g id="node54" class="node">
-<title>53</title>
-<path fill="none" stroke="#78d856" stroke-width="2" d="M647.5,-396C647.5,-396 546.5,-396 546.5,-396 540.5,-396 534.5,-390 534.5,-384 534.5,-384 534.5,-372 534.5,-372 534.5,-366 540.5,-360 546.5,-360 546.5,-360 647.5,-360 647.5,-360 653.5,-360 659.5,-366 659.5,-372 659.5,-372 659.5,-384 659.5,-384 659.5,-390 653.5,-396 647.5,-396"/>
-<text text-anchor="middle" x="597" y="-381" font-family="sans" font-size="10.00" fill="#000000">extract_transcriptome</text>
-<text text-anchor="middle" x="597" y="-370" font-family="sans" font-size="10.00" fill="#000000">organism: homo_sapiens</text>
+<!-- 56&#45;&gt;42 -->
+<g id="edge77" class="edge">
+<title>56&#45;&gt;42</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M678.5183,-437.7414C683.6136,-435.6837 688.9283,-433.6756 694,-432 740.9876,-416.4759 794.95,-403.1199 837.5518,-393.5743"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="838.5642,-396.9349 847.5693,-391.3529 837.0487,-390.1009 838.5642,-396.9349"/>
 </g>
-<!-- 53&#45;&gt;37 -->
-<g id="edge71" class="edge">
-<title>53&#45;&gt;37</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M551.0737,-359.8314C526.4077,-350.0734 495.8309,-337.977 469.914,-327.7242"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="471.1824,-324.4621 460.596,-324.038 468.6073,-330.9713 471.1824,-324.4621"/>
+<!-- 56&#45;&gt;43 -->
+<g id="edge78" class="edge">
+<title>56&#45;&gt;43</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M678.8332,-437.054C683.8031,-435.1174 688.9937,-433.3283 694,-432 817.7177,-399.1748 856.0627,-418.5426 985.8035,-396.0819"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="986.4871,-399.5153 995.7182,-394.3156 985.2594,-392.6238 986.4871,-399.5153"/>
 </g>
 <!-- 57 -->
 <g id="node58" class="node">
 <title>57</title>
-<path fill="none" stroke="#59d856" stroke-width="2" d="M660.5,-324C660.5,-324 575.5,-324 575.5,-324 569.5,-324 563.5,-318 563.5,-312 563.5,-312 563.5,-300 563.5,-300 563.5,-294 569.5,-288 575.5,-288 575.5,-288 660.5,-288 660.5,-288 666.5,-288 672.5,-294 672.5,-300 672.5,-300 672.5,-312 672.5,-312 672.5,-318 666.5,-324 660.5,-324"/>
-<text text-anchor="middle" x="618" y="-309" font-family="sans" font-size="10.00" fill="#000000">create_index_salmon</text>
-<text text-anchor="middle" x="618" y="-298" font-family="sans" font-size="10.00" fill="#000000">kmer: 31</text>
+<path fill="none" stroke="#56d85b" stroke-width="2" d="M1738.5,-468C1738.5,-468 1707.5,-468 1707.5,-468 1701.5,-468 1695.5,-462 1695.5,-456 1695.5,-456 1695.5,-444 1695.5,-444 1695.5,-438 1701.5,-432 1707.5,-432 1707.5,-432 1738.5,-432 1738.5,-432 1744.5,-432 1750.5,-438 1750.5,-444 1750.5,-444 1750.5,-456 1750.5,-456 1750.5,-462 1744.5,-468 1738.5,-468"/>
+<text text-anchor="middle" x="1723" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">star_rpm</text>
 </g>
-<!-- 53&#45;&gt;57 -->
-<g id="edge102" class="edge">
-<title>53&#45;&gt;57</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M602.2992,-359.8314C604.5698,-352.0463 607.2746,-342.7729 609.794,-334.1347"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="613.1894,-334.9933 612.6295,-324.4133 606.4694,-333.0332 613.1894,-334.9933"/>
-</g>
-<!-- 54&#45;&gt;38 -->
-<g id="edge72" class="edge">
-<title>54&#45;&gt;38</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M699.6311,-724.9656C701.3503,-716.427 703.443,-706.0333 705.362,-696.502"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="708.8076,-697.1206 707.3504,-686.6265 701.9453,-695.7389 708.8076,-697.1206"/>
-</g>
-<!-- 55&#45;&gt;39 -->
-<g id="edge73" class="edge">
-<title>55&#45;&gt;39</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1035.6452,-431.8314C1042.8591,-423.454 1051.557,-413.3531 1059.4605,-404.1749"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1062.2711,-406.2748 1066.1441,-396.4133 1056.9667,-401.7071 1062.2711,-406.2748"/>
-</g>
-<!-- 56&#45;&gt;39 -->
-<g id="edge74" class="edge">
-<title>56&#45;&gt;39</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1132.8407,-431.8314C1124.8489,-423.3694 1115.1962,-413.1489 1106.4584,-403.8971"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1108.8011,-401.2802 1099.3903,-396.4133 1103.712,-406.0866 1108.8011,-401.2802"/>
-</g>
-<!-- 57&#45;&gt;40 -->
-<g id="edge76" class="edge">
-<title>57&#45;&gt;40</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M611.6914,-287.8314C608.9883,-280.0463 605.7684,-270.7729 602.769,-262.1347"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="605.98,-260.7119 599.3935,-252.4133 599.3673,-263.0081 605.98,-260.7119"/>
+<!-- 57&#45;&gt;44 -->
+<g id="edge79" class="edge">
+<title>57&#45;&gt;44</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1727.7945,-431.8314C1729.8489,-424.0463 1732.296,-414.7729 1734.5756,-406.1347"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1737.9735,-406.9753 1737.1409,-396.4133 1731.2052,-405.1892 1737.9735,-406.9753"/>
 </g>
-<!-- 57&#45;&gt;41 -->
-<g id="edge78" class="edge">
-<title>57&#45;&gt;41</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M646.2623,-287.8314C660.4552,-278.7074 677.8282,-267.539 693.0636,-257.7449"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="695.2276,-260.5146 701.7467,-252.1628 691.4422,-254.6263 695.2276,-260.5146"/>
+<!-- 57&#45;&gt;45 -->
+<g id="edge80" class="edge">
+<title>57&#45;&gt;45</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1750.5767,-438.1107C1774.4848,-427.803 1809.7133,-412.6146 1838.7762,-400.0845"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1840.1762,-403.2924 1847.9734,-396.1193 1837.4048,-396.8644 1840.1762,-403.2924"/>
 </g>
 <!-- 58&#45;&gt;46 -->
-<g id="edge85" class="edge">
+<g id="edge81" class="edge">
 <title>58&#45;&gt;46</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1478.2953,-292.2199C1481.538,-290.7323 1484.8239,-289.292 1488,-288 1520.6415,-274.7219 1557.892,-262.1927 1588.5356,-252.5518"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1589.7339,-255.8444 1598.2384,-249.5259 1587.6499,-249.1618 1589.7339,-255.8444"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M624.7587,-287.9243C661.3404,-277.2174 707.6252,-263.6707 744.6517,-252.8337"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="745.7284,-256.1654 754.3426,-249.9973 743.762,-249.4473 745.7284,-256.1654"/>
 </g>
-<!-- 59&#45;&gt;46 -->
+<!-- 59&#45;&gt;50 -->
 <g id="edge86" class="edge">
-<title>59&#45;&gt;46</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1847.7201,-291.7056C1844.8094,-290.3778 1841.8654,-289.1146 1839,-288 1787.5833,-267.9998 1770.7346,-268.0512 1713.6768,-252.1452"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1714.3363,-248.6943 1703.7608,-249.3342 1712.427,-255.429 1714.3363,-248.6943"/>
+<title>59&#45;&gt;50</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M698.7632,-575.972C715.625,-567.5512 732.9077,-555.8107 744,-540 756.5305,-522.1393 759.9196,-497.4452 760.3767,-478.441"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="763.8766,-478.2711 760.3614,-468.2764 756.8766,-478.2817 763.8766,-478.2711"/>
 </g>
-<!-- 60&#45;&gt;47 -->
-<g id="edge87" class="edge">
-<title>60&#45;&gt;47</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1652.3289,-292.7941C1673.3369,-282.6426 1702.8462,-268.3831 1727.5419,-256.4495"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1729.2623,-259.5055 1736.7434,-252.0032 1726.2167,-253.2028 1729.2623,-259.5055"/>
+<!-- 59&#45;&gt;56 -->
+<g id="edge100" class="edge">
+<title>59&#45;&gt;56</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M593.7405,-575.9128C577.4149,-567.642 561.3643,-556.0115 552,-540 543.9225,-526.1886 543.8326,-517.7584 552,-504 565.3196,-481.5625 591.6034,-467.8515 613.7425,-459.8621"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="614.8718,-463.175 623.2433,-456.6814 612.6495,-456.5371 614.8718,-463.175"/>
 </g>
-<!-- 61&#45;&gt;47 -->
-<g id="edge88" class="edge">
-<title>61&#45;&gt;47</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1919.9955,-292.178C1916.9785,-290.7294 1913.9356,-289.3094 1911,-288 1885.5439,-276.6456 1856.9215,-265.168 1832.4471,-255.7317"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1833.5273,-252.3975 1822.9371,-252.0868 1831.0221,-258.9339 1833.5273,-252.3975"/>
+<!-- 60 -->
+<g id="node61" class="node">
+<title>60</title>
+<path fill="none" stroke="#b6d856" stroke-width="2" d="M723,-540C723,-540 573,-540 573,-540 567,-540 561,-534 561,-528 561,-528 561,-516 561,-516 561,-510 567,-504 573,-504 573,-504 723,-504 723,-504 729,-504 735,-510 735,-516 735,-516 735,-528 735,-528 735,-534 729,-540 723,-540"/>
+<text text-anchor="middle" x="648" y="-525" font-family="sans" font-size="10.00" fill="#000000">index_genomic_alignment_samtools</text>
+<text text-anchor="middle" x="648" y="-514" font-family="sans" font-size="10.00" fill="#000000">seqmode: pe</text>
 </g>
-<!-- 62 -->
-<g id="node63" class="node">
-<title>62</title>
-<path fill="none" stroke="#9fd856" stroke-width="2" d="M1155.5,-540C1155.5,-540 1034.5,-540 1034.5,-540 1028.5,-540 1022.5,-534 1022.5,-528 1022.5,-528 1022.5,-516 1022.5,-516 1022.5,-510 1028.5,-504 1034.5,-504 1034.5,-504 1155.5,-504 1155.5,-504 1161.5,-504 1167.5,-510 1167.5,-516 1167.5,-516 1167.5,-528 1167.5,-528 1167.5,-534 1161.5,-540 1155.5,-540"/>
-<text text-anchor="middle" x="1095" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">extract_transcripts_as_bed12</text>
+<!-- 59&#45;&gt;60 -->
+<g id="edge107" class="edge">
+<title>59&#45;&gt;60</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M648,-575.8314C648,-568.131 648,-558.9743 648,-550.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="651.5001,-550.4132 648,-540.4133 644.5001,-550.4133 651.5001,-550.4132"/>
 </g>
-<!-- 62&#45;&gt;55 -->
-<g id="edge98" class="edge">
-<title>62&#45;&gt;55</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1076.0743,-503.8314C1067.0143,-495.1337 1056.0191,-484.5783 1046.1735,-475.1265"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1048.5574,-472.5633 1038.9196,-468.1628 1043.7096,-477.613 1048.5574,-472.5633"/>
+<!-- 60&#45;&gt;50 -->
+<g id="edge87" class="edge">
+<title>60&#45;&gt;50</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M676.01,-503.8314C690.0761,-494.7074 707.294,-483.539 722.3933,-473.7449"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="724.514,-476.5412 730.999,-468.1628 720.7047,-470.6684 724.514,-476.5412"/>
 </g>
-<!-- 62&#45;&gt;56 -->
+<!-- 60&#45;&gt;56 -->
 <g id="edge101" class="edge">
-<title>62&#45;&gt;56</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1108.8788,-503.8314C1115.2136,-495.5386 1122.8384,-485.557 1129.7926,-476.4533"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1132.6452,-478.4847 1135.9343,-468.4133 1127.0825,-474.2353 1132.6452,-478.4847"/>
+<title>60&#45;&gt;56</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M648.757,-503.8314C649.0779,-496.131 649.4594,-486.9743 649.816,-478.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="653.3133,-478.5503 650.2328,-468.4133 646.3194,-478.2589 653.3133,-478.5503"/>
 </g>
-<!-- 63&#45;&gt;58 -->
-<g id="edge104" class="edge">
-<title>63&#45;&gt;58</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1562.3953,-359.9098C1540.649,-349.4383 1512.7706,-335.9967 1488,-324 1487.6986,-323.854 1487.3959,-323.7074 1487.092,-323.5601"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1488.5973,-320.4004 1478.0726,-319.184 1485.5416,-326.6982 1488.5973,-320.4004"/>
+<!-- 61 -->
+<g id="node62" class="node">
+<title>61</title>
+<path fill="none" stroke="#56b1d8" stroke-width="2" d="M924.5,-540C924.5,-540 803.5,-540 803.5,-540 797.5,-540 791.5,-534 791.5,-528 791.5,-528 791.5,-516 791.5,-516 791.5,-510 797.5,-504 803.5,-504 803.5,-504 924.5,-504 924.5,-504 930.5,-504 936.5,-510 936.5,-516 936.5,-516 936.5,-528 936.5,-528 936.5,-534 930.5,-540 924.5,-540"/>
+<text text-anchor="middle" x="864" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">extract_transcripts_as_bed12</text>
 </g>
-<!-- 63&#45;&gt;59 -->
-<g id="edge106" class="edge">
-<title>63&#45;&gt;59</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1652.3057,-369.9324C1699.2181,-361.8642 1769.8102,-347.6631 1838.1559,-323.8804"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1839.5308,-327.1063 1847.7821,-320.4606 1837.1874,-320.5102 1839.5308,-327.1063"/>
+<!-- 61&#45;&gt;50 -->
+<g id="edge88" class="edge">
+<title>61&#45;&gt;50</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M837.5041,-503.8314C824.3226,-494.7927 808.2153,-483.7476 794.0289,-474.0198"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="795.7141,-470.9316 785.4875,-468.1628 791.7554,-476.7047 795.7141,-470.9316"/>
 </g>
-<!-- 63&#45;&gt;60 -->
-<g id="edge108" class="edge">
-<title>63&#45;&gt;60</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1606.3086,-359.8314C1609.0117,-352.0463 1612.2316,-342.7729 1615.231,-334.1347"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1618.6327,-335.0081 1618.6065,-324.4133 1612.02,-332.7119 1618.6327,-335.0081"/>
+<!-- 61&#45;&gt;51 -->
+<g id="edge91" class="edge">
+<title>61&#45;&gt;51</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M872.075,-503.8314C875.6102,-495.8771 879.836,-486.369 883.7456,-477.5723"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="886.9532,-478.9729 887.8163,-468.4133 880.5565,-476.1299 886.9532,-478.9729"/>
 </g>
-<!-- 63&#45;&gt;61 -->
+<!-- 62&#45;&gt;51 -->
+<g id="edge89" class="edge">
+<title>62&#45;&gt;51</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1084.7298,-575.8522C1066.1832,-565.7506 1043.0337,-552.6847 1023,-540 989.769,-518.9591 953.2729,-492.7519 927.966,-474.0541"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="929.9498,-471.1678 919.8335,-468.0193 925.7783,-476.7891 929.9498,-471.1678"/>
+</g>
+<!-- 62&#45;&gt;57 -->
+<g id="edge102" class="edge">
+<title>62&#45;&gt;57</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1167.6613,-582.3986C1284.8862,-554.451 1580.9513,-483.8659 1685.6277,-458.91"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1686.5187,-462.2957 1695.4344,-456.5719 1684.8953,-455.4865 1686.5187,-462.2957"/>
+</g>
+<!-- 63 -->
+<g id="node64" class="node">
+<title>63</title>
+<path fill="none" stroke="#b6d856" stroke-width="2" d="M1194,-540C1194,-540 1044,-540 1044,-540 1038,-540 1032,-534 1032,-528 1032,-528 1032,-516 1032,-516 1032,-510 1038,-504 1044,-504 1044,-504 1194,-504 1194,-504 1200,-504 1206,-510 1206,-516 1206,-516 1206,-528 1206,-528 1206,-534 1200,-540 1194,-540"/>
+<text text-anchor="middle" x="1119" y="-525" font-family="sans" font-size="10.00" fill="#000000">index_genomic_alignment_samtools</text>
+<text text-anchor="middle" x="1119" y="-514" font-family="sans" font-size="10.00" fill="#000000">seqmode: se</text>
+</g>
+<!-- 62&#45;&gt;63 -->
 <g id="edge110" class="edge">
-<title>63&#45;&gt;61</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1652.0265,-373.6397C1712.6331,-367.5383 1815.5165,-354.005 1910.1182,-323.7841"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1911.4145,-327.0428 1919.8337,-320.6111 1909.2412,-320.3887 1911.4145,-327.0428"/>
+<title>62&#45;&gt;63</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1119,-575.8314C1119,-568.131 1119,-558.9743 1119,-550.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1122.5001,-550.4132 1119,-540.4133 1115.5001,-550.4133 1122.5001,-550.4132"/>
+</g>
+<!-- 63&#45;&gt;51 -->
+<g id="edge90" class="edge">
+<title>63&#45;&gt;51</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1063.0155,-503.9243C1032.265,-493.9959 993.9512,-481.6255 961.7795,-471.2382"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="962.5992,-467.825 952.0075,-468.0831 960.4484,-474.4864 962.5992,-467.825"/>
+</g>
+<!-- 63&#45;&gt;57 -->
+<g id="edge103" class="edge">
+<title>63&#45;&gt;57</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1206.1817,-511.6075C1340.0089,-495.6546 1590.5239,-465.7919 1685.3387,-454.4894"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1685.8156,-457.9574 1695.331,-453.2983 1684.987,-451.0067 1685.8156,-457.9574"/>
+</g>
+<!-- 64&#45;&gt;52 -->
+<g id="edge93" class="edge">
+<title>64&#45;&gt;52</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1143.8376,-362.286C1140.8545,-361.4877 1137.8931,-360.7196 1135,-360 1057.0966,-340.622 1034.0307,-349.7637 958,-324 957.8985,-323.9656 957.797,-323.931 957.6953,-323.8962"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="958.7417,-320.5472 948.154,-320.1595 956.189,-327.0652 958.7417,-320.5472"/>
+</g>
+<!-- 64&#45;&gt;53 -->
+<g id="edge95" class="edge">
+<title>64&#45;&gt;53</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1248.4109,-368.0884C1290.1037,-359.4629 1349.8512,-345.4486 1409.231,-323.9084"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1410.5899,-327.1376 1418.7551,-320.3864 1408.1619,-320.5722 1410.5899,-327.1376"/>
+</g>
+<!-- 64&#45;&gt;54 -->
+<g id="edge97" class="edge">
+<title>64&#45;&gt;54</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1196,-359.8314C1196,-352.131 1196,-342.9743 1196,-334.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1199.5001,-334.4132 1196,-324.4133 1192.5001,-334.4133 1199.5001,-334.4132"/>
+</g>
+<!-- 64&#45;&gt;55 -->
+<g id="edge99" class="edge">
+<title>64&#45;&gt;55</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1248.2452,-372.5411C1304.3365,-365.712 1395.8436,-351.7687 1481.2428,-323.7748"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1482.4486,-327.0621 1490.819,-320.567 1480.2252,-320.4246 1482.4486,-327.0621"/>
 </g>
 </g>
 </svg>
diff --git a/images/rule_graph.svg b/images/rule_graph.svg
index a91d830..987f3fa 100644
--- a/images/rule_graph.svg
+++ b/images/rule_graph.svg
@@ -4,538 +4,550 @@
 <!-- Generated by graphviz version 2.40.1 (20161225.0304)
  -->
 <!-- Title: snakemake_dag Pages: 1 -->
-<svg width="1149pt" height="836pt"
- viewBox="0.00 0.00 1149.00 836.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+<svg width="1053pt" height="836pt"
+ viewBox="0.00 0.00 1052.50 836.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
 <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 832)">
 <title>snakemake_dag</title>
-<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-832 1145,-832 1145,4 -4,4"/>
+<polygon fill="#ffffff" stroke="transparent" points="-4,4 -4,-832 1048.5,-832 1048.5,4 -4,4"/>
 <!-- 0 -->
 <g id="node1" class="node">
 <title>0</title>
-<path fill="none" stroke="#d8a456" stroke-width="2" d="M850,-36C850,-36 820,-36 820,-36 814,-36 808,-30 808,-24 808,-24 808,-12 808,-12 808,-6 814,0 820,0 820,0 850,0 850,0 856,0 862,-6 862,-12 862,-12 862,-24 862,-24 862,-30 856,-36 850,-36"/>
-<text text-anchor="middle" x="835" y="-15.5" font-family="sans" font-size="10.00" fill="#000000">finish</text>
+<path fill="none" stroke="#56a2d8" stroke-width="2" d="M779,-36C779,-36 749,-36 749,-36 743,-36 737,-30 737,-24 737,-24 737,-12 737,-12 737,-6 743,0 749,0 749,0 779,0 779,0 785,0 791,-6 791,-12 791,-12 791,-24 791,-24 791,-30 785,-36 779,-36"/>
+<text text-anchor="middle" x="764" y="-15.5" font-family="sans" font-size="10.00" fill="#000000">finish</text>
 </g>
 <!-- 1 -->
 <g id="node2" class="node">
 <title>1</title>
-<path fill="none" stroke="#d88556" stroke-width="2" d="M524,-108C524,-108 470,-108 470,-108 464,-108 458,-102 458,-96 458,-96 458,-84 458,-84 458,-78 464,-72 470,-72 470,-72 524,-72 524,-72 530,-72 536,-78 536,-84 536,-84 536,-96 536,-96 536,-102 530,-108 524,-108"/>
-<text text-anchor="middle" x="497" y="-87.5" font-family="sans" font-size="10.00" fill="#000000">multiqc_report</text>
+<path fill="none" stroke="#56d89a" stroke-width="2" d="M195,-108C195,-108 141,-108 141,-108 135,-108 129,-102 129,-96 129,-96 129,-84 129,-84 129,-78 135,-72 141,-72 141,-72 195,-72 195,-72 201,-72 207,-78 207,-84 207,-84 207,-96 207,-96 207,-102 201,-108 195,-108"/>
+<text text-anchor="middle" x="168" y="-87.5" font-family="sans" font-size="10.00" fill="#000000">multiqc_report</text>
 </g>
 <!-- 1&#45;&gt;0 -->
-<g id="edge1" class="edge">
+<g id="edge4" class="edge">
 <title>1&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M536.1031,-81.6703C601.7824,-67.6795 733.3738,-39.6482 797.7732,-25.93"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="798.8295,-29.2836 807.8808,-23.7769 797.371,-22.4372 798.8295,-29.2836"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M207.1052,-85.2759C315.7675,-72.1489 620.3398,-35.3549 726.7436,-22.5008"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="727.4813,-25.9372 736.9893,-21.263 726.6417,-18.9877 727.4813,-25.9372"/>
 </g>
 <!-- 2 -->
 <g id="node3" class="node">
 <title>2</title>
-<path fill="none" stroke="#56d892" stroke-width="2" d="M1057,-252C1057,-252 997,-252 997,-252 991,-252 985,-246 985,-240 985,-240 985,-228 985,-228 985,-222 991,-216 997,-216 997,-216 1057,-216 1057,-216 1063,-216 1069,-222 1069,-228 1069,-228 1069,-240 1069,-240 1069,-246 1063,-252 1057,-252"/>
-<text text-anchor="middle" x="1027" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
+<path fill="none" stroke="#d6d856" stroke-width="2" d="M737,-252C737,-252 677,-252 677,-252 671,-252 665,-246 665,-240 665,-240 665,-228 665,-228 665,-222 671,-216 677,-216 677,-216 737,-216 737,-216 743,-216 749,-222 749,-228 749,-228 749,-240 749,-240 749,-246 743,-252 737,-252"/>
+<text text-anchor="middle" x="707" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">prepare_bigWig</text>
 </g>
 <!-- 2&#45;&gt;0 -->
-<g id="edge2" class="edge">
+<g id="edge3" class="edge">
 <title>2&#45;&gt;0</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1010.9604,-215.9555C976.937,-177.6791 897.4281,-88.2316 858.0038,-43.8793"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="860.3886,-41.2939 851.1289,-36.1451 855.1567,-45.9445 860.3886,-41.2939"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M711.7617,-215.9555C721.7158,-178.235 744.7839,-90.8188 756.6534,-45.8399"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="760.0443,-46.7071 759.2117,-36.1451 753.2759,-44.921 760.0443,-46.7071"/>
 </g>
 <!-- 3 -->
 <g id="node4" class="node">
 <title>3</title>
-<path fill="none" stroke="#56d863" stroke-width="2" d="M1129,-468C1129,-468 1099,-468 1099,-468 1093,-468 1087,-462 1087,-456 1087,-456 1087,-444 1087,-444 1087,-438 1093,-432 1099,-432 1099,-432 1129,-432 1129,-432 1135,-432 1141,-438 1141,-444 1141,-444 1141,-456 1141,-456 1141,-462 1135,-468 1129,-468"/>
-<text text-anchor="middle" x="1114" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
+<path fill="none" stroke="#d89556" stroke-width="2" d="M859,-468C859,-468 747,-468 747,-468 741,-468 735,-462 735,-456 735,-456 735,-444 735,-444 735,-438 741,-432 747,-432 747,-432 859,-432 859,-432 865,-432 871,-438 871,-444 871,-444 871,-456 871,-456 871,-462 865,-468 859,-468"/>
+<text text-anchor="middle" x="803" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_genes</text>
 </g>
-<!-- 3&#45;&gt;1 -->
-<g id="edge5" class="edge">
-<title>3&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M1110.4776,-431.8955C1105.4982,-404.6824 1097,-351.5642 1097,-306 1097,-306 1097,-306 1097,-234 1097,-121.1299 690.4538,-96.5069 546.659,-91.3279"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="546.4819,-87.8198 536.3677,-90.9745 546.2416,-94.8157 546.4819,-87.8198"/>
+<!-- 3&#45;&gt;0 -->
+<g id="edge2" class="edge">
+<title>3&#45;&gt;0</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M800.3064,-431.862C796.4986,-404.6061 790,-351.434 790,-306 790,-306 790,-306 790,-162 790,-121.2738 779.804,-75.0849 772.182,-46.2458"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="775.5185,-45.1771 769.5139,-36.4481 768.7644,-47.0164 775.5185,-45.1771"/>
 </g>
 <!-- 4 -->
 <g id="node5" class="node">
 <title>4</title>
-<path fill="none" stroke="#56d882" stroke-width="2" d="M322,-612C322,-612 180,-612 180,-612 174,-612 168,-606 168,-600 168,-600 168,-588 168,-588 168,-582 174,-576 180,-576 180,-576 322,-576 322,-576 328,-576 334,-582 334,-588 334,-588 334,-600 334,-600 334,-606 328,-612 322,-612"/>
-<text text-anchor="middle" x="251" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">pe_genome_quantification_kallisto</text>
+<path fill="none" stroke="#d8cb56" stroke-width="2" d="M1032.5,-468C1032.5,-468 901.5,-468 901.5,-468 895.5,-468 889.5,-462 889.5,-456 889.5,-456 889.5,-444 889.5,-444 889.5,-438 895.5,-432 901.5,-432 901.5,-432 1032.5,-432 1032.5,-432 1038.5,-432 1044.5,-438 1044.5,-444 1044.5,-444 1044.5,-456 1044.5,-456 1044.5,-462 1038.5,-468 1032.5,-468"/>
+<text text-anchor="middle" x="967" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_transcripts</text>
 </g>
-<!-- 4&#45;&gt;1 -->
-<g id="edge9" class="edge">
-<title>4&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M209.46,-575.9345C193.9343,-567.2099 177.5318,-555.2708 167,-540 143.7899,-506.3459 148,-490.8816 148,-450 148,-450 148,-450 148,-234 148,-169.8895 351.7892,-119.674 447.9171,-99.5534"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="448.8959,-102.9252 457.9811,-97.4746 447.4798,-96.0699 448.8959,-102.9252"/>
+<!-- 4&#45;&gt;0 -->
+<g id="edge1" class="edge">
+<title>4&#45;&gt;0</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M951.4647,-431.8219C930.8422,-405.7696 897,-355.4792 897,-306 897,-306 897,-306 897,-162 897,-104.8167 839.7017,-60.6623 800.3222,-37.0688"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="801.6412,-33.7875 791.2355,-31.7947 798.1273,-39.8417 801.6412,-33.7875"/>
 </g>
 <!-- 5 -->
 <g id="node6" class="node">
 <title>5</title>
-<path fill="none" stroke="#afd856" stroke-width="2" d="M138,-612C138,-612 12,-612 12,-612 6,-612 0,-606 0,-600 0,-600 0,-588 0,-588 0,-582 6,-576 12,-576 12,-576 138,-576 138,-576 144,-576 150,-582 150,-588 150,-588 150,-600 150,-600 150,-606 144,-612 138,-612"/>
-<text text-anchor="middle" x="75" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">genome_quantification_kallisto</text>
+<path fill="none" stroke="#56d87b" stroke-width="2" d="M42,-396C42,-396 12,-396 12,-396 6,-396 0,-390 0,-384 0,-384 0,-372 0,-372 0,-366 6,-360 12,-360 12,-360 42,-360 42,-360 48,-360 54,-366 54,-372 54,-372 54,-384 54,-384 54,-390 48,-396 42,-396"/>
+<text text-anchor="middle" x="27" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">fastqc</text>
 </g>
 <!-- 5&#45;&gt;1 -->
-<g id="edge8" class="edge">
+<g id="edge5" class="edge">
 <title>5&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M78.7296,-575.9053C84.0019,-548.7046 93,-495.6021 93,-450 93,-450 93,-450 93,-234 93,-173.5425 140.5601,-170.2947 195,-144 238.8594,-122.8157 374.1983,-104.3382 447.9158,-95.5129"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="448.3733,-98.9832 457.8927,-94.3323 447.5507,-92.0317 448.3733,-98.9832"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M25.5131,-359.888C23.0086,-317.7471 22.3093,-211.5803 71,-144 82.9931,-127.3542 101.7831,-115.215 119.6442,-106.7126"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="121.158,-109.8698 128.8589,-102.5933 118.3011,-103.4792 121.158,-109.8698"/>
 </g>
 <!-- 6 -->
 <g id="node7" class="node">
 <title>6</title>
-<path fill="none" stroke="#d8d356" stroke-width="2" d="M541.5,-252C541.5,-252 476.5,-252 476.5,-252 470.5,-252 464.5,-246 464.5,-240 464.5,-240 464.5,-228 464.5,-228 464.5,-222 470.5,-216 476.5,-216 476.5,-216 541.5,-216 541.5,-216 547.5,-216 553.5,-222 553.5,-228 553.5,-228 553.5,-240 553.5,-240 553.5,-246 547.5,-252 541.5,-252"/>
-<text text-anchor="middle" x="509" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">plot_TIN_scores</text>
+<path fill="none" stroke="#97d856" stroke-width="2" d="M203,-612C203,-612 61,-612 61,-612 55,-612 49,-606 49,-600 49,-600 49,-588 49,-588 49,-582 55,-576 61,-576 61,-576 203,-576 203,-576 209,-576 215,-582 215,-588 215,-588 215,-600 215,-600 215,-606 209,-612 203,-612"/>
+<text text-anchor="middle" x="132" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">pe_genome_quantification_kallisto</text>
 </g>
 <!-- 6&#45;&gt;1 -->
-<g id="edge4" class="edge">
+<g id="edge7" class="edge">
 <title>6&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M494.7641,-215.6423C487.9461,-205.6872 480.5138,-192.8222 477,-180 471.2889,-159.1601 477.1631,-135.2715 483.9919,-117.3451"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="487.2454,-118.636 487.8163,-108.0566 480.7726,-115.9709 487.2454,-118.636"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M122.0325,-575.9772C108.2361,-549.2973 85,-497.3363 85,-450 85,-450 85,-450 85,-234 85,-192.6022 87.5347,-179.398 109,-144 115.5811,-133.1472 124.9844,-123.1601 134.3555,-114.8041"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="136.7958,-117.3238 142.1571,-108.1855 132.2673,-111.9859 136.7958,-117.3238"/>
 </g>
 <!-- 7 -->
 <g id="node8" class="node">
 <title>7</title>
-<path fill="none" stroke="#d86656" stroke-width="2" d="M300,-540C300,-540 188,-540 188,-540 182,-540 176,-534 176,-528 176,-528 176,-516 176,-516 176,-510 182,-504 188,-504 188,-504 300,-504 300,-504 306,-504 312,-510 312,-516 312,-516 312,-528 312,-528 312,-534 306,-540 300,-540"/>
-<text text-anchor="middle" x="244" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_genes</text>
+<path fill="none" stroke="#b6d856" stroke-width="2" d="M371,-612C371,-612 245,-612 245,-612 239,-612 233,-606 233,-600 233,-600 233,-588 233,-588 233,-582 239,-576 245,-576 245,-576 371,-576 371,-576 377,-576 383,-582 383,-588 383,-588 383,-600 383,-600 383,-606 377,-612 371,-612"/>
+<text text-anchor="middle" x="308" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">genome_quantification_kallisto</text>
 </g>
 <!-- 7&#45;&gt;1 -->
 <g id="edge6" class="edge">
 <title>7&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M257.9817,-503.5693C276.5421,-477.217 307,-426.5724 307,-378 307,-378 307,-378 307,-234 307,-163.3284 391.525,-122.8695 447.8213,-103.76"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="449.218,-106.9856 457.6319,-100.5469 447.0392,-100.3333 449.218,-106.9856"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M233.7796,-575.8971C211.3882,-567.7205 188.0007,-556.15 170,-540 136.4112,-509.8646 123,-495.1259 123,-450 123,-450 123,-450 123,-234 123,-191.8263 140.802,-145.738 154.0122,-117.3433"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="157.2895,-118.6034 158.4567,-108.0731 150.9774,-115.5772 157.2895,-118.6034"/>
 </g>
 <!-- 8 -->
 <g id="node9" class="node">
 <title>8</title>
-<path fill="none" stroke="#56d0d8" stroke-width="2" d="M473.5,-540C473.5,-540 342.5,-540 342.5,-540 336.5,-540 330.5,-534 330.5,-528 330.5,-528 330.5,-516 330.5,-516 330.5,-510 336.5,-504 342.5,-504 342.5,-504 473.5,-504 473.5,-504 479.5,-504 485.5,-510 485.5,-516 485.5,-516 485.5,-528 485.5,-528 485.5,-534 479.5,-540 473.5,-540"/>
-<text text-anchor="middle" x="408" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">salmon_quantmerge_transcripts</text>
+<path fill="none" stroke="#56d8c9" stroke-width="2" d="M250.5,-252C250.5,-252 185.5,-252 185.5,-252 179.5,-252 173.5,-246 173.5,-240 173.5,-240 173.5,-228 173.5,-228 173.5,-222 179.5,-216 185.5,-216 185.5,-216 250.5,-216 250.5,-216 256.5,-216 262.5,-222 262.5,-228 262.5,-228 262.5,-240 262.5,-240 262.5,-246 256.5,-252 250.5,-252"/>
+<text text-anchor="middle" x="218" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">plot_TIN_scores</text>
 </g>
 <!-- 8&#45;&gt;1 -->
-<g id="edge3" class="edge">
+<g id="edge8" class="edge">
 <title>8&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M409.2432,-503.8247C411.0006,-476.5213 414,-423.2893 414,-378 414,-378 414,-378 414,-234 414,-187.5145 446.8683,-142.51 471.2376,-115.5311"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="473.9167,-117.7898 478.166,-108.0844 468.7918,-113.0215 473.9167,-117.7898"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M205.586,-215.7235C199.2022,-205.5841 191.7796,-192.5233 187,-180 179.3363,-159.9202 174.4793,-136.0784 171.596,-117.98"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="175.0536,-117.4356 170.1201,-108.0595 168.1298,-118.4657 175.0536,-117.4356"/>
 </g>
 <!-- 9 -->
 <g id="node10" class="node">
 <title>9</title>
-<path fill="none" stroke="#5663d8" stroke-width="2" d="M883.5,-468C883.5,-468 852.5,-468 852.5,-468 846.5,-468 840.5,-462 840.5,-456 840.5,-456 840.5,-444 840.5,-444 840.5,-438 846.5,-432 852.5,-432 852.5,-432 883.5,-432 883.5,-432 889.5,-432 895.5,-438 895.5,-444 895.5,-444 895.5,-456 895.5,-456 895.5,-462 889.5,-468 883.5,-468"/>
-<text text-anchor="middle" x="868" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">star_rpm</text>
+<path fill="none" stroke="#88d856" stroke-width="2" d="M285.5,-180C285.5,-180 208.5,-180 208.5,-180 202.5,-180 196.5,-174 196.5,-168 196.5,-168 196.5,-156 196.5,-156 196.5,-150 202.5,-144 208.5,-144 208.5,-144 285.5,-144 285.5,-144 291.5,-144 297.5,-150 297.5,-156 297.5,-156 297.5,-168 297.5,-168 297.5,-174 291.5,-180 285.5,-180"/>
+<text text-anchor="middle" x="247" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">alfa_concat_results</text>
 </g>
 <!-- 9&#45;&gt;1 -->
-<g id="edge11" class="edge">
+<g id="edge9" class="edge">
 <title>9&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M840.4301,-441.935C818.01,-433.9288 787.3457,-419.4135 770,-396 745.664,-363.1508 751,-346.8816 751,-306 751,-306 751,-306 751,-234 751,-193.1184 760.6491,-173.164 732,-144 706.5561,-118.0989 607.6963,-102.5054 546.5956,-95.1428"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="546.7314,-91.6349 536.392,-93.9473 545.9167,-98.5873 546.7314,-91.6349"/>
-</g>
-<!-- 25 -->
-<g id="node26" class="node">
-<title>25</title>
-<path fill="none" stroke="#88d856" stroke-width="2" d="M1019,-396C1019,-396 913,-396 913,-396 907,-396 901,-390 901,-384 901,-384 901,-372 901,-372 901,-366 907,-360 913,-360 913,-360 1019,-360 1019,-360 1025,-360 1031,-366 1031,-372 1031,-372 1031,-384 1031,-384 1031,-390 1025,-396 1019,-396"/>
-<text text-anchor="middle" x="966" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
-</g>
-<!-- 9&#45;&gt;25 -->
-<g id="edge44" class="edge">
-<title>9&#45;&gt;25</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M892.7295,-431.8314C904.9162,-422.8779 919.7823,-411.9558 932.9312,-402.2955"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="935.2918,-404.9042 941.2784,-396.1628 931.1473,-399.263 935.2918,-404.9042"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M227.065,-143.8314C217.5217,-135.1337 205.9401,-124.5783 195.5694,-115.1265"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="197.6772,-112.3121 187.9287,-108.1628 192.962,-117.4857 197.6772,-112.3121"/>
 </g>
 <!-- 10 -->
 <g id="node11" class="node">
 <title>10</title>
-<path fill="none" stroke="#d89556" stroke-width="2" d="M575.5,-180C575.5,-180 498.5,-180 498.5,-180 492.5,-180 486.5,-174 486.5,-168 486.5,-168 486.5,-156 486.5,-156 486.5,-150 492.5,-144 498.5,-144 498.5,-144 575.5,-144 575.5,-144 581.5,-144 587.5,-150 587.5,-156 587.5,-156 587.5,-168 587.5,-168 587.5,-174 581.5,-180 575.5,-180"/>
-<text text-anchor="middle" x="537" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">alfa_concat_results</text>
+<path fill="none" stroke="#56c1d8" stroke-width="2" d="M420.5,-180C420.5,-180 327.5,-180 327.5,-180 321.5,-180 315.5,-174 315.5,-168 315.5,-168 315.5,-156 315.5,-156 315.5,-150 321.5,-144 327.5,-144 327.5,-144 420.5,-144 420.5,-144 426.5,-144 432.5,-150 432.5,-156 432.5,-156 432.5,-168 432.5,-168 432.5,-174 426.5,-180 420.5,-180"/>
+<text text-anchor="middle" x="374" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">prepare_multiqc_config</text>
 </g>
 <!-- 10&#45;&gt;1 -->
 <g id="edge10" class="edge">
 <title>10&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M526.9063,-143.8314C522.4403,-135.7925 517.0925,-126.1666 512.1621,-117.2918"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="515.1456,-115.4551 507.2296,-108.4133 509.0265,-118.8546 515.1456,-115.4551"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M322.2834,-143.9243C289.8808,-132.5991 248.3873,-118.0965 216.594,-106.9843"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="217.6541,-103.6473 207.0593,-103.6518 215.3445,-110.2553 217.6541,-103.6473"/>
 </g>
 <!-- 11 -->
 <g id="node12" class="node">
 <title>11</title>
-<path fill="none" stroke="#5682d8" stroke-width="2" d="M710.5,-180C710.5,-180 617.5,-180 617.5,-180 611.5,-180 605.5,-174 605.5,-168 605.5,-168 605.5,-156 605.5,-156 605.5,-150 611.5,-144 617.5,-144 617.5,-144 710.5,-144 710.5,-144 716.5,-144 722.5,-150 722.5,-156 722.5,-156 722.5,-168 722.5,-168 722.5,-174 716.5,-180 710.5,-180"/>
-<text text-anchor="middle" x="664" y="-159.5" font-family="sans" font-size="10.00" fill="#000000">prepare_multiqc_config</text>
+<path fill="none" stroke="#d85656" stroke-width="2" d="M637.5,-324C637.5,-324 578.5,-324 578.5,-324 572.5,-324 566.5,-318 566.5,-312 566.5,-312 566.5,-300 566.5,-300 566.5,-294 572.5,-288 578.5,-288 578.5,-288 637.5,-288 637.5,-288 643.5,-288 649.5,-294 649.5,-300 649.5,-300 649.5,-312 649.5,-312 649.5,-318 643.5,-324 637.5,-324"/>
+<text text-anchor="middle" x="608" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
 </g>
-<!-- 11&#45;&gt;1 -->
-<g id="edge7" class="edge">
-<title>11&#45;&gt;1</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M621.8588,-143.8314C598.6566,-133.828 569.7544,-121.3672 545.6022,-110.9542"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="546.8282,-107.6714 536.2596,-106.9263 544.0568,-114.0995 546.8282,-107.6714"/>
+<!-- 11&#45;&gt;2 -->
+<g id="edge12" class="edge">
+<title>11&#45;&gt;2</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M632.9819,-287.8314C645.2928,-278.8779 660.3107,-267.9558 673.5937,-258.2955"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="675.9973,-260.8752 682.0261,-252.1628 671.8801,-255.214 675.9973,-260.8752"/>
 </g>
 <!-- 12 -->
 <g id="node13" class="node">
 <title>12</title>
-<path fill="none" stroke="#78d856" stroke-width="2" d="M1007.5,-324C1007.5,-324 948.5,-324 948.5,-324 942.5,-324 936.5,-318 936.5,-312 936.5,-312 936.5,-300 936.5,-300 936.5,-294 942.5,-288 948.5,-288 948.5,-288 1007.5,-288 1007.5,-288 1013.5,-288 1019.5,-294 1019.5,-300 1019.5,-300 1019.5,-312 1019.5,-312 1019.5,-318 1013.5,-324 1007.5,-324"/>
-<text text-anchor="middle" x="978" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">sort_bed_4_big</text>
+<path fill="none" stroke="#78d856" stroke-width="2" d="M738,-684C738,-684 668,-684 668,-684 662,-684 656,-678 656,-672 656,-672 656,-660 656,-660 656,-654 662,-648 668,-648 668,-648 738,-648 738,-648 744,-648 750,-654 750,-660 750,-660 750,-672 750,-672 750,-678 744,-684 738,-684"/>
+<text text-anchor="middle" x="703" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">create_index_star</text>
 </g>
 <!-- 12&#45;&gt;2 -->
-<g id="edge13" class="edge">
+<g id="edge11" class="edge">
 <title>12&#45;&gt;2</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M990.3648,-287.8314C995.9509,-279.6232 1002.663,-269.7606 1008.8072,-260.7323"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1011.736,-262.6496 1014.4687,-252.4133 1005.949,-258.7112 1011.736,-262.6496"/>
-</g>
-<!-- 13 -->
-<g id="node14" class="node">
-<title>13</title>
-<path fill="none" stroke="#56d8c1" stroke-width="2" d="M983,-684C983,-684 913,-684 913,-684 907,-684 901,-678 901,-672 901,-672 901,-660 901,-660 901,-654 907,-648 913,-648 913,-648 983,-648 983,-648 989,-648 995,-654 995,-660 995,-660 995,-672 995,-672 995,-678 989,-684 983,-684"/>
-<text text-anchor="middle" x="948" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">create_index_star</text>
-</g>
-<!-- 13&#45;&gt;2 -->
-<g id="edge12" class="edge">
-<title>13&#45;&gt;2</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M975.1537,-647.8367C1008.015,-623.4409 1059,-576.7657 1059,-522 1059,-522 1059,-522 1059,-378 1059,-336.9442 1046.4511,-290.8385 1037.0701,-262.1076"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1040.2932,-260.7116 1033.7864,-252.3503 1033.6589,-262.9443 1040.2932,-260.7116"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M703.8288,-647.8191C705.0004,-620.5085 707,-567.2675 707,-522 707,-522 707,-522 707,-378 707,-337.876 707,-291.4631 707,-262.4177"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="710.5001,-262.1853 707,-252.1854 703.5001,-262.1854 710.5001,-262.1853"/>
 </g>
-<!-- 21 -->
-<g id="node22" class="node">
-<title>21</title>
-<path fill="none" stroke="#bed856" stroke-width="2" d="M916.5,-612C916.5,-612 827.5,-612 827.5,-612 821.5,-612 815.5,-606 815.5,-600 815.5,-600 815.5,-588 815.5,-588 815.5,-582 821.5,-576 827.5,-576 827.5,-576 916.5,-576 916.5,-576 922.5,-576 928.5,-582 928.5,-588 928.5,-588 928.5,-600 928.5,-600 928.5,-606 922.5,-612 916.5,-612"/>
-<text text-anchor="middle" x="872" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">pe_map_genome_star</text>
+<!-- 22 -->
+<g id="node23" class="node">
+<title>22</title>
+<path fill="none" stroke="#56d8a9" stroke-width="2" d="M908.5,-612C908.5,-612 823.5,-612 823.5,-612 817.5,-612 811.5,-606 811.5,-600 811.5,-600 811.5,-588 811.5,-588 811.5,-582 817.5,-576 823.5,-576 823.5,-576 908.5,-576 908.5,-576 914.5,-576 920.5,-582 920.5,-588 920.5,-588 920.5,-600 920.5,-600 920.5,-606 914.5,-612 908.5,-612"/>
+<text text-anchor="middle" x="866" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">create_index_salmon</text>
 </g>
-<!-- 13&#45;&gt;21 -->
-<g id="edge37" class="edge">
-<title>13&#45;&gt;21</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M928.822,-647.8314C919.6412,-639.1337 908.4994,-628.5783 898.5224,-619.1265"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="900.8385,-616.4995 891.1719,-612.1628 896.0243,-621.5811 900.8385,-616.4995"/>
+<!-- 12&#45;&gt;22 -->
+<g id="edge36" class="edge">
+<title>12&#45;&gt;22</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M744.1318,-647.8314C765.9321,-638.2018 792.8878,-626.295 815.9004,-616.1299"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="817.4308,-619.2802 825.164,-612.038 814.6024,-612.877 817.4308,-619.2802"/>
 </g>
-<!-- 23 -->
-<g id="node24" class="node">
-<title>23</title>
-<path fill="none" stroke="#5692d8" stroke-width="2" d="M785.5,-612C785.5,-612 712.5,-612 712.5,-612 706.5,-612 700.5,-606 700.5,-600 700.5,-600 700.5,-588 700.5,-588 700.5,-582 706.5,-576 712.5,-576 712.5,-576 785.5,-576 785.5,-576 791.5,-576 797.5,-582 797.5,-588 797.5,-588 797.5,-600 797.5,-600 797.5,-606 791.5,-612 785.5,-612"/>
-<text text-anchor="middle" x="749" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">map_genome_star</text>
+<!-- 30 -->
+<g id="node31" class="node">
+<title>30</title>
+<path fill="none" stroke="#56d86b" stroke-width="2" d="M502.5,-612C502.5,-612 413.5,-612 413.5,-612 407.5,-612 401.5,-606 401.5,-600 401.5,-600 401.5,-588 401.5,-588 401.5,-582 407.5,-576 413.5,-576 413.5,-576 502.5,-576 502.5,-576 508.5,-576 514.5,-582 514.5,-588 514.5,-588 514.5,-600 514.5,-600 514.5,-606 508.5,-612 502.5,-612"/>
+<text text-anchor="middle" x="458" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">pe_map_genome_star</text>
 </g>
-<!-- 13&#45;&gt;23 -->
-<g id="edge41" class="edge">
-<title>13&#45;&gt;23</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M900.8398,-648.937C872.734,-638.7681 836.8393,-625.781 807.0069,-614.9874"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="808.1459,-611.6775 797.5516,-611.5664 805.7642,-618.2599 808.1459,-611.6775"/>
+<!-- 12&#45;&gt;30 -->
+<g id="edge49" class="edge">
+<title>12&#45;&gt;30</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M655.9812,-650.7638C652.9452,-649.8181 649.9316,-648.8897 647,-648 606.5552,-635.7257 561.0059,-622.6883 524.7584,-612.4994"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="525.367,-609.0351 514.7933,-609.7041 523.4764,-615.7749 525.367,-609.0351"/>
 </g>
 <!-- 33 -->
 <g id="node34" class="node">
 <title>33</title>
-<path fill="none" stroke="#68d856" stroke-width="2" d="M871,-396C871,-396 791,-396 791,-396 785,-396 779,-390 779,-384 779,-384 779,-372 779,-372 779,-366 785,-360 791,-360 791,-360 871,-360 871,-360 877,-360 883,-366 883,-372 883,-372 883,-384 883,-384 883,-390 877,-396 871,-396"/>
-<text text-anchor="middle" x="831" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">generate_alfa_index</text>
+<path fill="none" stroke="#56d8b9" stroke-width="2" d="M617.5,-612C617.5,-612 544.5,-612 544.5,-612 538.5,-612 532.5,-606 532.5,-600 532.5,-600 532.5,-588 532.5,-588 532.5,-582 538.5,-576 544.5,-576 544.5,-576 617.5,-576 617.5,-576 623.5,-576 629.5,-582 629.5,-588 629.5,-588 629.5,-600 629.5,-600 629.5,-606 623.5,-612 617.5,-612"/>
+<text text-anchor="middle" x="581" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">map_genome_star</text>
 </g>
-<!-- 13&#45;&gt;33 -->
-<g id="edge54" class="edge">
-<title>13&#45;&gt;33</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M958.5219,-647.7835C974.8242,-617.0198 1002.2081,-553.3062 981,-504 960.9306,-457.3413 913.2283,-422.2406 876.9639,-401.0917"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="878.4396,-397.905 868.0144,-396.0169 874.9868,-403.9942 878.4396,-397.905"/>
+<!-- 12&#45;&gt;33 -->
+<g id="edge53" class="edge">
+<title>12&#45;&gt;33</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M672.2142,-647.8314C656.6097,-638.6221 637.476,-627.3301 620.7697,-617.4706"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="622.1669,-614.2312 611.7759,-612.1628 618.6091,-620.2596 622.1669,-614.2312"/>
+</g>
+<!-- 34 -->
+<g id="node35" class="node">
+<title>34</title>
+<path fill="none" stroke="#d8bc56" stroke-width="2" d="M667,-396C667,-396 587,-396 587,-396 581,-396 575,-390 575,-384 575,-384 575,-372 575,-372 575,-366 581,-360 587,-360 587,-360 667,-360 667,-360 673,-360 679,-366 679,-372 679,-372 679,-384 679,-384 679,-390 673,-396 667,-396"/>
+<text text-anchor="middle" x="627" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">generate_alfa_index</text>
+</g>
+<!-- 12&#45;&gt;34 -->
+<g id="edge55" class="edge">
+<title>12&#45;&gt;34</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M698.2459,-647.9843C685.3704,-599.1929 649.7572,-464.2377 634.3078,-405.6927"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="637.6881,-404.7848 631.7523,-396.0089 630.9198,-406.571 637.6881,-404.7848"/>
+</g>
+<!-- 13 -->
+<g id="node14" class="node">
+<title>13</title>
+<path fill="none" stroke="#5673d8" stroke-width="2" d="M852.5,-540C852.5,-540 749.5,-540 749.5,-540 743.5,-540 737.5,-534 737.5,-528 737.5,-528 737.5,-516 737.5,-516 737.5,-510 743.5,-504 749.5,-504 749.5,-504 852.5,-504 852.5,-504 858.5,-504 864.5,-510 864.5,-516 864.5,-516 864.5,-528 864.5,-528 864.5,-534 858.5,-540 852.5,-540"/>
+<text text-anchor="middle" x="801" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">pe_quantification_salmon</text>
+</g>
+<!-- 13&#45;&gt;3 -->
+<g id="edge13" class="edge">
+<title>13&#45;&gt;3</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M801.5047,-503.8314C801.7186,-496.131 801.9729,-486.9743 802.2106,-478.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="805.7094,-478.5066 802.4885,-468.4133 798.7121,-478.3122 805.7094,-478.5066"/>
+</g>
+<!-- 13&#45;&gt;4 -->
+<g id="edge15" class="edge">
+<title>13&#45;&gt;4</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M842.8888,-503.8314C865.0903,-494.2018 892.5422,-482.295 915.9784,-472.1299"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="917.6309,-475.2282 925.4124,-468.038 914.8455,-468.8062 917.6309,-475.2282"/>
 </g>
 <!-- 14 -->
 <g id="node15" class="node">
 <title>14</title>
-<path fill="none" stroke="#56d8d0" stroke-width="2" d="M685,-828C685,-828 655,-828 655,-828 649,-828 643,-822 643,-816 643,-816 643,-804 643,-804 643,-798 649,-792 655,-792 655,-792 685,-792 685,-792 691,-792 697,-798 697,-804 697,-804 697,-816 697,-816 697,-822 691,-828 685,-828"/>
-<text text-anchor="middle" x="670" y="-807.5" font-family="sans" font-size="10.00" fill="#000000">start</text>
+<path fill="none" stroke="#56d8d8" stroke-width="2" d="M981.5,-540C981.5,-540 894.5,-540 894.5,-540 888.5,-540 882.5,-534 882.5,-528 882.5,-528 882.5,-516 882.5,-516 882.5,-510 888.5,-504 894.5,-504 894.5,-504 981.5,-504 981.5,-504 987.5,-504 993.5,-510 993.5,-516 993.5,-516 993.5,-528 993.5,-528 993.5,-534 987.5,-540 981.5,-540"/>
+<text text-anchor="middle" x="938" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">quantification_salmon</text>
 </g>
 <!-- 14&#45;&gt;3 -->
 <g id="edge14" class="edge">
 <title>14&#45;&gt;3</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M697.2112,-807.0018C792.4433,-795.7656 1105,-752.3131 1105,-666 1105,-666 1105,-666 1105,-594 1105,-553.7977 1108.5375,-507.4047 1111.1768,-478.385"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="1114.6864,-478.4457 1112.1352,-468.1626 1107.717,-477.7923 1114.6864,-478.4457"/>
-</g>
-<!-- 26 -->
-<g id="node27" class="node">
-<title>26</title>
-<path fill="none" stroke="#56d8a2" stroke-width="2" d="M733,-756C733,-756 607,-756 607,-756 601,-756 595,-750 595,-744 595,-744 595,-732 595,-732 595,-726 601,-720 607,-720 607,-720 733,-720 733,-720 739,-720 745,-726 745,-732 745,-732 745,-744 745,-744 745,-750 739,-756 733,-756"/>
-<text text-anchor="middle" x="670" y="-735.5" font-family="sans" font-size="10.00" fill="#000000">pe_remove_adapters_cutadapt</text>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M903.9338,-503.8314C886.3467,-494.4516 864.7084,-482.9112 845.9832,-472.9244"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="847.5259,-469.7805 837.0553,-468.1628 844.2318,-475.957 847.5259,-469.7805"/>
 </g>
-<!-- 14&#45;&gt;26 -->
-<g id="edge45" class="edge">
-<title>14&#45;&gt;26</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M670,-791.8314C670,-784.131 670,-774.9743 670,-766.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="673.5001,-766.4132 670,-756.4133 666.5001,-766.4133 673.5001,-766.4132"/>
-</g>
-<!-- 28 -->
-<g id="node29" class="node">
-<title>28</title>
-<path fill="none" stroke="#59d856" stroke-width="2" d="M536,-756C536,-756 426,-756 426,-756 420,-756 414,-750 414,-744 414,-744 414,-732 414,-732 414,-726 420,-720 426,-720 426,-720 536,-720 536,-720 542,-720 548,-726 548,-732 548,-732 548,-744 548,-744 548,-750 542,-756 536,-756"/>
-<text text-anchor="middle" x="481" y="-735.5" font-family="sans" font-size="10.00" fill="#000000">remove_adapters_cutadapt</text>
-</g>
-<!-- 14&#45;&gt;28 -->
-<g id="edge46" class="edge">
-<title>14&#45;&gt;28</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M642.9209,-799.6842C615.6776,-789.3058 572.8354,-772.9849 538.0613,-759.7376"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="539.0777,-756.3795 528.4868,-756.0902 536.5857,-762.9209 539.0777,-756.3795"/>
+<!-- 14&#45;&gt;4 -->
+<g id="edge16" class="edge">
+<title>14&#45;&gt;4</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M945.3179,-503.8314C948.4876,-495.9617 952.27,-486.5712 955.7813,-477.8533"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="959.0939,-478.9968 959.5835,-468.4133 952.6008,-476.3815 959.0939,-478.9968"/>
 </g>
 <!-- 15 -->
 <g id="node16" class="node">
 <title>15</title>
-<path fill="none" stroke="#d87556" stroke-width="2" d="M726,-684C726,-684 614,-684 614,-684 608,-684 602,-678 602,-672 602,-672 602,-660 602,-660 602,-654 608,-648 614,-648 614,-648 726,-648 726,-648 732,-648 738,-654 738,-660 738,-660 738,-672 738,-672 738,-678 732,-684 726,-684"/>
-<text text-anchor="middle" x="670" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">pe_remove_polya_cutadapt</text>
+<path fill="none" stroke="#d86656" stroke-width="2" d="M304,-828C304,-828 274,-828 274,-828 268,-828 262,-822 262,-816 262,-816 262,-804 262,-804 262,-798 268,-792 274,-792 274,-792 304,-792 304,-792 310,-792 316,-798 316,-804 316,-804 316,-816 316,-816 316,-822 310,-828 304,-828"/>
+<text text-anchor="middle" x="289" y="-807.5" font-family="sans" font-size="10.00" fill="#000000">start</text>
 </g>
-<!-- 15&#45;&gt;4 -->
-<g id="edge15" class="edge">
-<title>15&#45;&gt;4</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M601.5835,-649.8725C598.3486,-649.2167 595.1418,-648.5886 592,-648 485.2072,-627.9937 454.9352,-630.5714 344.1102,-612.1387"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="344.6531,-608.681 334.2108,-610.4724 343.4911,-615.5839 344.6531,-608.681"/>
+<!-- 15&#45;&gt;5 -->
+<g id="edge17" class="edge">
+<title>15&#45;&gt;5</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M261.8279,-808.0715C193.6945,-801.6146 21,-774.5428 21,-666 21,-666 21,-666 21,-522 21,-481.8412 23.3583,-435.4372 25.1179,-406.4031"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="28.6264,-406.3741 25.7568,-396.1753 21.6401,-405.9376 28.6264,-406.3741"/>
 </g>
-<!-- 19 -->
-<g id="node20" class="node">
-<title>19</title>
-<path fill="none" stroke="#5673d8" stroke-width="2" d="M596.5,-612C596.5,-612 493.5,-612 493.5,-612 487.5,-612 481.5,-606 481.5,-600 481.5,-600 481.5,-588 481.5,-588 481.5,-582 487.5,-576 493.5,-576 493.5,-576 596.5,-576 596.5,-576 602.5,-576 608.5,-582 608.5,-588 608.5,-588 608.5,-600 608.5,-600 608.5,-606 602.5,-612 596.5,-612"/>
-<text text-anchor="middle" x="545" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">pe_quantification_salmon</text>
+<!-- 23 -->
+<g id="node24" class="node">
+<title>23</title>
+<path fill="none" stroke="#d88556" stroke-width="2" d="M352,-756C352,-756 226,-756 226,-756 220,-756 214,-750 214,-744 214,-744 214,-732 214,-732 214,-726 220,-720 226,-720 226,-720 352,-720 352,-720 358,-720 364,-726 364,-732 364,-732 364,-744 364,-744 364,-750 358,-756 352,-756"/>
+<text text-anchor="middle" x="289" y="-735.5" font-family="sans" font-size="10.00" fill="#000000">pe_remove_adapters_cutadapt</text>
 </g>
-<!-- 15&#45;&gt;19 -->
-<g id="edge33" class="edge">
-<title>15&#45;&gt;19</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M638.4572,-647.8314C622.3209,-638.5368 602.5014,-627.1208 585.2728,-617.1971"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="586.945,-614.1212 576.5327,-612.1628 583.4511,-620.187 586.945,-614.1212"/>
+<!-- 15&#45;&gt;23 -->
+<g id="edge37" class="edge">
+<title>15&#45;&gt;23</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M289,-791.8314C289,-784.131 289,-774.9743 289,-766.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="292.5001,-766.4132 289,-756.4133 285.5001,-766.4133 292.5001,-766.4132"/>
 </g>
-<!-- 15&#45;&gt;21 -->
+<!-- 25 -->
+<g id="node26" class="node">
+<title>25</title>
+<path fill="none" stroke="#56d0d8" stroke-width="2" d="M633,-756C633,-756 523,-756 523,-756 517,-756 511,-750 511,-744 511,-744 511,-732 511,-732 511,-726 517,-720 523,-720 523,-720 633,-720 633,-720 639,-720 645,-726 645,-732 645,-732 645,-744 645,-744 645,-750 639,-756 633,-756"/>
+<text text-anchor="middle" x="578" y="-735.5" font-family="sans" font-size="10.00" fill="#000000">remove_adapters_cutadapt</text>
+</g>
+<!-- 15&#45;&gt;25 -->
 <g id="edge38" class="edge">
-<title>15&#45;&gt;21</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M720.7124,-647.9243C748.327,-638.0815 782.675,-625.8386 811.6601,-615.5073"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="813.0223,-618.7375 821.2667,-612.0831 810.6721,-612.1438 813.0223,-618.7375"/>
+<title>15&#45;&gt;25</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M316.1884,-803.2264C358.0493,-792.7974 439.8362,-772.4214 500.9133,-757.205"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="502.0535,-760.528 510.9108,-754.7143 500.3613,-753.7356 502.0535,-760.528"/>
 </g>
 <!-- 16 -->
 <g id="node17" class="node">
 <title>16</title>
-<path fill="none" stroke="#d8b456" stroke-width="2" d="M293,-684C293,-684 209,-684 209,-684 203,-684 197,-678 197,-672 197,-672 197,-660 197,-660 197,-654 203,-648 209,-648 209,-648 293,-648 293,-648 299,-648 305,-654 305,-660 305,-660 305,-672 305,-672 305,-678 299,-684 293,-684"/>
-<text text-anchor="middle" x="251" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">create_index_kallisto</text>
-</g>
-<!-- 16&#45;&gt;4 -->
-<g id="edge16" class="edge">
-<title>16&#45;&gt;4</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M251,-647.8314C251,-640.131 251,-630.9743 251,-622.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="254.5001,-622.4132 251,-612.4133 247.5001,-622.4133 254.5001,-622.4132"/>
+<path fill="none" stroke="#56b1d8" stroke-width="2" d="M488,-684C488,-684 376,-684 376,-684 370,-684 364,-678 364,-672 364,-672 364,-660 364,-660 364,-654 370,-648 376,-648 376,-648 488,-648 488,-648 494,-648 500,-654 500,-660 500,-660 500,-672 500,-672 500,-678 494,-684 488,-684"/>
+<text text-anchor="middle" x="432" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">pe_remove_polya_cutadapt</text>
 </g>
-<!-- 16&#45;&gt;5 -->
+<!-- 16&#45;&gt;6 -->
 <g id="edge18" class="edge">
-<title>16&#45;&gt;5</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M206.5878,-647.8314C182.8396,-638.1162 153.4254,-626.0831 128.4336,-615.8592"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="129.6736,-612.585 119.0929,-612.038 127.0231,-619.0638 129.6736,-612.585"/>
+<title>16&#45;&gt;6</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M363.9254,-649.6621C320.3484,-639.2036 263.4646,-625.5515 216.9388,-614.3853"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="217.7171,-610.9728 207.1764,-612.0423 216.0835,-617.7795 217.7171,-610.9728"/>
+</g>
+<!-- 16&#45;&gt;13 -->
+<g id="edge25" class="edge">
+<title>16&#45;&gt;13</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M500.2455,-649.1041C555.3802,-635.3026 625.8995,-617.2498 639,-612 684.4521,-593.7857 733.1171,-565.4197 765.1109,-545.4097"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="767.0883,-548.3005 773.6762,-540.0028 763.3517,-542.3812 767.0883,-548.3005"/>
+</g>
+<!-- 16&#45;&gt;30 -->
+<g id="edge50" class="edge">
+<title>16&#45;&gt;30</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M438.5609,-647.8314C441.4027,-639.9617 444.7937,-630.5712 447.9419,-621.8533"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="451.2462,-623.0076 451.3508,-612.4133 444.6623,-620.63 451.2462,-623.0076"/>
 </g>
 <!-- 17 -->
 <g id="node18" class="node">
 <title>17</title>
-<path fill="none" stroke="#56a2d8" stroke-width="2" d="M444,-684C444,-684 348,-684 348,-684 342,-684 336,-678 336,-672 336,-672 336,-660 336,-660 336,-654 342,-648 348,-648 348,-648 444,-648 444,-648 450,-648 456,-654 456,-660 456,-660 456,-672 456,-672 456,-678 450,-684 444,-684"/>
-<text text-anchor="middle" x="396" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">remove_polya_cutadapt</text>
-</g>
-<!-- 17&#45;&gt;5 -->
-<g id="edge17" class="edge">
-<title>17&#45;&gt;5</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M335.9989,-652.5418C286.4409,-641.426 215.4925,-625.5123 160.0734,-613.0819"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="160.7906,-609.6559 150.267,-610.8823 159.2585,-616.4861 160.7906,-609.6559"/>
+<path fill="none" stroke="#5663d8" stroke-width="2" d="M334,-684C334,-684 250,-684 250,-684 244,-684 238,-678 238,-672 238,-672 238,-660 238,-660 238,-654 244,-648 250,-648 250,-648 334,-648 334,-648 340,-648 346,-654 346,-660 346,-660 346,-672 346,-672 346,-678 340,-684 334,-684"/>
+<text text-anchor="middle" x="292" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">create_index_kallisto</text>
 </g>
-<!-- 20 -->
-<g id="node21" class="node">
-<title>20</title>
-<path fill="none" stroke="#9fd856" stroke-width="2" d="M451.5,-612C451.5,-612 364.5,-612 364.5,-612 358.5,-612 352.5,-606 352.5,-600 352.5,-600 352.5,-588 352.5,-588 352.5,-582 358.5,-576 364.5,-576 364.5,-576 451.5,-576 451.5,-576 457.5,-576 463.5,-582 463.5,-588 463.5,-588 463.5,-600 463.5,-600 463.5,-606 457.5,-612 451.5,-612"/>
-<text text-anchor="middle" x="408" y="-591.5" font-family="sans" font-size="10.00" fill="#000000">quantification_salmon</text>
-</g>
-<!-- 17&#45;&gt;20 -->
-<g id="edge35" class="edge">
-<title>17&#45;&gt;20</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M399.0281,-647.8314C400.3115,-640.131 401.8376,-630.9743 403.2639,-622.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="406.7394,-622.8526 404.9311,-612.4133 399.8347,-621.7018 406.7394,-622.8526"/>
+<!-- 17&#45;&gt;6 -->
+<g id="edge19" class="edge">
+<title>17&#45;&gt;6</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M251.6252,-647.8314C230.3213,-638.2446 204.0017,-626.4008 181.4789,-616.2655"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="182.6399,-612.95 172.0844,-612.038 179.7674,-619.3334 182.6399,-612.95"/>
 </g>
-<!-- 17&#45;&gt;23 -->
-<g id="edge42" class="edge">
-<title>17&#45;&gt;23</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M456.1526,-650.0535C459.1398,-649.3415 462.1014,-648.6529 465,-648 542.4822,-630.5481 632.6938,-614.0378 690.2899,-603.9737"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="691.0497,-607.3942 700.3017,-602.2319 689.8498,-600.4978 691.0497,-607.3942"/>
+<!-- 17&#45;&gt;7 -->
+<g id="edge21" class="edge">
+<title>17&#45;&gt;7</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M296.0375,-647.8314C297.7487,-640.131 299.7835,-630.9743 301.6852,-622.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="305.1554,-622.9344 303.9082,-612.4133 298.3221,-621.4159 305.1554,-622.9344"/>
 </g>
 <!-- 18 -->
 <g id="node19" class="node">
 <title>18</title>
-<path fill="none" stroke="#97d856" stroke-width="2" d="M652,-396C652,-396 576,-396 576,-396 570,-396 564,-390 564,-384 564,-384 564,-372 564,-372 564,-366 570,-360 576,-360 576,-360 652,-360 652,-360 658,-360 664,-366 664,-372 664,-372 664,-384 664,-384 664,-390 658,-396 652,-396"/>
-<text text-anchor="middle" x="614" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">merge_TIN_scores</text>
-</g>
-<!-- 18&#45;&gt;6 -->
-<g id="edge19" class="edge">
-<title>18&#45;&gt;6</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M600.7017,-359.7623C582.3979,-334.66 549.3242,-289.3017 528.2989,-260.4671"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="530.9101,-258.1076 522.1903,-252.0896 525.2541,-262.2318 530.9101,-258.1076"/>
+<path fill="none" stroke="#c6d856" stroke-width="2" d="M626,-684C626,-684 530,-684 530,-684 524,-684 518,-678 518,-672 518,-672 518,-660 518,-660 518,-654 524,-648 530,-648 530,-648 626,-648 626,-648 632,-648 638,-654 638,-660 638,-660 638,-672 638,-672 638,-678 632,-684 626,-684"/>
+<text text-anchor="middle" x="578" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">remove_polya_cutadapt</text>
 </g>
-<!-- 19&#45;&gt;7 -->
+<!-- 18&#45;&gt;7 -->
 <g id="edge20" class="edge">
-<title>19&#45;&gt;7</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M481.3072,-578.2584C478.1608,-577.4922 475.0451,-576.736 472,-576 422.0988,-563.9387 365.9864,-550.6455 321.9148,-540.2664"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="322.6658,-536.8476 312.1299,-537.9633 321.062,-543.6614 322.6658,-536.8476"/>
+<title>18&#45;&gt;7</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M517.7428,-649.9314C478.7499,-639.5333 427.6092,-625.8958 385.5884,-614.6902"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="386.2332,-611.2399 375.669,-612.0451 384.4295,-618.0036 386.2332,-611.2399"/>
+</g>
+<!-- 18&#45;&gt;14 -->
+<g id="edge27" class="edge">
+<title>18&#45;&gt;14</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M638.3727,-649.2621C686.6525,-635.6647 748.0287,-617.8214 759,-612 781.3196,-600.1571 781.2394,-588.8412 803,-576 824.6856,-563.2031 849.9681,-552.1801 872.7521,-543.4917"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="874.2001,-546.6872 882.346,-539.9126 871.7533,-540.1287 874.2001,-546.6872"/>
+</g>
+<!-- 18&#45;&gt;33 -->
+<g id="edge54" class="edge">
+<title>18&#45;&gt;33</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M578.757,-647.8314C579.0779,-640.131 579.4594,-630.9743 579.816,-622.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="583.3133,-622.5503 580.2328,-612.4133 576.3194,-622.2589 583.3133,-622.5503"/>
+</g>
+<!-- 19 -->
+<g id="node20" class="node">
+<title>19</title>
+<path fill="none" stroke="#a7d856" stroke-width="2" d="M287,-396C287,-396 211,-396 211,-396 205,-396 199,-390 199,-384 199,-384 199,-372 199,-372 199,-366 205,-360 211,-360 211,-360 287,-360 287,-360 293,-360 299,-366 299,-372 299,-372 299,-384 299,-384 299,-390 293,-396 287,-396"/>
+<text text-anchor="middle" x="249" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">merge_TIN_scores</text>
 </g>
 <!-- 19&#45;&gt;8 -->
 <g id="edge22" class="edge">
 <title>19&#45;&gt;8</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M510.4291,-575.8314C492.5815,-566.4516 470.6226,-554.9112 451.62,-544.9244"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="453.0401,-541.7168 442.5598,-540.1628 449.7836,-547.9132 453.0401,-541.7168"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M245.0738,-359.7623C239.763,-335.0928 230.2406,-290.8598 224.022,-261.9731"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="227.4205,-261.129 221.8943,-252.0896 220.5773,-262.6023 227.4205,-261.129"/>
 </g>
-<!-- 20&#45;&gt;7 -->
-<g id="edge21" class="edge">
-<title>20&#45;&gt;7</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M366.6159,-575.8314C344.6818,-566.2018 317.5608,-554.295 294.4069,-544.1299"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="295.65,-540.8532 285.0865,-540.038 292.836,-547.2627 295.65,-540.8532"/>
+<!-- 20 -->
+<g id="node21" class="node">
+<title>20</title>
+<path fill="none" stroke="#61d856" stroke-width="2" d="M430.5,-252C430.5,-252 349.5,-252 349.5,-252 343.5,-252 337.5,-246 337.5,-240 337.5,-240 337.5,-228 337.5,-228 337.5,-222 343.5,-216 349.5,-216 349.5,-216 430.5,-216 430.5,-216 436.5,-216 442.5,-222 442.5,-228 442.5,-228 442.5,-240 442.5,-240 442.5,-246 436.5,-252 430.5,-252"/>
+<text text-anchor="middle" x="390" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc_all_samples</text>
 </g>
-<!-- 20&#45;&gt;8 -->
+<!-- 20&#45;&gt;9 -->
 <g id="edge23" class="edge">
-<title>20&#45;&gt;8</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M408,-575.8314C408,-568.131 408,-558.9743 408,-550.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="411.5001,-550.4132 408,-540.4133 404.5001,-550.4133 411.5001,-550.4132"/>
-</g>
-<!-- 21&#45;&gt;9 -->
-<g id="edge25" class="edge">
-<title>21&#45;&gt;9</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M923.0855,-575.9348C939.0666,-567.5922 954.8895,-555.9115 964,-540 971.9502,-526.115 972.0775,-517.8114 964,-504 951.3587,-482.3853 926.5324,-468.7542 905.2939,-460.5947"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="906.4394,-457.2873 895.8448,-457.2217 904.086,-463.8799 906.4394,-457.2873"/>
-</g>
-<!-- 22 -->
-<g id="node23" class="node">
-<title>22</title>
-<path fill="none" stroke="#56b1d8" stroke-width="2" d="M943,-540C943,-540 793,-540 793,-540 787,-540 781,-534 781,-528 781,-528 781,-516 781,-516 781,-510 787,-504 793,-504 793,-504 943,-504 943,-504 949,-504 955,-510 955,-516 955,-516 955,-528 955,-528 955,-534 949,-540 943,-540"/>
-<text text-anchor="middle" x="868" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">index_genomic_alignment_samtools</text>
+<title>20&#45;&gt;9</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M353.9151,-215.8314C335.2011,-206.4089 312.1568,-194.8062 292.26,-184.7883"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="293.5792,-181.5339 283.0734,-180.1628 290.4311,-187.7861 293.5792,-181.5339"/>
 </g>
-<!-- 21&#45;&gt;22 -->
-<g id="edge39" class="edge">
-<title>21&#45;&gt;22</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M870.9906,-575.8314C870.5628,-568.131 870.0541,-558.9743 869.5787,-550.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="873.0724,-550.2037 869.023,-540.4133 866.0831,-550.592 873.0724,-550.2037"/>
-</g>
-<!-- 29 -->
-<g id="node30" class="node">
-<title>29</title>
-<path fill="none" stroke="#d85656" stroke-width="2" d="M721,-468C721,-468 633,-468 633,-468 627,-468 621,-462 621,-456 621,-456 621,-444 621,-444 621,-438 627,-432 633,-432 633,-432 721,-432 721,-432 727,-432 733,-438 733,-444 733,-444 733,-456 733,-456 733,-462 727,-468 721,-468"/>
-<text text-anchor="middle" x="677" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">calculate_TIN_scores</text>
-</g>
-<!-- 21&#45;&gt;29 -->
-<g id="edge48" class="edge">
-<title>21&#45;&gt;29</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M833.0741,-575.9889C813.9619,-566.4078 791.0168,-553.7712 772,-540 745.4766,-520.7929 718.7038,-494.6827 700.3711,-475.5321"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="702.7101,-472.9114 693.2969,-468.0491 697.6233,-477.7203 702.7101,-472.9114"/>
+<!-- 21 -->
+<g id="node22" class="node">
+<title>21</title>
+<path fill="none" stroke="#5682d8" stroke-width="2" d="M545,-396C545,-396 439,-396 439,-396 433,-396 427,-390 427,-384 427,-384 427,-372 427,-372 427,-366 433,-360 439,-360 439,-360 545,-360 545,-360 551,-360 557,-366 557,-372 557,-372 557,-384 557,-384 557,-390 551,-396 545,-396"/>
+<text text-anchor="middle" x="492" y="-375.5" font-family="sans" font-size="10.00" fill="#000000">rename_star_rpm_for_alfa</text>
 </g>
-<!-- 22&#45;&gt;9 -->
+<!-- 21&#45;&gt;11 -->
 <g id="edge24" class="edge">
-<title>22&#45;&gt;9</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M868,-503.8314C868,-496.131 868,-486.9743 868,-478.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="871.5001,-478.4132 868,-468.4133 864.5001,-478.4133 871.5001,-478.4132"/>
+<title>21&#45;&gt;11</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M521.2717,-359.8314C536.1088,-350.6221 554.3015,-339.3301 570.1862,-329.4706"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="572.087,-332.4102 578.7377,-324.1628 568.3955,-326.4628 572.087,-332.4102"/>
 </g>
-<!-- 22&#45;&gt;29 -->
-<g id="edge47" class="edge">
-<title>22&#45;&gt;29</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M819.8026,-503.8314C793.8034,-494.0306 761.5464,-481.8709 734.2719,-471.5894"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="735.4426,-468.2904 724.8508,-468.038 732.9734,-474.8404 735.4426,-468.2904"/>
+<!-- 27 -->
+<g id="node28" class="node">
+<title>27</title>
+<path fill="none" stroke="#56d88a" stroke-width="2" d="M507,-324C507,-324 477,-324 477,-324 471,-324 465,-318 465,-312 465,-312 465,-300 465,-300 465,-294 471,-288 477,-288 477,-288 507,-288 507,-288 513,-288 519,-294 519,-300 519,-300 519,-312 519,-312 519,-318 513,-324 507,-324"/>
+<text text-anchor="middle" x="492" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+</g>
+<!-- 21&#45;&gt;27 -->
+<g id="edge44" class="edge">
+<title>21&#45;&gt;27</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M492,-359.8314C492,-352.131 492,-342.9743 492,-334.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="495.5001,-334.4132 492,-324.4133 488.5001,-334.4133 495.5001,-334.4132"/>
 </g>
-<!-- 23&#45;&gt;9 -->
+<!-- 22&#45;&gt;13 -->
 <g id="edge26" class="edge">
-<title>23&#45;&gt;9</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M749.5135,-575.9721C750.9318,-556.3987 755.8051,-525.1141 772,-504 786.8694,-484.614 810.8089,-471.1278 831.0611,-462.4813"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="832.39,-465.7194 840.3551,-458.7332 829.7718,-459.2274 832.39,-465.7194"/>
+<title>22&#45;&gt;13</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M849.5978,-575.8314C841.9585,-567.3694 832.7317,-557.1489 824.3793,-547.8971"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="826.9221,-545.4906 817.6231,-540.4133 821.7262,-550.1813 826.9221,-545.4906"/>
 </g>
-<!-- 23&#45;&gt;22 -->
-<g id="edge40" class="edge">
-<title>23&#45;&gt;22</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M779.0287,-575.8314C794.2496,-566.6221 812.9128,-555.3301 829.2083,-545.4706"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="831.2369,-548.3341 837.9809,-540.1628 827.6132,-542.345 831.2369,-548.3341"/>
+<!-- 22&#45;&gt;14 -->
+<g id="edge28" class="edge">
+<title>22&#45;&gt;14</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M884.1686,-575.8314C892.7152,-567.2848 903.0557,-556.9443 912.3802,-547.6198"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="914.9905,-549.9592 919.5867,-540.4133 910.0408,-545.0095 914.9905,-549.9592"/>
 </g>
-<!-- 23&#45;&gt;29 -->
-<g id="edge49" class="edge">
-<title>23&#45;&gt;29</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M728.7914,-575.6949C719.1245,-565.9488 708.1319,-553.2551 701,-540 690.6238,-520.7152 684.5095,-496.6485 681.0516,-478.2556"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="684.4593,-477.4204 679.3105,-468.1608 677.5612,-478.6102 684.4593,-477.4204"/>
+<!-- 23&#45;&gt;16 -->
+<g id="edge29" class="edge">
+<title>23&#45;&gt;16</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M325.0849,-719.8314C343.7989,-710.4089 366.8432,-698.8062 386.74,-688.7883"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="388.5689,-691.7861 395.9266,-684.1628 385.4208,-685.5339 388.5689,-691.7861"/>
 </g>
 <!-- 24 -->
 <g id="node25" class="node">
 <title>24</title>
-<path fill="none" stroke="#ced856" stroke-width="2" d="M695.5,-252C695.5,-252 614.5,-252 614.5,-252 608.5,-252 602.5,-246 602.5,-240 602.5,-240 602.5,-228 602.5,-228 602.5,-222 608.5,-216 614.5,-216 614.5,-216 695.5,-216 695.5,-216 701.5,-216 707.5,-222 707.5,-228 707.5,-228 707.5,-240 707.5,-240 707.5,-246 701.5,-252 695.5,-252"/>
-<text text-anchor="middle" x="655" y="-231.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc_all_samples</text>
+<path fill="none" stroke="#d8ac56" stroke-width="2" d="M480.5,-756C480.5,-756 393.5,-756 393.5,-756 387.5,-756 381.5,-750 381.5,-744 381.5,-744 381.5,-732 381.5,-732 381.5,-726 387.5,-720 393.5,-720 393.5,-720 480.5,-720 480.5,-720 486.5,-720 492.5,-726 492.5,-732 492.5,-732 492.5,-744 492.5,-744 492.5,-750 486.5,-756 480.5,-756"/>
+<text text-anchor="middle" x="437" y="-735.5" font-family="sans" font-size="10.00" fill="#000000">extract_transcriptome</text>
 </g>
-<!-- 24&#45;&gt;10 -->
-<g id="edge27" class="edge">
-<title>24&#45;&gt;10</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M625.2236,-215.8314C610.1307,-206.6221 591.6243,-195.3301 575.4657,-185.4706"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="577.1263,-182.3838 566.7669,-180.1628 573.4802,-188.3593 577.1263,-182.3838"/>
+<!-- 24&#45;&gt;17 -->
+<g id="edge30" class="edge">
+<title>24&#45;&gt;17</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M400.4104,-719.8314C381.2761,-710.3302 357.6771,-698.6121 337.3878,-688.5374"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="338.8397,-685.3506 328.3265,-684.038 335.7265,-691.6203 338.8397,-685.3506"/>
 </g>
-<!-- 25&#45;&gt;12 -->
-<g id="edge28" class="edge">
-<title>25&#45;&gt;12</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M969.0281,-359.8314C970.3115,-352.131 971.8376,-342.9743 973.2639,-334.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="976.7394,-334.8526 974.9311,-324.4133 969.8347,-333.7018 976.7394,-334.8526"/>
+<!-- 29 -->
+<g id="node30" class="node">
+<title>29</title>
+<path fill="none" stroke="#5692d8" stroke-width="2" d="M951.5,-684C951.5,-684 780.5,-684 780.5,-684 774.5,-684 768.5,-678 768.5,-672 768.5,-672 768.5,-660 768.5,-660 768.5,-654 774.5,-648 780.5,-648 780.5,-648 951.5,-648 951.5,-648 957.5,-648 963.5,-654 963.5,-660 963.5,-660 963.5,-672 963.5,-672 963.5,-678 957.5,-684 951.5,-684"/>
+<text text-anchor="middle" x="866" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">concatenate_transcriptome_and_genome</text>
 </g>
-<!-- 31 -->
-<g id="node32" class="node">
-<title>31</title>
-<path fill="none" stroke="#56d8b1" stroke-width="2" d="M846,-324C846,-324 816,-324 816,-324 810,-324 804,-318 804,-312 804,-312 804,-300 804,-300 804,-294 810,-288 816,-288 816,-288 846,-288 846,-288 852,-288 858,-294 858,-300 858,-300 858,-312 858,-312 858,-318 852,-324 846,-324"/>
-<text text-anchor="middle" x="831" y="-303.5" font-family="sans" font-size="10.00" fill="#000000">alfa_qc</text>
+<!-- 24&#45;&gt;29 -->
+<g id="edge48" class="edge">
+<title>24&#45;&gt;29</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M492.5523,-722.1009C495.7388,-721.3498 498.9044,-720.6425 502,-720 611.8423,-697.2001 643.3016,-701.3158 758.4306,-684.0501"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="758.9824,-687.5065 768.3422,-682.5422 757.9295,-680.5861 758.9824,-687.5065"/>
 </g>
-<!-- 25&#45;&gt;31 -->
-<g id="edge52" class="edge">
-<title>25&#45;&gt;31</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M931.9338,-359.8314C912.1547,-349.2825 887.2517,-336.0009 867.1309,-325.2698"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="868.7289,-322.1555 858.2583,-320.5378 865.4348,-328.3319 868.7289,-322.1555"/>
+<!-- 25&#45;&gt;18 -->
+<g id="edge31" class="edge">
+<title>25&#45;&gt;18</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M578,-719.8314C578,-712.131 578,-702.9743 578,-694.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="581.5001,-694.4132 578,-684.4133 574.5001,-694.4133 581.5001,-694.4132"/>
 </g>
-<!-- 26&#45;&gt;15 -->
-<g id="edge29" class="edge">
-<title>26&#45;&gt;15</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M670,-719.8314C670,-712.131 670,-702.9743 670,-694.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="673.5001,-694.4132 670,-684.4133 666.5001,-694.4133 673.5001,-694.4132"/>
+<!-- 26 -->
+<g id="node27" class="node">
+<title>26</title>
+<path fill="none" stroke="#d87556" stroke-width="2" d="M306,-468C306,-468 218,-468 218,-468 212,-468 206,-462 206,-456 206,-456 206,-444 206,-444 206,-438 212,-432 218,-432 218,-432 306,-432 306,-432 312,-432 318,-438 318,-444 318,-444 318,-456 318,-456 318,-462 312,-468 306,-468"/>
+<text text-anchor="middle" x="262" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">calculate_TIN_scores</text>
 </g>
-<!-- 27 -->
-<g id="node28" class="node">
-<title>27</title>
-<path fill="none" stroke="#56d873" stroke-width="2" d="M324.5,-756C324.5,-756 237.5,-756 237.5,-756 231.5,-756 225.5,-750 225.5,-744 225.5,-744 225.5,-732 225.5,-732 225.5,-726 231.5,-720 237.5,-720 237.5,-720 324.5,-720 324.5,-720 330.5,-720 336.5,-726 336.5,-732 336.5,-732 336.5,-744 336.5,-744 336.5,-750 330.5,-756 324.5,-756"/>
-<text text-anchor="middle" x="281" y="-735.5" font-family="sans" font-size="10.00" fill="#000000">extract_transcriptome</text>
+<!-- 26&#45;&gt;19 -->
+<g id="edge32" class="edge">
+<title>26&#45;&gt;19</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M258.7196,-431.8314C257.3292,-424.131 255.6759,-414.9743 254.1308,-406.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="257.5458,-405.6322 252.3246,-396.4133 250.6572,-406.8761 257.5458,-405.6322"/>
 </g>
-<!-- 27&#45;&gt;16 -->
-<g id="edge30" class="edge">
-<title>27&#45;&gt;16</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M273.4297,-719.8314C270.1507,-711.9617 266.238,-702.5712 262.6055,-693.8533"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="265.7492,-692.2979 258.6722,-684.4133 259.2876,-694.9902 265.7492,-692.2979"/>
+<!-- 27&#45;&gt;20 -->
+<g id="edge33" class="edge">
+<title>27&#45;&gt;20</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M466.2611,-287.8314C453.4563,-278.7927 437.8091,-267.7476 424.0281,-258.0198"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="425.9188,-255.0703 415.7307,-252.1628 421.882,-260.7891 425.9188,-255.0703"/>
 </g>
-<!-- 30 -->
-<g id="node31" class="node">
-<title>30</title>
-<path fill="none" stroke="#56c1d8" stroke-width="2" d="M571.5,-684C571.5,-684 486.5,-684 486.5,-684 480.5,-684 474.5,-678 474.5,-672 474.5,-672 474.5,-660 474.5,-660 474.5,-654 480.5,-648 486.5,-648 486.5,-648 571.5,-648 571.5,-648 577.5,-648 583.5,-654 583.5,-660 583.5,-660 583.5,-672 583.5,-672 583.5,-678 577.5,-684 571.5,-684"/>
-<text text-anchor="middle" x="529" y="-663.5" font-family="sans" font-size="10.00" fill="#000000">create_index_salmon</text>
+<!-- 28 -->
+<g id="node29" class="node">
+<title>28</title>
+<path fill="none" stroke="#56d85b" stroke-width="2" d="M557.5,-468C557.5,-468 526.5,-468 526.5,-468 520.5,-468 514.5,-462 514.5,-456 514.5,-456 514.5,-444 514.5,-444 514.5,-438 520.5,-432 526.5,-432 526.5,-432 557.5,-432 557.5,-432 563.5,-432 569.5,-438 569.5,-444 569.5,-444 569.5,-456 569.5,-456 569.5,-462 563.5,-468 557.5,-468"/>
+<text text-anchor="middle" x="542" y="-447.5" font-family="sans" font-size="10.00" fill="#000000">star_rpm</text>
 </g>
-<!-- 27&#45;&gt;30 -->
-<g id="edge51" class="edge">
-<title>27&#45;&gt;30</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M336.656,-721.8418C374.5721,-710.8339 424.8861,-696.2266 464.5445,-684.7129"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="465.7559,-688.0058 474.3835,-681.8564 463.8042,-681.2834 465.7559,-688.0058"/>
+<!-- 28&#45;&gt;21 -->
+<g id="edge34" class="edge">
+<title>28&#45;&gt;21</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M529.3829,-431.8314C523.6828,-423.6232 516.8337,-413.7606 510.5641,-404.7323"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="513.3658,-402.6306 504.787,-396.4133 507.6162,-406.6234 513.3658,-402.6306"/>
 </g>
-<!-- 28&#45;&gt;17 -->
-<g id="edge31" class="edge">
-<title>28&#45;&gt;17</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M459.5509,-719.8314C449.1822,-711.0485 436.5771,-700.3712 425.3354,-690.8489"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="427.3349,-687.9556 417.4422,-684.1628 422.8105,-693.297 427.3349,-687.9556"/>
+<!-- 29&#45;&gt;22 -->
+<g id="edge35" class="edge">
+<title>29&#45;&gt;22</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M866,-647.8314C866,-640.131 866,-630.9743 866,-622.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="869.5001,-622.4132 866,-612.4133 862.5001,-622.4133 869.5001,-622.4132"/>
 </g>
-<!-- 29&#45;&gt;18 -->
-<g id="edge32" class="edge">
-<title>29&#45;&gt;18</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M661.1024,-431.8314C653.7722,-423.454 644.934,-413.3531 636.9031,-404.1749"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="639.3307,-401.6343 630.1116,-396.4133 634.0627,-406.2438 639.3307,-401.6343"/>
+<!-- 30&#45;&gt;26 -->
+<g id="edge41" class="edge">
+<title>30&#45;&gt;26</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M401.2061,-578.1309C398.0991,-577.3816 395.0154,-576.6655 392,-576 345.3375,-565.701 210.8316,-576.5085 180,-540 169.6767,-527.7759 172.4105,-518.0854 180,-504 186.7016,-491.5626 197.6591,-481.5183 209.4142,-473.6213"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="211.4179,-476.497 218.0653,-468.247 207.724,-470.551 211.4179,-476.497"/>
 </g>
-<!-- 30&#45;&gt;19 -->
-<g id="edge34" class="edge">
-<title>30&#45;&gt;19</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M533.0375,-647.8314C534.7487,-640.131 536.7835,-630.9743 538.6852,-622.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="542.1554,-622.9344 540.9082,-612.4133 535.3221,-621.4159 542.1554,-622.9344"/>
+<!-- 30&#45;&gt;28 -->
+<g id="edge46" class="edge">
+<title>30&#45;&gt;28</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M497.676,-575.994C512.2533,-567.278 527.3061,-555.3294 536,-540 546.5756,-521.3529 547.5564,-496.9131 546.1798,-478.2079"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="549.6583,-477.8167 545.1853,-468.2124 542.6927,-478.5098 549.6583,-477.8167"/>
 </g>
-<!-- 30&#45;&gt;20 -->
-<g id="edge36" class="edge">
-<title>30&#45;&gt;20</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M498.4666,-647.8314C482.9899,-638.6221 464.0131,-627.3301 447.4437,-617.4706"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="448.9071,-614.2687 438.5236,-612.1628 445.3276,-620.2843 448.9071,-614.2687"/>
+<!-- 31 -->
+<g id="node32" class="node">
+<title>31</title>
+<path fill="none" stroke="#d8a456" stroke-width="2" d="M515,-540C515,-540 365,-540 365,-540 359,-540 353,-534 353,-528 353,-528 353,-516 353,-516 353,-510 359,-504 365,-504 365,-504 515,-504 515,-504 521,-504 527,-510 527,-516 527,-516 527,-528 527,-528 527,-534 521,-540 515,-540"/>
+<text text-anchor="middle" x="440" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">index_genomic_alignment_samtools</text>
 </g>
-<!-- 31&#45;&gt;24 -->
-<g id="edge43" class="edge">
-<title>31&#45;&gt;24</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M803.8857,-294.9078C778.6315,-284.5765 740.2554,-268.8772 708.7903,-256.0051"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="709.85,-252.6571 699.2693,-252.1102 707.1996,-259.136 709.85,-252.6571"/>
+<!-- 30&#45;&gt;31 -->
+<g id="edge52" class="edge">
+<title>30&#45;&gt;31</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M453.4578,-575.8314C451.5116,-568.0463 449.1932,-558.7729 447.0337,-550.1347"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="450.4242,-549.2658 444.6033,-540.4133 443.6332,-550.9636 450.4242,-549.2658"/>
+</g>
+<!-- 31&#45;&gt;26 -->
+<g id="edge42" class="edge">
+<title>31&#45;&gt;26</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M395.0831,-503.8314C371.065,-494.1162 341.3166,-482.0831 316.0408,-471.8592"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="317.1767,-468.5432 306.5939,-468.038 314.5518,-475.0325 317.1767,-468.5432"/>
+</g>
+<!-- 31&#45;&gt;28 -->
+<g id="edge47" class="edge">
+<title>31&#45;&gt;28</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M465.7389,-503.8314C478.5437,-494.7927 494.1909,-483.7476 507.9719,-474.0198"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="510.118,-476.7891 516.2693,-468.1628 506.0812,-471.0703 510.118,-476.7891"/>
 </g>
 <!-- 32 -->
 <g id="node33" class="node">
 <title>32</title>
-<path fill="none" stroke="#d8c356" stroke-width="2" d="M636.5,-540C636.5,-540 515.5,-540 515.5,-540 509.5,-540 503.5,-534 503.5,-528 503.5,-528 503.5,-516 503.5,-516 503.5,-510 509.5,-504 515.5,-504 515.5,-504 636.5,-504 636.5,-504 642.5,-504 648.5,-510 648.5,-516 648.5,-516 648.5,-528 648.5,-528 648.5,-534 642.5,-540 636.5,-540"/>
-<text text-anchor="middle" x="576" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">extract_transcripts_as_bed12</text>
+<path fill="none" stroke="#70d856" stroke-width="2" d="M322.5,-540C322.5,-540 201.5,-540 201.5,-540 195.5,-540 189.5,-534 189.5,-528 189.5,-528 189.5,-516 189.5,-516 189.5,-510 195.5,-504 201.5,-504 201.5,-504 322.5,-504 322.5,-504 328.5,-504 334.5,-510 334.5,-516 334.5,-516 334.5,-528 334.5,-528 334.5,-534 328.5,-540 322.5,-540"/>
+<text text-anchor="middle" x="262" y="-519.5" font-family="sans" font-size="10.00" fill="#000000">extract_transcripts_as_bed12</text>
 </g>
-<!-- 32&#45;&gt;29 -->
-<g id="edge50" class="edge">
-<title>32&#45;&gt;29</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M601.4866,-503.8314C614.1659,-494.7927 629.6596,-483.7476 643.3055,-474.0198"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="645.4105,-476.8176 651.5216,-468.1628 641.3471,-471.1176 645.4105,-476.8176"/>
+<!-- 32&#45;&gt;26 -->
+<g id="edge39" class="edge">
+<title>32&#45;&gt;26</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M262,-503.8314C262,-496.131 262,-486.9743 262,-478.4166"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="265.5001,-478.4132 262,-468.4133 258.5001,-478.4133 265.5001,-478.4132"/>
+</g>
+<!-- 33&#45;&gt;26 -->
+<g id="edge40" class="edge">
+<title>33&#45;&gt;26</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M576.9804,-575.7105C571.4319,-554.9846 559.3484,-521.7815 536,-504 504.0611,-479.6762 398.7824,-464.2247 328.416,-456.3455"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="328.6219,-452.8472 318.3003,-455.2378 327.8599,-459.8056 328.6219,-452.8472"/>
+</g>
+<!-- 33&#45;&gt;28 -->
+<g id="edge45" class="edge">
+<title>33&#45;&gt;28</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M593.6799,-575.8098C604.9728,-557.1902 618.1244,-527.7044 607,-504 600.7307,-490.6411 589.3532,-479.4434 577.8495,-470.7709"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="579.7136,-467.8029 569.522,-464.9075 575.6836,-473.5265 579.7136,-467.8029"/>
 </g>
 <!-- 33&#45;&gt;31 -->
-<g id="edge53" class="edge">
+<g id="edge51" class="edge">
 <title>33&#45;&gt;31</title>
-<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M831,-359.8314C831,-352.131 831,-342.9743 831,-334.4166"/>
-<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="834.5001,-334.4132 831,-324.4133 827.5001,-334.4133 834.5001,-334.4132"/>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M545.4197,-575.8314C526.9675,-566.4089 504.2455,-554.8062 484.627,-544.7883"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="486.0667,-541.5935 475.5689,-540.1628 482.8832,-547.8278 486.0667,-541.5935"/>
+</g>
+<!-- 34&#45;&gt;27 -->
+<g id="edge43" class="edge">
+<title>34&#45;&gt;27</title>
+<path fill="none" stroke="#c0c0c0" stroke-width="2" d="M592.9338,-359.8314C573.1547,-349.2825 548.2517,-336.0009 528.1309,-325.2698"/>
+<polygon fill="#c0c0c0" stroke="#c0c0c0" stroke-width="2" points="529.7289,-322.1555 519.2583,-320.5378 526.4348,-328.3319 529.7289,-322.1555"/>
 </g>
 </g>
 </svg>
diff --git a/scripts/labkey_to_snakemake.py b/scripts/labkey_to_snakemake.py
index 41fbb3e..a484459 100755
--- a/scripts/labkey_to_snakemake.py
+++ b/scripts/labkey_to_snakemake.py
@@ -60,6 +60,11 @@ def main():
                         "\nif '--remote' is specified.",
                         metavar="STR")
 
+    parser.add_argument("--logo",
+                        default='None',
+                        help="zavolan lab logo path",
+                        metavar="STR")
+
     parser.add_argument("--table-name",
                         help="Name of LabKey table; required if '--remote'" +
                         " is specified.",
@@ -110,6 +115,29 @@ def main():
     parser.add_argument("--config-file",
                         help="Configuration file to be used by Snakemake")
 
+    parser.add_argument("--abspath",
+                        choices=[os.path.abspath, str],
+                        default=str,
+                        help="Absolute path")
+
+    parser.add_argument("--samples_dir",
+                        help="Path one level within Rhea",
+                        default='')
+
+    parser.add_argument("--output_dir",
+                        default='',
+                        help="Path of the results directory")
+
+    parser.add_argument("--multiqc-url",
+                        dest="multiqc_url",
+                        default="No url",
+                        help="Multiqc url of the group that did the analysis")
+
+    parser.add_argument("--multiqc-intro-text",
+                        dest="multiqc_intro_text",
+                        default="No description provided by user",
+                        help="Multiqc small intro text of the analysis info")
+
     try:
         options = parser.parse_args()
     except(Exception):
@@ -179,13 +207,15 @@ def main():
             input_dict.loc['replicate_name', 'labkey']] + "_" + row[
             input_dict.loc['condition', 'labkey']]
         if row[input_dict.loc['seqmode', 'labkey']] == 'PAIRED':
-            snakemake_table.loc[index, 'seqmode'] = 'paired_end'
+            snakemake_table.loc[index, 'seqmode'] = 'pe'
         elif row[input_dict.loc['seqmode', 'labkey']] == 'SINGLE':
-            snakemake_table.loc[index, 'seqmode'] = 'single_end'
+            snakemake_table.loc[index, 'seqmode'] = 'se'
 
-        fq1 = os.path.join(
-            row[input_dict.loc['fastq_path', 'labkey']],
-            row[input_dict.loc['fq1', 'labkey']])
+        fq1 = options.abspath(
+            os.path.join(
+                options.samples_dir,
+                row[input_dict.loc['fastq_path', 'labkey']],
+                row[input_dict.loc['fq1', 'labkey']]))
 
         snakemake_table.loc[index, 'fq1'] = fq1
         read_length = get_read_length(fq1)
@@ -200,25 +230,29 @@ def main():
             ' ', '_').lower()
         snakemake_table.loc[index, 'organism'] = organism
 
-        snakemake_table.loc[index, 'gtf'] = os.path.join(
-            options.genomes_path,
-            organism,
-            'annotation.gtf')
-
-        snakemake_table.loc[index, 'gtf_filtered'] = os.path.join(
-            options.genomes_path,
-            organism,
-            'annotation.gtf')
-
-        snakemake_table.loc[index, 'genome'] = os.path.join(
-            options.genomes_path,
-            organism,
-            'genome.fa')
-
-        snakemake_table.loc[index, 'tr_fasta_filtered'] = os.path.join(
-            options.genomes_path,
-            organism,
-            'transcriptome.fa')
+        snakemake_table.loc[index, 'gtf'] = options.abspath(
+            os.path.join(
+                options.genomes_path,
+                organism,
+                'annotation.gtf'))
+
+        snakemake_table.loc[index, 'gtf_filtered'] = options.abspath(
+            os.path.join(
+                options.genomes_path,
+                organism,
+                'annotation.gtf'))
+
+        snakemake_table.loc[index, 'genome'] = options.abspath(
+            os.path.join(
+                options.genomes_path,
+                organism,
+                'genome.fa'))
+
+        snakemake_table.loc[index, 'tr_fasta_filtered'] = options.abspath(
+            os.path.join(
+                options.genomes_path,
+                organism,
+                'transcriptome.fa'))
 
         snakemake_table.loc[index, 'sd'] = row[
             input_dict.loc['sd', 'labkey']]
@@ -239,10 +273,22 @@ def main():
             get_kallisto_directionality(
                 row[input_dict.loc['mate1_direction', 'labkey']])
 
+        snakemake_table.loc[index, 'alfa_directionality'] = \
+            get_alfa_directionality(
+                row[input_dict.loc['mate1_direction', 'labkey']])
+
+        plus, minus = get_alfa_plus_minus(
+            row[input_dict.loc['mate1_direction', 'labkey']])
+
+        snakemake_table.loc[index, 'alfa_plus'] = plus
+        snakemake_table.loc[index, 'alfa_minus'] = minus
+
         if row[input_dict.loc['seqmode', 'labkey']] == 'PAIRED':
-            fq2 = os.path.join(
-                row[input_dict.loc['fastq_path', 'labkey']],
-                row[input_dict.loc['fq2', 'labkey']])
+            fq2 = options.abspath(
+                os.path.join(
+                    options.samples_dir,
+                    row[input_dict.loc['fastq_path', 'labkey']],
+                    row[input_dict.loc['fq2', 'labkey']]))
             snakemake_table.loc[index, 'fq2'] = fq2
 
             snakemake_table.loc[index, 'fq2_3p'] = row[
@@ -272,16 +318,65 @@ def main():
         header=True,
         index=False)
 
+    samples = options.abspath(
+        os.path.join(
+            options.samples_dir,
+            options.samples_table))
+
+    output_dir = options.abspath(
+        os.path.join(
+            options.output_dir,
+            "results"))
+
+    logdir = options.abspath(
+        os.path.join(
+            options.output_dir,
+            "logs"))
+
+    kallisto_indexes = options.abspath(
+        os.path.join(
+            options.output_dir,
+            "results",
+            "kallisto_indexes"))
+
+    salmon_indexes = options.abspath(
+        os.path.join(
+            options.output_dir,
+            "results",
+            "salmon_indexes"))
+
+    star_indexes = options.abspath(
+        os.path.join(
+            options.output_dir,
+            "results",
+            "star_indexes"))
+
+    alfa_indexes = options.abspath(
+        os.path.join(
+            options.output_dir,
+            "results",
+            "alfa_indexes"))
+
+    logo = options.abspath(
+        os.path.join(
+            options.logo))
+
+    multiqc_url = options.multiqc_url
+    multiqc_intro_text = options.multiqc_intro_text
+
     # Read file and infer read size for sjdbovwerhang
     with open(options.config_file, 'w') as config_file:
-        config_file.write('''---
-  samples: "''' + options.samples_table + '''"
-  output_dir: "results/"
-  log_dir: "logs/"
-  kallisto_indexes: "results/kallisto_indexes/"
-  salmon_indexes: "results/salmon_indexes/"
-  star_indexes: "results/star_indexes/"
-  alfa_indexes: "results/alfa_indexes/"
+        config_file.write(f'''---
+  samples: "{samples}"
+  output_dir: "{output_dir}"
+  log_dir: "{logdir}"
+  kallisto_indexes: "{kallisto_indexes}"
+  salmon_indexes: "{salmon_indexes}"
+  star_indexes: "{star_indexes}"
+  alfa_indexes: "{alfa_indexes}"
+  logo: "{logo}"
+  multiqc_url: "{multiqc_url}"
+  multiqc_intro_text: "{multiqc_intro_text}"
 ...''')
 
     sys.stdout.write('Create snakemake table finished successfully...\n')
@@ -310,7 +405,7 @@ def get_read_length(filename):
 
 def infer_kmer_length(read_length):
     if read_length <= 50:
-            kmer = 21
+        kmer = 21
     elif read_length > 50:
         kmer = 31
     return kmer
@@ -326,6 +421,29 @@ def get_kallisto_directionality(directionality):
     return final_direction
 
 
+def get_alfa_directionality(directionality):
+    if directionality == 'SENSE':
+        final_direction = 'fr-firststrand'
+    elif directionality == 'ANTISENSE':
+        final_direction = 'fr-secondstrand'
+    else:
+        final_direction = ''
+    return final_direction
+
+
+def get_alfa_plus_minus(directionality):
+    if directionality == 'SENSE':
+        plus = 'str1'
+        minus = 'str2'
+    elif directionality == 'ANTISENSE':
+        minus = 'str1'
+        plus = 'str2'
+    else:
+        plus = ''
+        minus = ''
+    return plus, minus
+
+
 def trim_polya(sense):
     if sense == 'SENSE':
         polya_3p = 'AAAAAAAAAAAAAAAAA'
diff --git a/tests/input_files/config.yaml b/tests/input_files/config.yaml
index 0d87967..f8a5d8c 100644
--- a/tests/input_files/config.yaml
+++ b/tests/input_files/config.yaml
@@ -1,9 +1,12 @@
 ---
   samples: "../input_files/samples.tsv"
-  output_dir: "results/"
-  log_dir: "logs/"
-  kallisto_indexes: "results/kallisto_indexes/"
-  salmon_indexes: "results/salmon_indexes/"
-  star_indexes: "results/star_indexes/"
-  alfa_indexes: "results/alfa_indexes/"
-...
+  output_dir: "results"
+  log_dir: "logs"
+  kallisto_indexes: "results/kallisto_indexes"
+  salmon_indexes: "results/salmon_indexes"
+  star_indexes: "results/star_indexes"
+  alfa_indexes: "results/alfa_indexes"
+  logo: "../../images/logo.128px.png"
+  multiqc_intro_text: "No description provided by user"
+  multiqc_url: "https://zavolan.biozentrum.unibas.ch/"
+...
\ No newline at end of file
diff --git a/tests/input_files/config_alfa.yaml b/tests/input_files/config_alfa.yaml
index 33f97d5..2707cd4 100644
--- a/tests/input_files/config_alfa.yaml
+++ b/tests/input_files/config_alfa.yaml
@@ -6,4 +6,7 @@
   salmon_indexes: "results/salmon_indexes/"
   star_indexes: "results/star_indexes/"
   alfa_indexes: "results/alfa_indexes/"
+  logo: "../../images/logo.128px.png"
+  multiqc_intro_text: "No description provided by user"
+  multiqc_url: "https://zavolan.biozentrum.unibas.ch/"
 ...
diff --git a/tests/input_files/samples.tsv b/tests/input_files/samples.tsv
index d7ff5bb..762dc11 100644
--- a/tests/input_files/samples.tsv
+++ b/tests/input_files/samples.tsv
@@ -1,3 +1,3 @@
-sample	seqmode	fq1	index_size	kmer	fq1_3p	fq1_5p	organism	gtf	gtf_filtered	genome	tr_fasta_filtered	sd	mean	multimappers	soft_clip	pass_mode	libtype	fq1_polya_3p	fq1_polya_5p	kallisto_directionality	fq2	fq2_3p	fq2_5p	fq2_polya_3p	fq2_polya_5p
-synthetic_10_reads_paired_synthetic_10_reads_paired	paired_end	../input_files/project1/synthetic.mate_1.fastq.gz	75	31	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/genome.fa	../input_files/homo_sapiens/transcriptome.fa	100	250	10	EndToEnd	None	A	AAAAAAAAAAAAAAAAA	XXXXXXXXXXXXXXXXX	--fr	../input_files/project1/synthetic.mate_2.fastq.gz	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	XXXXXXXXXXXXXXXXX	TTTTTTTTTTTTTTTTT
-synthetic_10_reads_mate_1_synthetic_10_reads_mate_1	single_end	../input_files/project2/synthetic.mate_1.fastq.gz	75	31	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/genome.fa	../input_files/homo_sapiens/transcriptome.fa	100	250	10	EndToEnd	None	A	AAAAAAAAAAAAAAAAA	XXXXXXXXXXXXXXXXX	--fr	XXXXXXXXXXXXX	XXXXXXXXXXXXX	XXXXXXXXXXXXX	XXXXXXXXXXXXX	XXXXXXXXXXXXX
+sample	seqmode	fq1	index_size	kmer	fq1_3p	fq1_5p	organism	gtf	gtf_filtered	genome	tr_fasta_filtered	sd	mean	multimappers	soft_clip	pass_mode	libtype	fq1_polya_3p	fq1_polya_5p	kallisto_directionality	alfa_directionality	alfa_plus	alfa_minus	fq2	fq2_3p	fq2_5p	fq2_polya_3p	fq2_polya_5p
+synthetic_10_reads_paired_synthetic_10_reads_paired	pe	../input_files/project1/synthetic.mate_1.fastq.gz	75	31	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/genome.fa	../input_files/homo_sapiens/transcriptome.fa	100	250	10	EndToEnd	None	A	AAAAAAAAAAAAAAAAA	XXXXXXXXXXXXXXXXX	--fr	fr-firststrand	str1	str2	../input_files/project1/synthetic.mate_2.fastq.gz	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	XXXXXXXXXXXXXXXXX	TTTTTTTTTTTTTTTTT
+synthetic_10_reads_mate_1_synthetic_10_reads_mate_1	se	../input_files/project2/synthetic.mate_1.fastq.gz	75	31	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/annotation.gtf	../input_files/homo_sapiens/genome.fa	../input_files/homo_sapiens/transcriptome.fa	100	250	10	EndToEnd	None	A	AAAAAAAAAAAAAAAAA	XXXXXXXXXXXXXXXXX	--fr	fr-firststrand	str1	str2	XXXXXXXXXXXXX	XXXXXXXXXXXXX	XXXXXXXXXXXXX	XXXXXXXXXXXXX	XXXXXXXXXXXXX
diff --git a/tests/input_files/samples_alfa.tsv b/tests/input_files/samples_alfa.tsv
index df03248..9ef9068 100644
--- a/tests/input_files/samples_alfa.tsv
+++ b/tests/input_files/samples_alfa.tsv
@@ -1,5 +1,5 @@
-sample	seqmode	fq1	index_size	kmer	fq2	fq1_3p	fq1_5p	fq2_3p	fq2_5p	organism	gtf	gtf_filtered	genome	tr_fasta_filtered	sd	mean	multimappers	soft_clip	pass_mode	libtype	kallisto_directionality	fq1_polya	fq2_polya
-paired_end_R1_on_plus_sense	paired_end	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	GATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--fr	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT
-paired_end_R1_on_plus_antisense	paired_end	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--rf	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT
-paired_end_R1_on_minus_sense	paired_end	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--fr	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT
-paired_end_R1_on_minus_antisense	paired_end	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--rf	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT
+sample	seqmode	fq1	index_size	kmer	fq2	fq1_3p	fq1_5p	fq2_3p	fq2_5p	organism	gtf	gtf_filtered	genome	tr_fasta_filtered	sd	mean	multimappers	soft_clip	pass_mode	libtype	kallisto_directionality	fq1_polya	fq2_polya	alfa_directionality	alfa_plus	alfa_minus
+paired_end_R1_on_plus_sense	pe	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	GATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--fr	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT	fr-firststrand	str1	str2
+paired_end_R1_on_plus_antisense	pe	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--rf	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT	fr-secondstrand	str2	str1
+paired_end_R1_on_minus_sense	pe	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--fr	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT	fr-firststrand	str1	str2
+paired_end_R1_on_minus_antisense	pe	XXXXXXXXXXXXX	75	31	XXXXXXXXXXXXX	AGATCGGAAGAGCACA	XXXXXXXXXXXXX	AGATCGGAAGAGCGT	XXXXXXXXXXXXX	homo_sapiens	../input_files/homo_sapiens/quick_start.gtf	../input_files/homo_sapiens/quick_start.gtf	XXXXXXXXXXXXX	XXXXXXXXXXXXX	100	250	10	EndToEnd	None	A	--rf	AAAAAAAAAAAAAAAAA	TTTTTTTTTTTTTTTTT	fr-secondstrand	str2	str1
diff --git a/tests/test_alfa/expected_output.md5 b/tests/test_alfa/expected_output.md5
index 7b2472f..797b178 100644
--- a/tests/test_alfa/expected_output.md5
+++ b/tests/test_alfa/expected_output.md5
@@ -1,42 +1,42 @@
 90e42aa46890e9cd0a47800428699fbf  results/alfa_indexes/homo_sapiens/75/ALFA/sorted_genes.stranded.ALFA_index
 ccc3cf5a57fddb0d469e597d4376b1bf  results/alfa_indexes/homo_sapiens/75/ALFA/sorted_genes.unstranded.ALFA_index
-e5959524a2daf35da9249fb313920315  results/paired_end/paired_end_R1_on_minus_antisense/ALFA/Unique/paired_end_R1_on_minus_antisense.ALFA_feature_counts.tsv
-c406c1800d3690dd774aaa7e3c190523  results/paired_end/paired_end_R1_on_minus_sense/ALFA/Unique/paired_end_R1_on_minus_sense.ALFA_feature_counts.tsv
-c406c1800d3690dd774aaa7e3c190523  results/paired_end/paired_end_R1_on_plus_antisense/ALFA/Unique/paired_end_R1_on_plus_antisense.ALFA_feature_counts.tsv
-e5959524a2daf35da9249fb313920315  results/paired_end/paired_end_R1_on_plus_sense/ALFA/Unique/paired_end_R1_on_plus_sense.ALFA_feature_counts.tsv
-e5959524a2daf35da9249fb313920315  results/paired_end/paired_end_R1_on_minus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_minus_antisense.ALFA_feature_counts.tsv
-c406c1800d3690dd774aaa7e3c190523  results/paired_end/paired_end_R1_on_minus_sense/ALFA/UniqueMultiple/paired_end_R1_on_minus_sense.ALFA_feature_counts.tsv
-c406c1800d3690dd774aaa7e3c190523  results/paired_end/paired_end_R1_on_plus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_plus_antisense.ALFA_feature_counts.tsv
-e5959524a2daf35da9249fb313920315  results/paired_end/paired_end_R1_on_plus_sense/ALFA/UniqueMultiple/paired_end_R1_on_plus_sense.ALFA_feature_counts.tsv
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_minus_antisense_Signal.UniqueMultiple.out.minus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_minus_antisense_Signal.UniqueMultiple.out.plus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_sense/ALFA/UniqueMultiple/paired_end_R1_on_minus_sense_Signal.UniqueMultiple.out.minus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_sense/ALFA/UniqueMultiple/paired_end_R1_on_minus_sense_Signal.UniqueMultiple.out.plus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_plus_antisense_Signal.UniqueMultiple.out.minus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_plus_antisense_Signal.UniqueMultiple.out.plus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_sense/ALFA/UniqueMultiple/paired_end_R1_on_plus_sense_Signal.UniqueMultiple.out.minus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_sense/ALFA/UniqueMultiple/paired_end_R1_on_plus_sense_Signal.UniqueMultiple.out.plus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_antisense/ALFA/Unique/paired_end_R1_on_minus_antisense_Signal.Unique.out.minus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_antisense/ALFA/Unique/paired_end_R1_on_minus_antisense_Signal.Unique.out.plus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_sense/ALFA/Unique/paired_end_R1_on_minus_sense_Signal.Unique.out.minus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_sense/ALFA/Unique/paired_end_R1_on_minus_sense_Signal.Unique.out.plus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_antisense/ALFA/Unique/paired_end_R1_on_plus_antisense_Signal.Unique.out.minus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_antisense/ALFA/Unique/paired_end_R1_on_plus_antisense_Signal.Unique.out.plus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_sense/ALFA/Unique/paired_end_R1_on_plus_sense_Signal.Unique.out.minus.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_sense/ALFA/Unique/paired_end_R1_on_plus_sense_Signal.Unique.out.plus.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.UniqueMultiple.str1.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.UniqueMultiple.str2.out.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.Unique.str1.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.Unique.str2.out.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.UniqueMultiple.str1.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.UniqueMultiple.str2.out.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.Unique.str1.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.Unique.str2.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.UniqueMultiple.str1.out.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.UniqueMultiple.str2.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.Unique.str1.out.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.Unique.str2.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.UniqueMultiple.str1.out.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.UniqueMultiple.str2.out.bg
-8e23d52d7f635d927e292174f33168eb  results/paired_end/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.Unique.str1.out.bg
-5e90c760710980f4f4866dbe9aa32c6c  results/paired_end/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.Unique.str2.out.bg
+e5959524a2daf35da9249fb313920315  results/samples/paired_end_R1_on_minus_antisense/ALFA/Unique/paired_end_R1_on_minus_antisense.ALFA_feature_counts.tsv
+c406c1800d3690dd774aaa7e3c190523  results/samples/paired_end_R1_on_minus_sense/ALFA/Unique/paired_end_R1_on_minus_sense.ALFA_feature_counts.tsv
+c406c1800d3690dd774aaa7e3c190523  results/samples/paired_end_R1_on_plus_antisense/ALFA/Unique/paired_end_R1_on_plus_antisense.ALFA_feature_counts.tsv
+e5959524a2daf35da9249fb313920315  results/samples/paired_end_R1_on_plus_sense/ALFA/Unique/paired_end_R1_on_plus_sense.ALFA_feature_counts.tsv
+e5959524a2daf35da9249fb313920315  results/samples/paired_end_R1_on_minus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_minus_antisense.ALFA_feature_counts.tsv
+c406c1800d3690dd774aaa7e3c190523  results/samples/paired_end_R1_on_minus_sense/ALFA/UniqueMultiple/paired_end_R1_on_minus_sense.ALFA_feature_counts.tsv
+c406c1800d3690dd774aaa7e3c190523  results/samples/paired_end_R1_on_plus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_plus_antisense.ALFA_feature_counts.tsv
+e5959524a2daf35da9249fb313920315  results/samples/paired_end_R1_on_plus_sense/ALFA/UniqueMultiple/paired_end_R1_on_plus_sense.ALFA_feature_counts.tsv
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_minus_antisense.UniqueMultiple.minus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_minus_antisense.UniqueMultiple.plus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_sense/ALFA/UniqueMultiple/paired_end_R1_on_minus_sense.UniqueMultiple.minus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_sense/ALFA/UniqueMultiple/paired_end_R1_on_minus_sense.UniqueMultiple.plus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_plus_antisense.UniqueMultiple.minus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_antisense/ALFA/UniqueMultiple/paired_end_R1_on_plus_antisense.UniqueMultiple.plus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_sense/ALFA/UniqueMultiple/paired_end_R1_on_plus_sense.UniqueMultiple.minus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_sense/ALFA/UniqueMultiple/paired_end_R1_on_plus_sense.UniqueMultiple.plus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_antisense/ALFA/Unique/paired_end_R1_on_minus_antisense.Unique.minus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_antisense/ALFA/Unique/paired_end_R1_on_minus_antisense.Unique.plus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_sense/ALFA/Unique/paired_end_R1_on_minus_sense.Unique.minus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_sense/ALFA/Unique/paired_end_R1_on_minus_sense.Unique.plus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_antisense/ALFA/Unique/paired_end_R1_on_plus_antisense.Unique.minus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_antisense/ALFA/Unique/paired_end_R1_on_plus_antisense.Unique.plus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_sense/ALFA/Unique/paired_end_R1_on_plus_sense.Unique.minus.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_sense/ALFA/Unique/paired_end_R1_on_plus_sense.Unique.plus.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.UniqueMultiple.str1.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.UniqueMultiple.str2.out.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.Unique.str1.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_antisense/STAR_coverage/paired_end_R1_on_minus_antisense_Signal.Unique.str2.out.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.UniqueMultiple.str1.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.UniqueMultiple.str2.out.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.Unique.str1.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_minus_sense/STAR_coverage/paired_end_R1_on_minus_sense_Signal.Unique.str2.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.UniqueMultiple.str1.out.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.UniqueMultiple.str2.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.Unique.str1.out.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_antisense/STAR_coverage/paired_end_R1_on_plus_antisense_Signal.Unique.str2.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.UniqueMultiple.str1.out.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.UniqueMultiple.str2.out.bg
+8e23d52d7f635d927e292174f33168eb  results/samples/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.Unique.str1.out.bg
+5e90c760710980f4f4866dbe9aa32c6c  results/samples/paired_end_R1_on_plus_sense/STAR_coverage/paired_end_R1_on_plus_sense_Signal.Unique.str2.out.bg
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense_Aligned.sortedByCoord.out.bam b/tests/test_alfa/results/samples/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense.pe.Aligned.sortedByCoord.out.bam
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense_Aligned.sortedByCoord.out.bam
rename to tests/test_alfa/results/samples/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense.pe.Aligned.sortedByCoord.out.bam
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense_Aligned.sortedByCoord.out.bam.bai b/tests/test_alfa/results/samples/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense.pe.Aligned.sortedByCoord.out.bam.bai
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense_Aligned.sortedByCoord.out.bam.bai
rename to tests/test_alfa/results/samples/paired_end_R1_on_minus_antisense/map_genome/paired_end_R1_on_minus_antisense.pe.Aligned.sortedByCoord.out.bam.bai
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense_Aligned.sortedByCoord.out.bam b/tests/test_alfa/results/samples/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense.pe.Aligned.sortedByCoord.out.bam
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense_Aligned.sortedByCoord.out.bam
rename to tests/test_alfa/results/samples/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense.pe.Aligned.sortedByCoord.out.bam
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense_Aligned.sortedByCoord.out.bam.bai b/tests/test_alfa/results/samples/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense.pe.Aligned.sortedByCoord.out.bam.bai
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense_Aligned.sortedByCoord.out.bam.bai
rename to tests/test_alfa/results/samples/paired_end_R1_on_minus_sense/map_genome/paired_end_R1_on_minus_sense.pe.Aligned.sortedByCoord.out.bam.bai
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense_Aligned.sortedByCoord.out.bam b/tests/test_alfa/results/samples/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense.pe.Aligned.sortedByCoord.out.bam
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense_Aligned.sortedByCoord.out.bam
rename to tests/test_alfa/results/samples/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense.pe.Aligned.sortedByCoord.out.bam
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense_Aligned.sortedByCoord.out.bam.bai b/tests/test_alfa/results/samples/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense.pe.Aligned.sortedByCoord.out.bam.bai
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense_Aligned.sortedByCoord.out.bam.bai
rename to tests/test_alfa/results/samples/paired_end_R1_on_plus_antisense/map_genome/paired_end_R1_on_plus_antisense.pe.Aligned.sortedByCoord.out.bam.bai
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense_Aligned.sortedByCoord.out.bam b/tests/test_alfa/results/samples/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense.pe.Aligned.sortedByCoord.out.bam
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense_Aligned.sortedByCoord.out.bam
rename to tests/test_alfa/results/samples/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense.pe.Aligned.sortedByCoord.out.bam
diff --git a/tests/test_alfa/results/paired_end/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense_Aligned.sortedByCoord.out.bam.bai b/tests/test_alfa/results/samples/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense.pe.Aligned.sortedByCoord.out.bam.bai
similarity index 100%
rename from tests/test_alfa/results/paired_end/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense_Aligned.sortedByCoord.out.bam.bai
rename to tests/test_alfa/results/samples/paired_end_R1_on_plus_sense/map_genome/paired_end_R1_on_plus_sense.pe.Aligned.sortedByCoord.out.bam.bai
diff --git a/tests/test_alfa/test.sh b/tests/test_alfa/test.sh
index 523eea4..1472685 100755
--- a/tests/test_alfa/test.sh
+++ b/tests/test_alfa/test.sh
@@ -33,7 +33,7 @@ snakemake \
     --use-singularity \
     --singularity-args="--bind ${PWD}/../input_files,${PWD}/../../images" \
     --verbose \
-    results/ALFA/ALFA_plots.concat.png
+    results/ALFA/ALFA_plots_mqc.png
 
 # Check md5 sum of some output files
 find results/ -type f -name \*\.gz -exec gunzip '{}' \;
diff --git a/tests/test_integration_workflow/expected_output.files b/tests/test_integration_workflow/expected_output.files
index d2af640..cc9d90b 100644
--- a/tests/test_integration_workflow/expected_output.files
+++ b/tests/test_integration_workflow/expected_output.files
@@ -81,14 +81,14 @@ results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10
 results/transcriptome/homo_sapiens/transcriptome.fa
 results/alfa_indexes/homo_sapiens/75/ALFA/sorted_genes.stranded.ALFA_index
 results/alfa_indexes/homo_sapiens/75/ALFA/sorted_genes.unstranded.ALFA_index
-results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.UniqueMultiple.out.minus.bg
-results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.UniqueMultiple.out.plus.bg
+results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.UniqueMultiple.minus.bg
+results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.UniqueMultiple.plus.bg
 results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.Unique.out.minus.bg
 results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.Unique.out.plus.bg
-results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.UniqueMultiple.out.minus.bg
-results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.UniqueMultiple.out.plus.bg
-results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.Unique.out.minus.bg
-results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.Unique.out.plus.bg
+results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired.UniqueMultiple.minus.bg
+results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired.UniqueMultiple.plus.bg
+results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired.Unique.minus.bg
+results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired.Unique.plus.bg
 results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.ALFA_feature_counts.tsv
 results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.ALFA_feature_counts.tsv
 results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired.ALFA_feature_counts.tsv
diff --git a/tests/test_integration_workflow/expected_output.md5 b/tests/test_integration_workflow/expected_output.md5
index 9d2e3a7..f8f074e 100644
--- a/tests/test_integration_workflow/expected_output.md5
+++ b/tests/test_integration_workflow/expected_output.md5
@@ -1,7 +1,7 @@
 cbaebdb67aee4784b64aff7fec9fda42  results/kallisto_indexes/homo_sapiens/kallisto.idx
 0ac1afd9a4f380afd70be75b21814c64  results/salmon_indexes/homo_sapiens/31/salmon.idx/versionInfo.json
 51b5292e3a874119c0e1aa566e95d70c  results/salmon_indexes/homo_sapiens/31/salmon.idx/duplicate_clusters.tsv
-97f5b582cd4331705ef75c7f7159b9bf  results/salmon_indexes/homo_sapiens/31/salmon.idx/info.json
+7f8679a6e6622e1b611642b5735f357c  results/salmon_indexes/homo_sapiens/31/salmon.idx/info.json
 dee7cdc194d5d0617552b7a3b5ad8dfb  results/star_indexes/homo_sapiens/75/STAR_index/chrLength.txt
 8e2e96e2d6b7f29940ad5de40662b7cb  results/star_indexes/homo_sapiens/75/STAR_index/chrNameLength.txt
 d0826904b8afa45352906ad9591f2bfb  results/star_indexes/homo_sapiens/75/STAR_index/chrName.txt
@@ -48,7 +48,7 @@ b28aac49f537b8cba364b6422458ad28  results/samples/synthetic_10_reads_paired_synt
 2e77276535976efccb244627231624bf  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/quant_kallisto/abundance.tsv
 d013650f813b815a790c9e6a51c7559b  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/quant_kallisto/pseudoalignments.bam
 d41d8cd98f00b204e9800998ecf8427e  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/quant_kallisto/synthetic_10_reads_paired_synthetic_10_reads_paired.pe.kallisto.pseudo.sam
-fc2318f775d325689c32581f359256bf  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/synthetic_10_reads_paired_synthetic_10_reads_paired.salmon.pe/lib_format_counts.json
+981b59830d74d300bb5dd3e602e0d86f  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/synthetic_10_reads_paired_synthetic_10_reads_paired.salmon.pe/lib_format_counts.json
 989d6ee63b728fced9ec0249735ab83d  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/synthetic_10_reads_paired_synthetic_10_reads_paired.salmon.pe/aux_info/ambig_info.tsv
 3407f87245d0003e0ffbfdf6d8c04f20  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/synthetic_10_reads_paired_synthetic_10_reads_paired.salmon.pe/aux_info/expected_bias
 92bcd0592d22a6a58d0360fc76103e56  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/synthetic_10_reads_paired_synthetic_10_reads_paired.salmon.pe/aux_info/observed_bias
@@ -72,7 +72,7 @@ b28aac49f537b8cba364b6422458ad28  results/samples/synthetic_10_reads_mate_1_synt
 50a9b89a9f1da2c438cb0041b64faa0e  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/quant_kallisto/abundance.tsv
 fd8242418230a4edb33350be2e4f1d78  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/quant_kallisto/pseudoalignments.bam
 d41d8cd98f00b204e9800998ecf8427e  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/quant_kallisto/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.se.kallisto.pseudo.sam
-8bfb9bdb660d83c4198e84d62d0a2427  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.salmon.se/lib_format_counts.json
+d6ae863b39ca6ec5d0f63c03036f9dda  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.salmon.se/lib_format_counts.json
 989d6ee63b728fced9ec0249735ab83d  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.salmon.se/aux_info/ambig_info.tsv
 3407f87245d0003e0ffbfdf6d8c04f20  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.salmon.se/aux_info/expected_bias
 92bcd0592d22a6a58d0360fc76103e56  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.salmon.se/aux_info/observed_bias
@@ -81,28 +81,28 @@ d41d8cd98f00b204e9800998ecf8427e  results/samples/synthetic_10_reads_mate_1_synt
 3ce47cb1d62482c5d62337751d7e8552  results/transcriptome/homo_sapiens/transcriptome.fa
 6b44c507f0a1c9f7369db0bb1deef0fd  results/alfa_indexes/homo_sapiens/75/ALFA/sorted_genes.stranded.ALFA_index
 2caebc23faf78fdbbbdbb118d28bd6b5  results/alfa_indexes/homo_sapiens/75/ALFA/sorted_genes.unstranded.ALFA_index
-bcccf679a8c083d01527514c9f5680a0  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.UniqueMultiple.out.minus.bg
-ea91b4f85622561158bff2f7c9c312b3  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.UniqueMultiple.out.plus.bg
-bcccf679a8c083d01527514c9f5680a0  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.Unique.out.minus.bg
-ea91b4f85622561158bff2f7c9c312b3  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Signal.Unique.out.plus.bg
-90ae442ebf35015eab2dd4e804c2bafb  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.UniqueMultiple.out.minus.bg
-16652c037090f3eed1123618a2e75107  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.UniqueMultiple.out.plus.bg
-90ae442ebf35015eab2dd4e804c2bafb  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.Unique.out.minus.bg
-16652c037090f3eed1123618a2e75107  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Signal.Unique.out.plus.bg
+bcccf679a8c083d01527514c9f5680a0  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.UniqueMultiple.minus.bg
+ea91b4f85622561158bff2f7c9c312b3  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.UniqueMultiple.plus.bg
+bcccf679a8c083d01527514c9f5680a0  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.Unique.minus.bg
+ea91b4f85622561158bff2f7c9c312b3  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.Unique.plus.bg
+90ae442ebf35015eab2dd4e804c2bafb  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired.UniqueMultiple.minus.bg
+16652c037090f3eed1123618a2e75107  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired.UniqueMultiple.plus.bg
+90ae442ebf35015eab2dd4e804c2bafb  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired.Unique.minus.bg
+16652c037090f3eed1123618a2e75107  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired.Unique.plus.bg
 c1254a0bae19ac3ffc39f73099ffcf2b  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.ALFA_feature_counts.tsv
 c1254a0bae19ac3ffc39f73099ffcf2b  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/ALFA/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.ALFA_feature_counts.tsv
 53fd53f884352d0493b2ca99cef5d76d  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired.ALFA_feature_counts.tsv
 53fd53f884352d0493b2ca99cef5d76d  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/ALFA/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired.ALFA_feature_counts.tsv
-ec5aab1b79e7880dfa590e5bc7db5232  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Unique_plus.bw
-69e2bf688165e9fb7c9c49a8763f5632  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Unique_minus.bw
-ec5aab1b79e7880dfa590e5bc7db5232  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_UniqueMultiple_plus.bw
-69e2bf688165e9fb7c9c49a8763f5632  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_UniqueMultiple_minus.bw
-2767ca6a648f3e37b7e3b05ce7845460  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/bigWig/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Unique_plus.bw
-ed3428feeb7257b0a69ead76a417e339  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/bigWig/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Unique_minus.bw
-2767ca6a648f3e37b7e3b05ce7845460  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/bigWig/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_UniqueMultiple_plus.bw
 ed3428feeb7257b0a69ead76a417e339  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/bigWig/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_UniqueMultiple_minus.bw
-4f1b02d575be352daed7c34eefe181d1  results/multiqc_summary/multiqc_data/multiqc_fastqc.txt
+2767ca6a648f3e37b7e3b05ce7845460  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/bigWig/UniqueMultiple/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_UniqueMultiple_plus.bw
+ed3428feeb7257b0a69ead76a417e339  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/bigWig/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Unique_minus.bw
+2767ca6a648f3e37b7e3b05ce7845460  results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/bigWig/Unique/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Unique_plus.bw
+69e2bf688165e9fb7c9c49a8763f5632  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_UniqueMultiple_minus.bw
+ec5aab1b79e7880dfa590e5bc7db5232  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/UniqueMultiple/synthetic_10_reads_paired_synthetic_10_reads_paired_UniqueMultiple_plus.bw
+69e2bf688165e9fb7c9c49a8763f5632  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Unique_minus.bw
+ec5aab1b79e7880dfa590e5bc7db5232  results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/bigWig/Unique/synthetic_10_reads_paired_synthetic_10_reads_paired_Unique_plus.bw
 3e4db5fad83e162bcc19abbe81333a95  results/multiqc_summary/multiqc_data/multiqc_cutadapt.txt
 0c6363588cf6ff74d49f27c164185918  results/multiqc_summary/multiqc_data/multiqc_star.txt
 dd81441ca97912a62292d317af2c107c  results/multiqc_summary/multiqc_data/multiqc_kallisto.txt
-2f20ef564d8a7294e3e7b91c4433bcbd  results/multiqc_summary/multiqc_data/multiqc_general_stats.txt
+ba090b1b4a2473891de97493d3244956  results/multiqc_summary/multiqc_data/multiqc_fastqc.txt
+0703b4cb7ec2abfab13ccd5f58c2d536  results/multiqc_summary/multiqc_data/multiqc_general_stats.txt
diff --git a/tests/test_integration_workflow/test.local.sh b/tests/test_integration_workflow/test.local.sh
index ac6e45e..c938f10 100755
--- a/tests/test_integration_workflow/test.local.sh
+++ b/tests/test_integration_workflow/test.local.sh
@@ -38,15 +38,15 @@ find results/ -type f -name \*\.zip -exec sh -c 'unzip -o {} -d $(dirname {})' \
 md5sum --check "expected_output.md5"
 
 # Checksum file generated with
-# find results/ \
-#     -type f \
-#     -name \*\.gz \
-#     -exec gunzip '{}' \;
-# find results/ \
-#     -type f \
-#     -name \*\.zip \
-#     -exec sh -c 'unzip -o {} -d $(dirname {})' \;
-# md5sum $(cat expected_output.files) > expected_output.md5
+find results/ \
+    -type f \
+    -name \*\.gz \
+    -exec gunzip '{}' \;
+find results/ \
+    -type f \
+    -name \*\.zip \
+    -exec sh -c 'unzip -o {} -d $(dirname {})' \;
+md5sum $(cat expected_output.files) > expected_output.md5
 
 # Check whether STAR produces expected alignments
 # STAR alignments need to be fully within ground truth alignments for tests to pass; not checking 
@@ -55,7 +55,7 @@ md5sum --check "expected_output.md5"
 echo "Verifying STAR output"
 result=$(bedtools intersect -F 1 -v -bed \
     -a ../input_files/synthetic.mate_1.bed \
-    -b results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/map_genome/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Aligned.sortedByCoord.out.bam \
+    -b results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/map_genome/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.se.Aligned.sortedByCoord.out.bam \
     | wc -l)
 if [ $result != "0" ]; then
     echo "Alignments for mate 1 reads are not consistent with ground truth"
@@ -63,7 +63,7 @@ if [ $result != "0" ]; then
 fi
 result=$(bedtools intersect -F 1 -v -bed \
     -a <(cat ../input_files/synthetic.mate_1.bed ../input_files/synthetic.mate_2.bed) \
-    -b results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/map_genome/synthetic_10_reads_paired_synthetic_10_reads_paired_Aligned.sortedByCoord.out.bam \
+    -b results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/map_genome/synthetic_10_reads_paired_synthetic_10_reads_paired.pe.Aligned.sortedByCoord.out.bam \
     | wc -l)
 if [ $result != "0" ]; then
     echo "Alignments for mate 1 reads are not consistent with ground truth"
@@ -73,9 +73,9 @@ fi
 # Check whether Salmon assigns reads to expected genes
 echo "Verifying Salmon output"
 diff \
-    <(cat results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/salmon_quant/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
+    <(cat results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.salmon.se/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
     <(cat ../input_files/synthetic.mate_1.bed | cut -f7 | sort | uniq -c | sort -k2nr | awk '{printf($2"\t"$1"\n")}')
 diff \
-    <(cat results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/salmon_quant/synthetic_10_reads_paired_synthetic_10_reads_paired/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
+    <(cat results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/synthetic_10_reads_paired_synthetic_10_reads_paired.salmon.pe/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
     <(cat ../input_files/synthetic.mate_1.bed | cut -f7 | sort | uniq -c | sort -k2nr | awk '{printf($2"\t"$1"\n")}')
 
diff --git a/tests/test_integration_workflow/test.slurm.sh b/tests/test_integration_workflow/test.slurm.sh
index bc06d8e..fef99cc 100755
--- a/tests/test_integration_workflow/test.slurm.sh
+++ b/tests/test_integration_workflow/test.slurm.sh
@@ -57,7 +57,7 @@ md5sum --check "expected_output.md5"
 echo "Verifying STAR output"
 result=$(bedtools intersect -F 1 -v -bed \
     -a ../input_files/synthetic.mate_1.bed \
-    -b results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/map_genome/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1_Aligned.sortedByCoord.out.bam \
+    -b results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/map_genome/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.se.Aligned.sortedByCoord.out.bam \
     | wc -l)
 if [ $result != "0" ]; then
     echo "Alignments for mate 1 reads are not consistent with ground truth"
@@ -65,7 +65,7 @@ if [ $result != "0" ]; then
 fi
 result=$(bedtools intersect -F 1 -v -bed \
     -a <(cat ../input_files/synthetic.mate_1.bed ../input_files/synthetic.mate_2.bed) \
-    -b results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/map_genome/synthetic_10_reads_paired_synthetic_10_reads_paired_Aligned.sortedByCoord.out.bam \
+    -b results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/map_genome/synthetic_10_reads_paired_synthetic_10_reads_paired.pe.Aligned.sortedByCoord.out.bam \
     | wc -l)
 if [ $result != "0" ]; then
     echo "Alignments for mate 1 reads are not consistent with ground truth"
@@ -75,9 +75,10 @@ fi
 # Check whether Salmon assigns reads to expected genes
 echo "Verifying Salmon output"
 diff \
-    <(cat results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/salmon_quant/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
+    <(cat results/samples/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1/synthetic_10_reads_mate_1_synthetic_10_reads_mate_1.salmon.se/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
     <(cat ../input_files/synthetic.mate_1.bed | cut -f7 | sort | uniq -c | sort -k2nr | awk '{printf($2"\t"$1"\n")}')
 diff \
-    <(cat results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/salmon_quant/synthetic_10_reads_paired_synthetic_10_reads_paired/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
+    <(cat results/samples/synthetic_10_reads_paired_synthetic_10_reads_paired/synthetic_10_reads_paired_synthetic_10_reads_paired.salmon.pe/quant.genes.sf | cut -f1,5 | tail -n +2 | sort -k1,1) \
     <(cat ../input_files/synthetic.mate_1.bed | cut -f7 | sort | uniq -c | sort -k2nr | awk '{printf($2"\t"$1"\n")}')
 
+
diff --git a/tests/test_scripts_labkey_to_snakemake_api/expected_output.md5 b/tests/test_scripts_labkey_to_snakemake_api/expected_output.md5
index b2a6861..a94e93e 100644
--- a/tests/test_scripts_labkey_to_snakemake_api/expected_output.md5
+++ b/tests/test_scripts_labkey_to_snakemake_api/expected_output.md5
@@ -1,2 +1,2 @@
-b163e7b06bd9e0a71f2fd1fc4935fea9  config.yaml
-071f0e942321df5e38c8b2d458f7be06  samples.tsv
+aa583b9bad45eeb520d9d624cca0af78  samples.tsv
+c4cda83b069eb7ccb16547e1a9cdb34a  config.yaml
\ No newline at end of file
diff --git a/tests/test_scripts_labkey_to_snakemake_api/test.sh b/tests/test_scripts_labkey_to_snakemake_api/test.sh
index 5658fd6..64c5cec 100755
--- a/tests/test_scripts_labkey_to_snakemake_api/test.sh
+++ b/tests/test_scripts_labkey_to_snakemake_api/test.sh
@@ -23,7 +23,6 @@ set -x  # facilitates debugging by printing out executed commands
 user_dir=$PWD
 script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
 cd $script_dir
-
 cat << EOF | ( umask 0377; cat >> ${HOME}/.netrc; )
 machine ${LABKEY_HOST}
 login ${LABKEY_USER}
@@ -39,6 +38,7 @@ python "../../scripts/labkey_to_snakemake.py" \
     --remote \
     --project-name "TEST_LABKEY" \
     --table-name "RNA_Seq_data_template" \
+    --logo="../../images/logo.128px.png" \
     "../input_files"
 
 # Check if dry run completes
diff --git a/tests/test_scripts_labkey_to_snakemake_table/expected_output.md5 b/tests/test_scripts_labkey_to_snakemake_table/expected_output.md5
index b2a6861..a94e93e 100644
--- a/tests/test_scripts_labkey_to_snakemake_table/expected_output.md5
+++ b/tests/test_scripts_labkey_to_snakemake_table/expected_output.md5
@@ -1,2 +1,2 @@
-b163e7b06bd9e0a71f2fd1fc4935fea9  config.yaml
-071f0e942321df5e38c8b2d458f7be06  samples.tsv
+aa583b9bad45eeb520d9d624cca0af78  samples.tsv
+c4cda83b069eb7ccb16547e1a9cdb34a  config.yaml
\ No newline at end of file
diff --git a/tests/test_scripts_labkey_to_snakemake_table/test.sh b/tests/test_scripts_labkey_to_snakemake_table/test.sh
index dd2707e..68c7e56 100755
--- a/tests/test_scripts_labkey_to_snakemake_table/test.sh
+++ b/tests/test_scripts_labkey_to_snakemake_table/test.sh
@@ -18,7 +18,7 @@ set -u  # ensures that script exits when unset variables are used
 set -x  # facilitates debugging by printing out executed commands
 user_dir=$PWD
 script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" >/dev/null 2>&1 && pwd)"
-cd $script_dir
+cd $script_dir/
 
 # Run tests
 python "../../scripts/labkey_to_snakemake.py" \
@@ -26,9 +26,11 @@ python "../../scripts/labkey_to_snakemake.py" \
     --input-dict="../../scripts/labkey_to_snakemake.dict.tsv" \
     --config-file="config.yaml" \
     --samples-table="samples.tsv" \
+    --logo="../../images/logo.128px.png" \
     --multimappers='10' \
     "../input_files"
 
+
 # Check if dry run completes
 snakemake \
     --snakefile="../../Snakefile" \
diff --git a/workflow/rules/paired_end.snakefile.smk b/workflow/rules/paired_end.snakefile.smk
index a642c65..6fa54fb 100644
--- a/workflow/rules/paired_end.snakefile.smk
+++ b/workflow/rules/paired_end.snakefile.smk
@@ -1,72 +1,33 @@
-
-rule pe_fastqc:
+rule pe_remove_adapters_cutadapt:
     '''
-        A quality control tool for high throughput sequence data
+        Remove adapters
     '''
     input:
-        reads1 = lambda wildcards:
-            samples_table.loc[wildcards.sample, "fq1"],
-        reads2 = lambda wildcards:
-            samples_table.loc[wildcards.sample, "fq2"]
-
-    output:
-        outdir1 = directory(os.path.join(
-            config["output_dir"],
-            "paired_end",
-            "{sample}",
-            "mate1_fastqc")),
-        outdir2 = directory(os.path.join(
+        reads1 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "mate2_fastqc"))
-
-    threads: 2
-
-    singularity:
-        "docker://zavolab/fastqc:0.11.9-slim"
+            "start",
+            "{sample}.fq1.fastq.gz"),
 
-    log:
-        stderr = os.path.join(
-            config["log_dir"],
-            "paired_end",
-            "{sample}",
-            "fastqc.stderr.log"),
-        stdout = os.path.join(
-            config["log_dir"],
-            "paired_end",
+        reads2 = os.path.join(
+            config["output_dir"],
+            "samples",
             "{sample}",
-            "fastqc.stdout.log")
-
-    shell:
-        "(mkdir -p {output.outdir1}; \
-        mkdir -p {output.outdir2}; \
-        fastqc --outdir {output.outdir1} {input.reads1}; \
-        fastqc --outdir {output.outdir2} {input.reads2};) \
-        1> {log.stdout} 2> {log.stderr}"
-
-
-rule pe_remove_adapters_cutadapt:
-    '''
-        Remove adapters
-    '''
-    input:
-        reads1 = lambda wildcards:
-            samples_table.loc[wildcards.sample, "fq1"],
-        reads2 = lambda wildcards:
-            samples_table.loc[wildcards.sample, "fq2"]
+            "start",
+            "{sample}.fq2.fastq.gz"),
 
     output:
         reads1 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_adapters_mate1.fastq.gz"),
+            "{sample}.pe.remove_adapters_mate1.fastq.gz"),
         reads2 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_adapters_mate2.fastq.gz")
+            "{sample}.pe.remove_adapters_mate2.fastq.gz")
 
     params:
         adapter_3_mate1 = lambda wildcards:
@@ -86,14 +47,14 @@ rule pe_remove_adapters_cutadapt:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "remove_adapters_cutadapt.stderr.log"),
+            "remove_adapters_cutadapt.pe.stderr.log"),
         stdout = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "remove_adapters_cutadapt.stdout.log")
+            "remove_adapters_cutadapt.pe.stdout.log")
 
     shell:
         "(cutadapt \
@@ -120,26 +81,26 @@ rule pe_remove_polya_cutadapt:
     input:
         reads1 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_adapters_mate1.fastq.gz"),
+            "{sample}.pe.remove_adapters_mate1.fastq.gz"),
         reads2 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_adapters_mate2.fastq.gz")
+            "{sample}.pe.remove_adapters_mate2.fastq.gz")
 
     output:
         reads1 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz"),
+            "{sample}.pe.remove_polya_mate1.fastq.gz"),
         reads2 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate2.fastq.gz")
+            "{sample}.pe.remove_polya_mate2.fastq.gz")
 
     params:
         polya_3_mate1 = lambda wildcards:
@@ -159,14 +120,14 @@ rule pe_remove_polya_cutadapt:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "remove_polya_cutadapt.stderr.log"),
+            "remove_polya_cutadapt.pe.stderr.log"),
         stdout = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "remove_polya_cutadapt.stdout.log")
+            "remove_polya_cutadapt.pe.stdout.log")
 
     shell:
         "(cutadapt \
@@ -201,28 +162,28 @@ rule pe_map_genome_star:
                 "chrNameLength.txt"),
         reads1 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz"),
+            "{sample}.pe.remove_polya_mate1.fastq.gz"),
         reads2 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate2.fastq.gz")
+            "{sample}.pe.remove_polya_mate2.fastq.gz")
 
     output:
         bam = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
             "map_genome",
-            "{sample}_Aligned.sortedByCoord.out.bam"),
+            "{sample}.pe.Aligned.sortedByCoord.out.bam"),
         logfile = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
             "map_genome",
-            "{sample}_Log.final.out")
+            "{sample}.pe.Log.final.out")
 
     params:
         sample_id = "{sample}",
@@ -234,10 +195,10 @@ rule pe_map_genome_star:
                 "STAR_index"),
         outFileNamePrefix = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
             "map_genome",
-            "{sample}_"),
+            "{sample}.pe."),
         multimappers = lambda wildcards:
             str(samples_table.loc[wildcards.sample, "multimappers"]),
         soft_clip = lambda wildcards:
@@ -253,9 +214,9 @@ rule pe_map_genome_star:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "map_genome_star.stderr.log")
+            "map_genome_star.pe.stderr.log")
 
     shell:
         "(STAR \
@@ -289,14 +250,14 @@ rule pe_quantification_salmon:
     input:
         reads1 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz"),
+            "{sample}.pe.remove_polya_mate1.fastq.gz"),
         reads2 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate2.fastq.gz"),
+            "{sample}.pe.remove_polya_mate2.fastq.gz"),
         gtf = lambda wildcards:
             samples_table.loc[wildcards.sample, 'gtf_filtered'],
         index = lambda wildcards:
@@ -309,37 +270,37 @@ rule pe_quantification_salmon:
     output:
         gn_estimates = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "salmon_quant",
+            "{sample}.salmon.pe",
             "quant.genes.sf"),
         tr_estimates = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "salmon_quant",
+            "{sample}.salmon.pe",
             "quant.sf")
 
     params:
         output_dir = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "salmon_quant"),
+            "{sample}.salmon.pe"),
         libType = lambda wildcards:
             samples_table.loc[wildcards.sample, 'libtype']
 
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "genome_quantification_salmon.stderr.log"),
+            "genome_quantification_salmon.pe.stderr.log"),
         stdout = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "genome_quantification_salmon.stdout.log"),
+            "genome_quantification_salmon.pe.stdout.log"),
 
     threads: 6
 
@@ -357,7 +318,8 @@ rule pe_quantification_salmon:
         --geneMap {input.gtf} \
         -1 {input.reads1} \
         -2 {input.reads2} \
-        -o {params.output_dir}) 1> {log.stdout} 2> {log.stderr}"
+        -o {params.output_dir}; \
+        ) 1> {log.stdout} 2> {log.stderr}"
 
 
 rule pe_genome_quantification_kallisto:
@@ -367,14 +329,14 @@ rule pe_genome_quantification_kallisto:
     input:
         reads1 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz"),
+            "{sample}.pe.remove_polya_mate1.fastq.gz"),
         reads2 = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate2.fastq.gz"),
+            "{sample}.pe.remove_polya_mate2.fastq.gz"),
         index = lambda wildcards:
             os.path.join(
                 config["kallisto_indexes"],
@@ -384,15 +346,15 @@ rule pe_genome_quantification_kallisto:
     output:
         pseudoalignment = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
             "quant_kallisto",
-            "{sample}.kallisto.pseudo.sam")
+            "{sample}.pe.kallisto.pseudo.sam")
 
     params:
         output_dir = os.path.join(
             config["output_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
             "quant_kallisto"),
         directionality = lambda wildcards:
@@ -406,16 +368,16 @@ rule pe_genome_quantification_kallisto:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "paired_end",
+            "samples",
             "{sample}",
-            "genome_quantification_kallisto.stderr.log")
+            "genome_quantification_kallisto.pe.stderr.log")
 
     shell:
         "(kallisto quant \
         -i {input.index} \
         -o {params.output_dir} \
         --pseudobam \
-        {params.directionality} \
+        {params.directionality}-stranded \
         {input.reads1} {input.reads2} > {output.pseudoalignment}) \
         2> {log.stderr}"
 
diff --git a/workflow/rules/single_end.snakefile.smk b/workflow/rules/single_end.snakefile.smk
index d0b8445..beaad53 100644
--- a/workflow/rules/single_end.snakefile.smk
+++ b/workflow/rules/single_end.snakefile.smk
@@ -1,57 +1,21 @@
-import os
-
-rule fastqc:
-    '''
-        A quality control tool for high throughput sequence data.
-    '''
-    input:
-        reads = lambda wildcards:
-            samples_table.loc[wildcards.sample, "fq1"]
-
-    output:
-        outdir = directory(os.path.join(
-            config["output_dir"],
-            "single_end",
-            "{sample}",
-            "mate1_fastqc"))
-
-    singularity:
-        "docker://zavolab/fastqc:0.11.9-slim"
-
-    log:
-        stderr = os.path.join(
-            config["log_dir"],
-            "single_end",
-            "{sample}",
-            "fastqc.stderr.log"),
-        stdout = os.path.join(
-            config["log_dir"],
-            "single_end",
-            "{sample}",
-            "fastqc.stdout.log")
-
-    shell:
-        "(mkdir -p {output.outdir}; \
-        fastqc \
-        --outdir {output.outdir} \
-        {input.reads};) \
-        1> {log.stdout} 2> {log.stderr}"
-
-
 rule remove_adapters_cutadapt:
     '''
         Remove adapters
     '''
     input:
-        reads = lambda wildcards:
-            samples_table.loc[wildcards.sample, "fq1"]
+        reads = os.path.join(
+            config["output_dir"],
+            "samples",
+            "{sample}",
+            "start",
+            "{sample}.fq1.fastq.gz")
 
     output:
         reads = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_adapters_mate1.fastq.gz")
+            "{sample}.se.remove_adapters_mate1.fastq.gz")
 
     params:
         adapters_3 = lambda wildcards:
@@ -67,14 +31,14 @@ rule remove_adapters_cutadapt:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "remove_adapters_cutadapt.stderr.log"),
+            "remove_adapters_cutadapt.se.stderr.log"),
         stdout = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "remove_adapters_cutadapt.stdout.log")
+            "remove_adapters_cutadapt.se.stdout.log")
     shell:
         "(cutadapt \
         -e 0.1 \
@@ -95,16 +59,16 @@ rule remove_polya_cutadapt:
     input:
         reads = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_adapters_mate1.fastq.gz")
+            "{sample}.se.remove_adapters_mate1.fastq.gz")
 
     output:
         reads = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz")
+            "{sample}.se.remove_polya_mate1.fastq.gz")
 
     params:
         polya_3 = lambda wildcards:
@@ -120,14 +84,14 @@ rule remove_polya_cutadapt:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "remove_polya_cutadapt.stderr.log"),
+            "remove_polya_cutadapt.se.stderr.log"),
         stdout = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "remove_polya_cutadapt.stdout.log")
+            "remove_polya_cutadapt.se.stdout.log")
 
     shell:
         "(cutadapt \
@@ -157,23 +121,23 @@ rule map_genome_star:
                 "chrNameLength.txt"),
         reads = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz")
+            "{sample}.se.remove_polya_mate1.fastq.gz")
 
     output:
         bam = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
             "map_genome",
-            "{sample}_Aligned.sortedByCoord.out.bam"),
+            "{sample}.se.Aligned.sortedByCoord.out.bam"),
         logfile = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
             "map_genome",
-            "{sample}_Log.final.out")
+            "{sample}.se.Log.final.out")
 
     params:
         sample_id = "{sample}",
@@ -185,10 +149,10 @@ rule map_genome_star:
                 "STAR_index"),
         outFileNamePrefix = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
             "map_genome",
-            "{sample}_"),
+            "{sample}.se."),
         multimappers = lambda wildcards:
                 samples_table.loc[wildcards.sample, "multimappers"],
         soft_clip = lambda wildcards:
@@ -204,9 +168,9 @@ rule map_genome_star:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "map_genome_star.stderr.log")
+            "map_genome_star.se.stderr.log")
 
     shell:
         "(STAR \
@@ -240,9 +204,9 @@ rule quantification_salmon:
     input:
         reads = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz"),
+            "{sample}.se.remove_polya_mate1.fastq.gz"),
         index = lambda wildcards:
             os.path.join(
                 config["salmon_indexes"],
@@ -255,37 +219,37 @@ rule quantification_salmon:
     output:
         gn_estimates = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "salmon_quant",
+            "{sample}.salmon.se",
             "quant.genes.sf"),
         tr_estimates = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "salmon_quant",
+            "{sample}.salmon.se",
             "quant.sf")
 
     params:
         output_dir = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "salmon_quant"),
+            "{sample}.salmon.se"),
         libType = lambda wildcards:
                 samples_table.loc[wildcards.sample, "libtype"]
 
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "quantification_salmon.stderr.log"),
+            "quantification_salmon.se.stderr.log"),
         stdout = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "quantification_salmon.stdout.log")
+            "quantification_salmon.se.stdout.log")
 
     threads: 12
 
@@ -313,9 +277,9 @@ rule genome_quantification_kallisto:
     input:
         reads = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "{sample}.remove_polya_mate1.fastq.gz"),
+            "{sample}.se.remove_polya_mate1.fastq.gz"),
         index = lambda wildcards:
             os.path.join(
                 config["kallisto_indexes"],
@@ -325,15 +289,15 @@ rule genome_quantification_kallisto:
     output:
         pseudoalignment = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
             "quant_kallisto",
-            "{sample}.kallisto.pseudo.sam")
+            "{sample}.se.kallisto.pseudo.sam")
 
     params:
         output_dir = os.path.join(
             config["output_dir"],
-            "single_end",
+            "samples",
             "{sample}",
             "quant_kallisto"),
         fraglen = lambda wildcards:
@@ -348,9 +312,9 @@ rule genome_quantification_kallisto:
     log:
         stderr = os.path.join(
             config["log_dir"],
-            "single_end",
+            "samples",
             "{sample}",
-            "genome_quantification_kallisto.stderr.log")
+            "genome_quantification_kallisto.se.stderr.log")
 
     singularity:
         "docker://zavolab/kallisto:0.46.1-slim"
@@ -363,7 +327,7 @@ rule genome_quantification_kallisto:
         -l {params.fraglen} \
         -s {params.fragsd} \
         --pseudobam \
-        {params.directionality} \
+        {params.directionality}-stranded \
         {input.reads} > {output.pseudoalignment};) \
         2> {log.stderr}"
 
diff --git a/workflow/scripts/rhea_multiqc_config.py b/workflow/scripts/rhea_multiqc_config.py
new file mode 100644
index 0000000..caccb07
--- /dev/null
+++ b/workflow/scripts/rhea_multiqc_config.py
@@ -0,0 +1,162 @@
+#!/usr/bin/env python3
+
+# -----------------------------------------------------------------------------
+# Author : Maria Katsantoni, Maciek Bak
+# Company: Mihaela Zavolan, Biozentrum, Basel
+# This script is part of the Zavolan lab Rhea pipeline.
+# In this script the config file used by multiqc
+# (https://multiqc.info) is created.
+# -----------------------------------------------------------------------------
+
+import sys
+from argparse import ArgumentParser, RawTextHelpFormatter
+import os
+
+
+def main():
+    """ Create config file for multiqc"""
+
+    __doc__ = "Create config file for multiqc"
+
+    parser = ArgumentParser(description=__doc__,
+                            formatter_class=RawTextHelpFormatter)
+
+    parser.add_argument("--config",
+                        help="Output file destination for config",
+                        required=True,
+                        metavar="FILE",)
+
+    parser.add_argument("--intro-text",
+                        dest="intro_text",
+                        help="short description at the top of report",
+                        metavar="STR")
+
+    parser.add_argument("--custom-logo",
+                        dest="custom_logo",
+                        default='None',
+                        help="Logo path",
+                        metavar="FILE")
+
+    parser.add_argument("--url",
+                        help="Url of the lab",
+                        # default='https://zavolan.biozentrum.unibas.ch/',
+                        metavar="STR")
+
+    parser.add_argument("--author-name",
+                        dest="author_name",
+                        default='None',
+                        help="Name of person running this analysis",
+                        metavar="STR")
+
+    parser.add_argument("--author-email",
+                        dest="author_email",
+                        default='None',
+                        help="email of person running this analysis",
+                        metavar="STR")
+
+    try:
+        options = parser.parse_args()
+    except(Exception):
+        parser.print_help()
+
+    if len(sys.argv) == 1:
+        parser.print_help()
+        sys.exit(1)
+
+    title = "Rhea"
+    subtitle = "RNA-Seq processing pipeline developed by Zavolan Lab"
+    logo_title = 'Rhea'
+    project_type = "Snakemake workflow"
+    analysis_type = "RNA-seq"
+
+    intro_text = options.intro_text
+    custom_logo = options.custom_logo
+    url = options.url
+    author_name = options.author_name
+    author_email = options.author_email
+
+    config_string = f"""---
+
+title: "{title}"
+subtitle: "{subtitle}"
+intro_text: "{intro_text}"
+custom_logo: "{custom_logo}"
+custom_logo_url: "{url}"
+custom_logo_title: "{logo_title}"
+
+report_header_info:
+  - Project Type: "{project_type}"
+  - Analysis Type: "{analysis_type}"
+  - Analysis Author: "{author_name}"
+  - Contact E-mail: "{author_email}"
+
+top_modules:
+
+  - fastqc:
+      path_filters:
+      - "*/*/fastqc/*/*"
+
+  - cutadapt:
+      name: "Cutadapt: adapter removal"
+      path_filters:
+      - "*/*/remove_adapters_cutadapt*.stdout.log"
+
+  - cutadapt:
+      name: "Cutadapt: polyA tails removal"
+      path_filters:
+      - "*/*/remove_polya_cutadapt*.stdout.log"
+
+  - star:
+      path_filters:
+      - "*/*/map_genome/*"
+
+  - alfa:
+      name: "ALFA"
+      anchor: "ALFA"
+      path_filters:
+      - "*/ALFA_plots.concat_mqc.png"
+
+  - TIN_scores:
+      name: "TIN_scores"
+      anchor: "TIN_scores"
+      path_filters:
+      - "*/TIN_scores_boxplot_mqc.png"
+
+  - salmon:
+      path_filters:
+      - "*/*/*.salmon.*/*"
+
+  - kallisto:
+      path_filters:
+      - "*/*/genome_quantification_kallisto*.stderr.log"
+
+fn_clean_exts:
+  - '.fq1'
+  - '.gz'
+  - '.stdout'
+  - '.log'
+  - '.stderr'
+  - '.fastq'
+  - '.bam'
+  - '.bai'
+  - '.pe'
+  - '.se'
+  - '.pseudo'
+  - '.salmon'
+  - '.sam'
+  - 'mqc'
+  - '.png'
+..."""
+
+    with open(options.config, "w") as config:
+        config.write(config_string)
+
+    return
+
+
+if __name__ == '__main__':
+    try:
+        main()
+    except KeyboardInterrupt:
+        sys.stderr.write("User interrupt!")
+        sys.exit(1)
-- 
GitLab