From df73e1cc8142afda7d0d0d5da9a765fcd43c0f2d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 14:57:10 +0200
Subject: [PATCH 001/194] Add prodigal  module #163

---
 modules/prodigal.nf | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 modules/prodigal.nf

diff --git a/modules/prodigal.nf b/modules/prodigal.nf
new file mode 100644
index 0000000..1a9946c
--- /dev/null
+++ b/modules/prodigal.nf
@@ -0,0 +1,18 @@
+process PRODIGAL {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
+    path "v_prodigal.txt", emit: v_prokka
+
+  script:
+  """
+  prodigal -i ${assembly_file} -c -p meta -f gff -a prodigal.faa -o prodigal.gff 
+  
+  prodigal -v 2> v_prodigal.txt
+
+  """
+}
\ No newline at end of file
-- 
GitLab


From 478dd8fe1f205a52de9c8890daad843dc4aacebc Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:51:34 +0200
Subject: [PATCH 002/194] Add barrnap module see issue #163

---
 modules/barnap.nf | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 modules/barnap.nf

diff --git a/modules/barnap.nf b/modules/barnap.nf
new file mode 100644
index 0000000..0b88b76
--- /dev/null
+++ b/modules/barnap.nf
@@ -0,0 +1,18 @@
+process PRODIGAL {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
+    path "v_barrnap.txt", emit: v_barrnap
+
+  script:
+  """
+    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
+
+    barrnap --version  2> v_barrnap.txt
+
+  """
+}
-- 
GitLab


From efc393d920dc0506cf4e96d816473c6d50648d6d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:52:13 +0200
Subject: [PATCH 003/194] Fix typo in prodigal module see issue #163

---
 modules/prodigal.nf | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/modules/prodigal.nf b/modules/prodigal.nf
index 1a9946c..be69d07 100644
--- a/modules/prodigal.nf
+++ b/modules/prodigal.nf
@@ -5,8 +5,9 @@ process PRODIGAL {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
-    path "v_prodigal.txt", emit: v_prokka
+    tuple val(meta), path("prodigal.gff"), emit: prodigal_gff
+    tuple val(meta), path("prodigal.faa"), emit: prodigal_faa
+    path "v_prodigal.txt", emit: v_prodigal
 
   script:
   """
-- 
GitLab


From 72577b733a62a866ee1f93ba5d46d5afd9492dea Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:55:34 +0200
Subject: [PATCH 004/194] fix module name

---
 modules/barnap.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/barnap.nf b/modules/barnap.nf
index 0b88b76..302ab6d 100644
--- a/modules/barnap.nf
+++ b/modules/barnap.nf
@@ -1,4 +1,4 @@
-process PRODIGAL {
+process BARRNAP {
   tag "${meta.id}"
 
   input:
-- 
GitLab


From ac29aef2c33a515efb617199aa26c05e5486527a Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 16:18:15 +0200
Subject: [PATCH 005/194] fix typo in barrnap name module

---
 modules/{barnap.nf => barrnap.nf} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename modules/{barnap.nf => barrnap.nf} (100%)

diff --git a/modules/barnap.nf b/modules/barrnap.nf
similarity index 100%
rename from modules/barnap.nf
rename to modules/barrnap.nf
-- 
GitLab


From 780d2d386d9886108064a8ddafad577e8058177c Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 17:10:09 +0200
Subject: [PATCH 006/194] structuring step 04 with prodigal + barrnap approach

---
 main.nf                             | 17 +++++++++--------
 subworkflows/04_structural_annot.nf | 26 ++++++++++++++++----------
 2 files changed, 25 insertions(+), 18 deletions(-)

diff --git a/main.nf b/main.nf
index 2a20f0b..788b67f 100644
--- a/main.nf
+++ b/main.nf
@@ -446,17 +446,18 @@ workflow {
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
-    ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
-    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    // ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    // ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
+    // ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
+    // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
+    // ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
-    ch_contigs_and_reads = ch_prokka_fna
-        .join(ch_reads, remainder: true)
-    ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
+    // ch_contigs_and_reads = ch_prokka_fna
+    //     .join(ch_reads, remainder: true)
+    // ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
 
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
+    // exit 0, 'Exit now... S04_STRUCTURAL_ANNOT being constructed ' 
 	}
 
   ch_bam = Channel.empty()
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 61bff36..ba3d4fe 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,19 +1,25 @@
-include { PROKKA; RENAME_CONTIGS_AND_GENES } from '../modules/prokka'
+include { PRODIGAL } from '../modules/prodigal'
+include { BARRNAP } from '../modules/barrnap'
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
 
   main:
-    PROKKA( assembly )
-    ch_software_versions = PROKKA.out.v_prokka.first()
-    RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
+    PRODIGAL( assembly )
+    BARRNAP( assembly )
+    ch_software_versions = PRODIGAL.out.v_prodigal.first()
+
+
+    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first())
+
+    // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
 
   emit:
-    report = PROKKA.out.report
-    fna = RENAME_CONTIGS_AND_GENES.out.fna
-    ffn = RENAME_CONTIGS_AND_GENES.out.ffn
-    gff = RENAME_CONTIGS_AND_GENES.out.gff
-    faa = RENAME_CONTIGS_AND_GENES.out.faa 
-    prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
+    // report = PROKKA.out.report
+    // fna = RENAME_CONTIGS_AND_GENES.out.fna
+    // ffn = RENAME_CONTIGS_AND_GENES.out.ffn
+    // gff = RENAME_CONTIGS_AND_GENES.out.gff
+    // faa = RENAME_CONTIGS_AND_GENES.out.faa 
+    // prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From 898379888ec9c26f53afdd86c192897fb33b7ed0 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 17:10:43 +0200
Subject: [PATCH 007/194] fix barnnap output

---
 modules/barrnap.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/barrnap.nf b/modules/barrnap.nf
index 302ab6d..44cbd5e 100644
--- a/modules/barrnap.nf
+++ b/modules/barrnap.nf
@@ -10,7 +10,7 @@ process BARRNAP {
 
   script:
   """
-    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
+    barrnap --threads ${task.cpus} ${assembly_file} > barrnap.gff
 
     barrnap --version  2> v_barrnap.txt
 
-- 
GitLab


From d2e2344c12be0a659633daf69da7daf5ce874463 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 10:35:40 +0200
Subject: [PATCH 008/194] Add trnascan and pyfastx in conda recipe

issue #163
---
 env/metagWGS.yml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/env/metagWGS.yml b/env/metagWGS.yml
index e5a3375..af1e578 100644
--- a/env/metagWGS.yml
+++ b/env/metagWGS.yml
@@ -27,4 +27,6 @@ dependencies:
   - subread=2.0.1
   - flye=2.9.1
   - hifiasm_meta=hamtv0.3
-  - plotly
\ No newline at end of file
+  - plotly
+  - trnascan-se=2.0.11
+  - pyfastx
\ No newline at end of file
-- 
GitLab


From 4e805a4e95230e8e27d35fe322cc415a433b02ca Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 11:45:15 +0200
Subject: [PATCH 009/194] Add trnascan_se module issue #163

---
 modules/trnascan_se.nf              | 19 +++++++++++++++++++
 subworkflows/04_structural_annot.nf |  6 +++++-
 2 files changed, 24 insertions(+), 1 deletion(-)
 create mode 100644 modules/trnascan_se.nf

diff --git a/modules/trnascan_se.nf b/modules/trnascan_se.nf
new file mode 100644
index 0000000..e292e3e
--- /dev/null
+++ b/modules/trnascan_se.nf
@@ -0,0 +1,19 @@
+process TRNASCAN_SE {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("trnascan_se.gff"), emit: trnascan_gff
+    path "v_tRNAscan.txt", emit: v_tRNAscan
+
+  script:
+  """
+    tRNAscan-SE -B --gff trnascan_se.gff  --thread ${task.cpus} --stats trnascan_se.log  ${assembly_file}
+
+    tRNAscan-SE -h 2> v_tRNAscan.txt
+
+
+  """
+}
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index ba3d4fe..4e6687b 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,5 +1,6 @@
 include { PRODIGAL } from '../modules/prodigal'
 include { BARRNAP } from '../modules/barrnap'
+include { TRNASCAN_SE } from '../modules/trnascan_se'
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
@@ -7,10 +8,13 @@ workflow STEP_04_STRUCTURAL_ANNOT {
   main:
     PRODIGAL( assembly )
     BARRNAP( assembly )
+    TRNASCAN_SE( assembly )
+
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
 
-    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first())
+    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
+                                                                TRNASCAN_SE.out.v_tRNAscan.first())
 
     // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
 
-- 
GitLab


From 8d92905cfc45da05590d9e4eb75d4f0ed14761bb Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 17:48:21 +0200
Subject: [PATCH 010/194] simplify channel name

---
 modules/barrnap.nf     | 2 +-
 modules/prodigal.nf    | 4 ++--
 modules/trnascan_se.nf | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/modules/barrnap.nf b/modules/barrnap.nf
index 44cbd5e..16013a0 100644
--- a/modules/barrnap.nf
+++ b/modules/barrnap.nf
@@ -5,7 +5,7 @@ process BARRNAP {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
+    tuple val(meta), path("barrnap.gff"), emit: gff
     path "v_barrnap.txt", emit: v_barrnap
 
   script:
diff --git a/modules/prodigal.nf b/modules/prodigal.nf
index be69d07..63bde69 100644
--- a/modules/prodigal.nf
+++ b/modules/prodigal.nf
@@ -5,8 +5,8 @@ process PRODIGAL {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("prodigal.gff"), emit: prodigal_gff
-    tuple val(meta), path("prodigal.faa"), emit: prodigal_faa
+    tuple val(meta), path("prodigal.gff"), emit: gff
+    tuple val(meta), path("prodigal.faa"), emit: faa
     path "v_prodigal.txt", emit: v_prodigal
 
   script:
diff --git a/modules/trnascan_se.nf b/modules/trnascan_se.nf
index e292e3e..b690c7c 100644
--- a/modules/trnascan_se.nf
+++ b/modules/trnascan_se.nf
@@ -5,7 +5,7 @@ process TRNASCAN_SE {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("trnascan_se.gff"), emit: trnascan_gff
+    tuple val(meta), path("trnascan_se.gff"), emit: gff
     path "v_tRNAscan.txt", emit: v_tRNAscan
 
   script:
-- 
GitLab


From daf624e354e19c03aa5d6360717d53510d3b5307 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 18:03:14 +0200
Subject: [PATCH 011/194] Add process and script to merge gff annotations issue
 #163

---
 bin/merge_annotations.py            | 178 ++++++++++++++++++++++++++++
 subworkflows/04_structural_annot.nf |  12 ++
 2 files changed, 190 insertions(+)
 create mode 100755 bin/merge_annotations.py

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
new file mode 100755
index 0000000..8d3b4fa
--- /dev/null
+++ b/bin/merge_annotations.py
@@ -0,0 +1,178 @@
+#!/usr/bin/env python3
+
+"""
+Combine structural annotations made from different gff. 
+
+In case of collapsing annotations RNA annotation are prefered to CDS annotations.
+
+:Example:
+python template.py -v
+"""
+
+# Metadata
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2020 INRAE'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, FileType
+import logging
+import gzip
+import csv
+from collections import defaultdict
+
+def read_file_and_ignore_hashtag(file_path):
+    proper_open = gzip.open if file_path.endswith('.gz') else open
+    with proper_open(file_path, 'rt') as fl:
+        for line in fl:
+            if line.startswith('#'):
+                continue
+            yield line
+
+def group_annotations_by_contigs(*gff_annotations):
+
+    contig2annotations = defaultdict(list) 
+    for annotations in gff_annotations:
+        for annotation in annotations:
+            contig2annotations[annotation['seqname']].append(annotation)
+
+    return contig2annotations
+
+        
+def parse_gff_file(gff_file, feature_to_keep=False):
+
+    gff_headers = ("seqname", "_3", "feature", "start", "end", "_2", "strand", "_1", "attribute")
+
+    gff_annotations = csv.DictReader(read_file_and_ignore_hashtag(gff_file), 
+                                                                        delimiter='\t',
+                                                                        fieldnames=gff_headers)
+
+    if feature_to_keep:
+        logging.info(f'Keeping only {feature_to_keep} feature from {gff_file}')
+        gff_annotations = (annotation for annotation in gff_annotations if annotation['feature'] == feature_to_keep)
+        
+    return gff_annotations
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
+
+    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
+
+    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+
+    parser.add_argument('-o', '--gff_output', help='final gff file with merged annotations.', required=True)
+
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+def remove_overlapping_cds(cds_file, contig2rnas):
+
+    contig_annotations = []
+    current_contig = None
+
+    for cds in parse_gff_file(cds_file, 'CDS'):
+        
+        reading_next_contig = cds['seqname'] != current_contig
+        
+        if contig_annotations and reading_next_contig:
+
+            yield current_contig, contig_annotations
+            contig_annotations = []
+
+        current_contig = cds['seqname']
+
+        is_overlapping = False
+        for rna in contig2rnas[current_contig]:
+                if (int(rna['end']) < int(cds['start']) or int(rna['start']) > int(cds['end'])):
+                    continue
+                
+                else:  # overlap -> remove cds
+                    is_overlapping = True
+                    overlap = f"[{max(rna['start'], cds['start'])},{min(rna['end'], cds['end'])}]"
+                    rna_info = f"{rna['feature']} [{rna['start']}, {rna['end']}]"
+                    cds_info = f"CDS [{cds['start']}, {cds['end']}]"
+                    logging.info(f"overlap: {cds_info} overlapping with {rna_info} at {overlap} on contig={current_contig}")
+
+        if not is_overlapping:
+            contig_annotations.append(cds)
+
+    yield current_contig, contig_annotations
+
+def merging_cds_and_rna(cds_per_contig, contig2rnas):
+    contig_processed = []
+    for contig, cds_features in cds_per_contig:
+        contig_processed.append(contig)
+        rna_features = contig2rnas[contig]
+        yield contig, rna_features + cds_features
+    
+    # check that all rrna contigs have been processed if not processe them
+    for contig, rnas in  contig2rnas.items():
+        if contig not in contig_processed:
+            logging.info(f'{contig} has only rna annotation')
+            yield contig, rnas
+
+def writing_features_to_gff(annotations_per_contig, out_gff):
+    
+    with open(out_gff, 'w') as fl:
+
+        fl.write("##gff-version  3\n")
+        for contig, features in annotations_per_contig:
+            logging.info(f"writing {contig} annotations to gff file")
+            fl.write(f"##sequence-region {contig}\n")
+
+            for feature in sorted(features, key=lambda x: int(x['start'])):
+                fl.write('\t'.join(feature.values())+"\n")
+
+def main():
+
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+
+    trna_file  = args.trna 
+    rrna_file  = args.rrna
+    cds_file = args.cds
+
+    output_gff = args.gff_output
+
+    logging.info('Parsing rRNA annoations.')
+    rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
+
+    logging.info('Parsing tRNA annoations.')
+    trna_annotations = parse_gff_file(trna_file, 'tRNA')
+
+    logging.info('Grouping RNA annoations by contig.')
+    contig2rnas = group_annotations_by_contigs(trna_annotations, rrna_annotations)
+    
+    logging.info('Removing CDS annoations overlapping a RNA annotations.')
+    unoverlapping_cds_per_contig = remove_overlapping_cds(cds_file, contig2rnas)
+
+    logging.info('Merge CDS and RNA annotations by contig.')
+    annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
+
+    logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
+    writing_features_to_gff(annotation_per_contigs, output_gff)
+    
+
+
+
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 4e6687b..a70b215 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,6 +1,8 @@
 include { PRODIGAL } from '../modules/prodigal'
 include { BARRNAP } from '../modules/barrnap'
 include { TRNASCAN_SE } from '../modules/trnascan_se'
+include { MERGE_ANNOTATIONS } from '../modules/merge_annotations'
+
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
@@ -10,6 +12,16 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     BARRNAP( assembly )
     TRNASCAN_SE( assembly )
 
+
+    annotations_ch = PRODIGAL.out.gff.join(BARRNAP.out.gff)
+                                              .join(TRNASCAN_SE.out.gff)
+    annotations_ch.view()
+
+
+
+    MERGE_ANNOTATIONS(annotations_ch)
+
+
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
 
-- 
GitLab


From 0e927a96bdbbd3d3b84cf07741b7e38aebfcd997 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 19:01:45 +0200
Subject: [PATCH 012/194] add ffn output on top of gff output

---
 bin/merge_annotations.py            | 51 +++++++++++++++++++++++++----
 subworkflows/04_structural_annot.nf |  2 +-
 2 files changed, 45 insertions(+), 8 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 8d3b4fa..91ebdb0 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -23,6 +23,8 @@ import logging
 import gzip
 import csv
 from collections import defaultdict
+import pyfastx
+
 
 def read_file_and_ignore_hashtag(file_path):
     proper_open = gzip.open if file_path.endswith('.gz') else open
@@ -67,7 +69,11 @@ def parse_arguments():
 
     parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
 
-    parser.add_argument('-o', '--gff_output', help='final gff file with merged annotations.', required=True)
+    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
+    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
 
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
@@ -122,17 +128,44 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
             logging.info(f'{contig} has only rna annotation')
             yield contig, rnas
 
-def writing_features_to_gff(annotations_per_contig, out_gff):
+def add_new_ID_tag(gff_attributes, new_id):
+    gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] != 'ID'])
+    return f"ID={new_id};{gff_attributes_no_id}"
+
+def get_Name_tag(gff_attributes):
+    for attr in gff_attributes.split(';'):
+        if attr.split('=')[0] == "Name":
+            return attr.split('=')[1]
+    return ''
+
+
+def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
     
-    with open(out_gff, 'w') as fl:
+    contig_fa = pyfastx.Fasta(fna_file)
+
+
+    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
 
-        fl.write("##gff-version  3\n")
+        fh_gff.write("##gff-version  3\n")
         for contig, features in annotations_per_contig:
+            gene_count = defaultdict(int)
             logging.info(f"writing {contig} annotations to gff file")
-            fl.write(f"##sequence-region {contig}\n")
+            fh_gff.write(f"##sequence-region {contig}\n")
 
             for feature in sorted(features, key=lambda x: int(x['start'])):
-                fl.write('\t'.join(feature.values())+"\n")
+                gene_count[feature['feature']] += 1 
+                new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+
+                feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
+
+                tag_name = get_Name_tag(feature['attribute'])
+                fh_gff.write('\t'.join(feature.values())+"\n")
+
+                feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
+                fh_ffn.write(f">{new_id} {tag_name}\n")
+                fh_ffn.write(f"{feature_seq}\n")
+
+
 
 def main():
 
@@ -152,6 +185,9 @@ def main():
 
     output_gff = args.gff_output
 
+    fna_file = args.contig_seq
+    out_ffn = args.ffn_output
+
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
 
@@ -168,11 +204,12 @@ def main():
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
     logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
-    writing_features_to_gff(annotation_per_contigs, output_gff)
+    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn)
     
 
 
 
 
+
 if __name__ == '__main__':
     main()
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index a70b215..e420d55 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -13,7 +13,7 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     TRNASCAN_SE( assembly )
 
 
-    annotations_ch = PRODIGAL.out.gff.join(BARRNAP.out.gff)
+    annotations_ch = assembly.join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
     annotations_ch.view()
 
-- 
GitLab


From e5dae7acc2b266df8092dd68448d90e16c95572a Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 09:31:10 +0200
Subject: [PATCH 013/194] process to launch python script to merge gff files

---
 modules/merge_annotations.nf | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
 create mode 100644 modules/merge_annotations.nf

diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
new file mode 100644
index 0000000..4cbbd82
--- /dev/null
+++ b/modules/merge_annotations.nf
@@ -0,0 +1,15 @@
+process MERGE_ANNOTATIONS {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file), file(cds_gff), file(rrna_gff), file(trna_gff)
+
+  output:
+
+
+  script:
+  """
+    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  --contig_seq $assembly_file \
+                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff 
+  """
+}
\ No newline at end of file
-- 
GitLab


From dfd1ce639f6fa50343b7406cc8c115e821d46907 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 13:37:32 +0200
Subject: [PATCH 014/194] fix strand and zero base position when extracting seq

---
 bin/merge_annotations.py | 112 +++++++++++++++++++++++++--------------
 1 file changed, 73 insertions(+), 39 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 91ebdb0..5434cdb 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -24,9 +24,36 @@ import gzip
 import csv
 from collections import defaultdict
 import pyfastx
+from Bio.Seq import Seq
 
 
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
+
+    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
+
+    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+
+    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
+
+    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
+
+    parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
 def read_file_and_ignore_hashtag(file_path):
+
     proper_open = gzip.open if file_path.endswith('.gz') else open
     with proper_open(file_path, 'rt') as fl:
         for line in fl:
@@ -58,30 +85,6 @@ def parse_gff_file(gff_file, feature_to_keep=False):
         
     return gff_annotations
 
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(description="...",
-                            formatter_class=ArgumentDefaultsHelpFormatter)
-
-    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
-
-    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
-
-    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
-
-    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
-    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
-    
-    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
-
-
-
-    parser.add_argument("-v", "--verbose", help="increase output verbosity",
-                        action="store_true")
-
-    args = parser.parse_args()
-    return args
-
 def remove_overlapping_cds(cds_file, contig2rnas):
 
     contig_annotations = []
@@ -116,6 +119,7 @@ def remove_overlapping_cds(cds_file, contig2rnas):
     yield current_contig, contig_annotations
 
 def merging_cds_and_rna(cds_per_contig, contig2rnas):
+
     contig_processed = []
     for contig, cds_features in cds_per_contig:
         contig_processed.append(contig)
@@ -129,21 +133,22 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
             yield contig, rnas
 
 def add_new_ID_tag(gff_attributes, new_id):
+
     gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] != 'ID'])
     return f"ID={new_id};{gff_attributes_no_id}"
 
-def get_Name_tag(gff_attributes):
-    for attr in gff_attributes.split(';'):
-        if attr.split('=')[0] == "Name":
+
+def get_tag_value(gff_attribute, tag):
+
+    for attr in gff_attribute.split(';'):
+        if attr.split('=')[0] == tag:
             return attr.split('=')[1]
     return ''
 
-
 def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
     
     contig_fa = pyfastx.Fasta(fna_file)
 
-
     with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
 
         fh_gff.write("##gff-version  3\n")
@@ -158,13 +163,41 @@ def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, o
 
                 feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
 
-                tag_name = get_Name_tag(feature['attribute'])
+                tag_name = get_tag_value(feature['attribute'], 'Name')
                 fh_gff.write('\t'.join(feature.values())+"\n")
 
-                feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
-                fh_ffn.write(f">{new_id} {tag_name}\n")
-                fh_ffn.write(f"{feature_seq}\n")
+                # feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
+                #                 
+                
 
+                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
+                
+                if feature['strand'] == "+":
+                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                else:
+                    # reverse complement the sequence
+                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
+
+                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+
+
+                # if feature['feature'] == "CDS":
+
+                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
+                    
+                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
+
+
+# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+
+#     protein_fa = pyfastx.Fasta(faa_file)
+#     all_names = [set(protein_fa.keys().filter())]
+
+    
+#     for contig, features in annotation_per_contigs:
+        
+
+#     yield contig, features 
 
 
 def main():
@@ -187,6 +220,9 @@ def main():
 
     fna_file = args.contig_seq
     out_ffn = args.ffn_output
+    out_faa = args.faa_output
+
+    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
@@ -203,13 +239,11 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
-    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn)
-    
-
-
-
+    # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
 
+    logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
+    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    
 
 if __name__ == '__main__':
     main()
\ No newline at end of file
-- 
GitLab


From b00645a569d5ebfe42b10581d220c2365738bbf4 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:35:49 +0200
Subject: [PATCH 015/194] add faa file filtering from prodigal

---
 bin/merge_annotations.py | 69 +++++++++++++++++++++++++---------------
 1 file changed, 44 insertions(+), 25 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 5434cdb..e6a5c59 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -145,11 +145,13 @@ def get_tag_value(gff_attribute, tag):
             return attr.split('=')[1]
     return ''
 
-def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
+def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, out_ffn, faa_file, out_faa):
     
     contig_fa = pyfastx.Fasta(fna_file)
+    protein_fa = pyfastx.Fasta(faa_file)
 
-    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
+
+    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn, open(out_faa, 'w') as fh_faa:
 
         fh_gff.write("##gff-version  3\n")
         for contig, features in annotations_per_contig:
@@ -161,43 +163,60 @@ def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, o
                 gene_count[feature['feature']] += 1 
                 new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
 
+                start, end = int(feature['start']), int(feature['end'])
+                
+                # write faa
+                if feature['feature'] == "CDS":
+                    gff_id = get_tag_value(feature['attribute'], 'ID')
+
+                    # ID in gff from prodigal is <contig_number>_<cds_number>
+                    # seq name in faa from prodigal is <contig_name>_<cds_number>
+                    cds_number = gff_id.split('_')[-1]
+                    cds_prodigal_id = f"{contig}_{cds_number}"
+                    fh_faa.write(f">{new_id} {start}-{end}\n{protein_fa[cds_prodigal_id]}\n")
+           
+                    
+                # Write gff and ffn 
                 feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
 
                 tag_name = get_tag_value(feature['attribute'], 'Name')
                 fh_gff.write('\t'.join(feature.values())+"\n")
-
-                # feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
-                #                 
-                
-
-                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
                 
                 if feature['strand'] == "+":
-                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                    feature_seq = contig_fa[contig][start-1:end].seq
                 else:
-                    # reverse complement the sequence
-                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
+                    # minus strand: reverse complement the sequence
+                    feature_seq = contig_fa[contig][start-1:end].antisense
 
-                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+                fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
 
-                # if feature['feature'] == "CDS":
-
-                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
-                    
-                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
-
+                
+def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
 
-# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+    protein_fa = pyfastx.Fasta(faa_file)
 
-#     protein_fa = pyfastx.Fasta(faa_file)
-#     all_names = [set(protein_fa.keys().filter())]
+    for contig, features in annotation_per_contigs:
+        
+        for feature in features:
+            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+
+            gff_id = get_tag_value(feature['attribute'], 'ID')
+            # ID in gff from prodigal is <contig_number>_<cds_number>
+            # seq name from prodigal is <contig_name>_<cds_number>
+            cds_number = gff_id.split('_')[-1]
+            cds_prodigal_id = f"{contig}_{cds_number}"
+            print(cds_prodigal_id, new_id)
+            print(protein_fa[cds_prodigal_id])
+            
+
+            
+            
+            input()
 
-    
-#     for contig, features in annotation_per_contigs:
         
 
-#     yield contig, features 
+    yield contig, features 
 
 
 def main():
@@ -242,7 +261,7 @@ def main():
     # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
-    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
     
 
 if __name__ == '__main__':
-- 
GitLab


From b7de39922bb5b1c9545a47509a340fd0a15ea79a Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:37:34 +0200
Subject: [PATCH 016/194] improve presentation string

---
 bin/merge_annotations.py | 41 ++++++++--------------------------------
 1 file changed, 8 insertions(+), 33 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index e6a5c59..91af848 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -3,10 +3,11 @@
 """
 Combine structural annotations made from different gff. 
 
-In case of collapsing annotations RNA annotation are prefered to CDS annotations.
+In case of collapsing annotations, RNA annotation are prefered to CDS annotations.
+Faa file from prodigal is processed to filter out overlapping sequences. 
 
 :Example:
-python template.py -v
+merge_annotations.py -c prodigal.gff -r barrnap.gff -t trnascan_se.gff --contig_seq contigs.fasta --faa_file prodigal.faa
 """
 
 # Metadata
@@ -37,14 +38,17 @@ def parse_arguments():
     parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
 
     parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene sequence', required=True)
+
+    parser.add_argument('--faa_file', help='fasta file of protein sequences generated by prodigal.', required=True)
 
     parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
 
     parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
 
     parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
-    
-    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -191,33 +195,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                 fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
 
-                
-def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
-
-    protein_fa = pyfastx.Fasta(faa_file)
-
-    for contig, features in annotation_per_contigs:
-        
-        for feature in features:
-            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
-
-            gff_id = get_tag_value(feature['attribute'], 'ID')
-            # ID in gff from prodigal is <contig_number>_<cds_number>
-            # seq name from prodigal is <contig_name>_<cds_number>
-            cds_number = gff_id.split('_')[-1]
-            cds_prodigal_id = f"{contig}_{cds_number}"
-            print(cds_prodigal_id, new_id)
-            print(protein_fa[cds_prodigal_id])
-            
-
-            
-            
-            input()
-
-        
-
-    yield contig, features 
-
 
 def main():
 
@@ -258,8 +235,6 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
-
     logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
     writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
     
-- 
GitLab


From 6e7f50079ee2fd69f61500c0517ba54fb7ea0c40 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:40:52 +0200
Subject: [PATCH 017/194] clean script

---
 bin/merge_annotations.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 91af848..ac098de 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -212,13 +212,14 @@ def main():
     rrna_file  = args.rrna
     cds_file = args.cds
 
-    output_gff = args.gff_output
 
     fna_file = args.contig_seq
+    faa_file = args.faa_file
+
+    out_gff = args.gff_output
     out_ffn = args.ffn_output
     out_faa = args.faa_output
 
-    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
@@ -235,8 +236,8 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
-    writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
+    logging.info(f'Writting CDS and RNA annotations to gff file: {out_gff}.')
+    writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
     
 
 if __name__ == '__main__':
-- 
GitLab


From 51acc8165a401e498b8d59b3df79c14b4c04a742 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:45:55 +0200
Subject: [PATCH 018/194] add faa files into merging process

---
 modules/merge_annotations.nf        | 8 +++++---
 subworkflows/04_structural_annot.nf | 2 +-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
index 4cbbd82..12f37e8 100644
--- a/modules/merge_annotations.nf
+++ b/modules/merge_annotations.nf
@@ -2,14 +2,16 @@ process MERGE_ANNOTATIONS {
   tag "${meta.id}"
 
   input:
-    tuple val(meta), file(assembly_file), file(cds_gff), file(rrna_gff), file(trna_gff)
+    tuple val(meta), file(assembly_file), file(faa_file), file(cds_gff), file(rrna_gff), file(trna_gff)
 
   output:
+    
 
 
   script:
   """
-    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  --contig_seq $assembly_file \
-                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff 
+    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  \
+                         --contig_seq $assembly_file --faa_file $faa_file \
+                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff --faa_output ${meta.sample}.faa 
   """
 }
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index e420d55..7ce7d5e 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -13,7 +13,7 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     TRNASCAN_SE( assembly )
 
 
-    annotations_ch = assembly.join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
+    annotations_ch = assembly.join(PRODIGAL.out.faa).join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
     annotations_ch.view()
 
-- 
GitLab


From 1f88a818b11c258a09415814daab402cb74d7e5c Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 17:38:04 +0200
Subject: [PATCH 019/194] Generate report to plot stat in multiqc

---
 bin/merge_annotations.py            | 21 +++++++++++++++++++--
 main.nf                             |  8 ++++----
 modules/merge_annotations.nf        | 10 +++++++---
 subworkflows/04_structural_annot.nf | 11 ++++-------
 4 files changed, 34 insertions(+), 16 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index ac098de..d18ebd0 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -49,6 +49,9 @@ def parse_arguments():
 
     parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
 
+    parser.add_argument('--report_output', help='Prokka report like to be able to show annotations in multiqc.', default="annotation_report.txt")
+
+
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -154,7 +157,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
     contig_fa = pyfastx.Fasta(fna_file)
     protein_fa = pyfastx.Fasta(faa_file)
 
-
     with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn, open(out_faa, 'w') as fh_faa:
 
         fh_gff.write("##gff-version  3\n")
@@ -194,6 +196,16 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
 
                 fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
+    # building prokka like report for multiqc
+    report = {"organism": "NA",
+            "contigs": len(contig_fa),
+            "bases": contig_fa.size }
+    report.update(gene_count)
+
+    return report
+
+
+
 
 
 def main():
@@ -219,6 +231,7 @@ def main():
     out_gff = args.gff_output
     out_ffn = args.ffn_output
     out_faa = args.faa_output
+    out_report = args.report_output
 
 
     logging.info('Parsing rRNA annoations.')
@@ -237,7 +250,11 @@ def main():
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {out_gff}.')
-    writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
+    report = writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
+    
+    with open(out_report, "w") as fl:
+        fl.write(''.join(f"{k}: {v}\n" for k,v in report.items()))
+
     
 
 if __name__ == '__main__':
diff --git a/main.nf b/main.nf
index 788b67f..44a6850 100644
--- a/main.nf
+++ b/main.nf
@@ -446,11 +446,11 @@ workflow {
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    // ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    // ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    // ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
+    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
+    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
     // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
-    // ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
     // ch_contigs_and_reads = ch_prokka_fna
     //     .join(ch_reads, remainder: true)
diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
index 12f37e8..c6481f6 100644
--- a/modules/merge_annotations.nf
+++ b/modules/merge_annotations.nf
@@ -1,17 +1,21 @@
 process MERGE_ANNOTATIONS {
+  publishDir "${params.outdir}/04_structural_annot/${meta.id}/", mode: 'copy'
   tag "${meta.id}"
 
   input:
     tuple val(meta), file(assembly_file), file(faa_file), file(cds_gff), file(rrna_gff), file(trna_gff)
 
   output:
-    
-
+    tuple val(meta), file("${meta.id}.gff"), emit: gff
+    tuple val(meta), file("${meta.id}.ffn"), emit: ffn
+    tuple val(meta), file("${meta.id}.faa"), emit: faa
+    path "${meta.id}.txt", emit: report
 
   script:
   """
     merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  \
                          --contig_seq $assembly_file --faa_file $faa_file \
-                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff --faa_output ${meta.sample}.faa 
+                         --ffn_output ${meta.id}.ffn  --gff_output ${meta.id}.gff --faa_output ${meta.id}.faa \
+                         --report_output ${meta.id}.txt
   """
 }
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 7ce7d5e..e315dbd 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -28,14 +28,11 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
                                                                 TRNASCAN_SE.out.v_tRNAscan.first())
 
-    // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
-
   emit:
-    // report = PROKKA.out.report
-    // fna = RENAME_CONTIGS_AND_GENES.out.fna
-    // ffn = RENAME_CONTIGS_AND_GENES.out.ffn
-    // gff = RENAME_CONTIGS_AND_GENES.out.gff
-    // faa = RENAME_CONTIGS_AND_GENES.out.faa 
+    report = MERGE_ANNOTATIONS.out.report
+    ffn = MERGE_ANNOTATIONS.out.ffn
+    gff = MERGE_ANNOTATIONS.out.gff
+    faa = MERGE_ANNOTATIONS.out.faa
     // prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From f3817cb08528be8c66dd2c1ea12bc1a9b53f4cf0 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 18:00:14 +0200
Subject: [PATCH 020/194] update multiqc config with new structural annotation
 method

---
 assets/hifi_multiqc_config.yaml | 7 ++++++-
 assets/sr_multiqc_config.yaml   | 8 +++++++-
 2 files changed, 13 insertions(+), 2 deletions(-)

diff --git a/assets/hifi_multiqc_config.yaml b/assets/hifi_multiqc_config.yaml
index 422ce27..c90beaa 100644
--- a/assets/hifi_multiqc_config.yaml
+++ b/assets/hifi_multiqc_config.yaml
@@ -52,7 +52,9 @@ module_order:
         info: 'This section of the report shows quast results after assembly filtering.'
         path_filters:
             - '*quast_filtered/*/report.tsv'
-    - prokka
+    - prokka:
+        name: 'Structural annotation'
+        info: 'This section of the report shows structural annotations results. CDS are predicted using Prodigal, rRNA using Barrnap and tRNA using tRNAscan-se.'
     - featureCounts
     - custom_content:
         name: 'Binning results'
@@ -85,3 +87,6 @@ table_columns_visible:
   FastQC (raw):
         percent_duplicates: False
         percent_gc: False
+  Structural annotation:
+        organism: False
+
diff --git a/assets/sr_multiqc_config.yaml b/assets/sr_multiqc_config.yaml
index ab04863..18076ef 100644
--- a/assets/sr_multiqc_config.yaml
+++ b/assets/sr_multiqc_config.yaml
@@ -64,7 +64,10 @@ module_order:
         info: 'This section reports of deduplicated reads alignement against contigs with bwa.'
         path_filters:
             - '*.count_reads_on_contigs.flagstat'
-    - prokka
+    - prokka:
+        name: 'Structural annotation'
+        info: 'This section of the report shows structural annotations results. CDS are predicted using Prodigal, rRNA using Barrnap and tRNA using tRNAscan-se.'
+    - featureCounts
     - featureCounts
     - custom_content:
         name: 'Binning results'
@@ -95,7 +98,10 @@ featurecounts:
   fn: '*.summary'
   shared: true
 
+
 table_columns_visible:
   FastQC (raw):
         percent_duplicates: False
         percent_gc: False
+  Structural annotation:
+        organism: False
-- 
GitLab


From 668244600dbe4feaa9d41da5824953ea3a08e179 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:16:21 +0200
Subject: [PATCH 021/194] rm prokka process and script

---
 bin/Rename_contigs_and_genes.py | 166 --------------------------------
 modules/prokka.nf               |  48 ---------
 2 files changed, 214 deletions(-)
 delete mode 100755 bin/Rename_contigs_and_genes.py
 delete mode 100644 modules/prokka.nf

diff --git a/bin/Rename_contigs_and_genes.py b/bin/Rename_contigs_and_genes.py
deleted file mode 100755
index 7d0e94d..0000000
--- a/bin/Rename_contigs_and_genes.py
+++ /dev/null
@@ -1,166 +0,0 @@
-#!/usr/bin/env python
-
-"""----------------------------------------------------------------------------------------------------------------------------------------------------------
-  Script Name: Rename_contigs_and_genes.py
-  Description: Rename contigs and genes in GFF, FAA and FFN
-               files generated by PROKKA.
-  Input files:
-               GFF, FAA and FFN files produced by PROKKA.
-  Created By:  Celine Noirot and Joanna Fourquet
-  Date:        2019-06-12
-----------------------------------------------------------------------------------------------------------------------------------------------------------
-"""
-
-# Metadata
-__author__ = 'Celine Noirot and Joanna Fourquet \
-- Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2019 INRA'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-# Status: dev
-
-# Modules importation
-try:
-    import argparse
-    from BCBio import GFF
-    from Bio.Seq import Seq
-    from Bio.SeqRecord import SeqRecord
-    from Bio.SeqFeature import SeqFeature, FeatureLocation
-    import pprint
-    from BCBio.GFF import GFFExaminer
-    from Bio import SeqIO
-except ImportError as error:
-    print(error)
-    exit(1)
-
-# Manage parameters
-parser = argparse.ArgumentParser(description = \
-'Script which rename contigs and genes in GFF, FAA and FFN files generated by PROKKA.')
-parser.add_argument('-f', '--file', required = True, help = \
-'GFF file generated by PROKKA.')
-parser.add_argument('-faa', '--fastaFile', required = True, \
-help = 'Fasta of predicted sequence (aa) generated by PROKKA (FAA).')
-parser.add_argument('-ffn', '--ffnFile', required = True, \
-help = 'Fasta of predicted sequence (nuc) generated by PROKKA (FFN).')
-parser.add_argument('-fna', '--fnaFile', required = True, \
-help = 'Fasta of contigs generated by PROKKA.')
-parser.add_argument('-p', '--prefix', required = True, \
-help = 'Contig name prefix.')
-parser.add_argument('-oGFF', '--outGFFFile', required = True, \
-help = 'Name of output GFF file.')
-parser.add_argument('-oFAA', '--outFAAFile', required = True, \
-help = 'Filename of renamed predicted fasta sequences (aa).')
-parser.add_argument('-oFFN', '--outFFNFile', required = True, \
-help = 'Filename of renamed predicted fasta sequences (nuc).')
-parser.add_argument('-oFNA', '--outFNAFile', required = True, \
-help = 'Filename of renamed contig sequences (nuc).')
-parser.add_argument('-oprottable', '--outProtein', default = "protein_table.csv", \
-help = 'Filename for protein names correspondance table.')
-parser.add_argument('-oconttable', '--outContig', default = "contig_table.csv", \
-help = 'Filename for contig names correspondance table.')
-args = parser.parse_args()
-
-
-# Variable names informations:
-# prot: corresponds to proteins
-# ctg: corresponds to contigs
-
-# Variables initialization.
-prot_names = {}
-contig_renames = {}
-ctg_prefix = args.prefix
-prot_prefix = "Prot_"
-to_write = []
-# lecture fna
-#remplissage 
-#contig_renames [ald_name]=newname
-#reecriture du fasta
-
-with open(args.fnaFile, "r") as fnaFile,\
-    open(args.outFNAFile, "w") as outFNA_handle:
-    for record in SeqIO.parse(fnaFile, "fasta"):
-        try :
-            old_ctg_name = record.id
-            new_ctg_name = ctg_prefix + "_c" + old_ctg_name.split("_")[-1]
-            contig_renames[old_ctg_name] = new_ctg_name
-            record.id = contig_renames[old_ctg_name]
-            record.description = record.description.replace(old_ctg_name,"")
-            SeqIO.write(record, outFNA_handle, "fasta")
-        except :
-            print ("Warning FNA file : contig " + record.id + " discarded, no new name defined")
-            pass
-    
-with open(args.file) as gffFile,\
-    open(args.outGFFFile, "w") as out_handle,\
-    open(args.outProtein, "w") as fh_prot_table,\
-    open(args.outContig, "w") as fh_cont_table,\
-    open(args.outContig + ".sed", "w") as fh_cont_sed:
-    for rec in GFF.parse(gffFile):
-        # Access to contig id
-        old_ctg_name = rec.id
-        new_ctg_name = contig_renames[old_ctg_name]
-        rec.id = new_ctg_name
-
-        fh_cont_table.write(old_ctg_name + "\t" + new_ctg_name + "\n")
-        fh_cont_sed.write("s/" + old_ctg_name + "/" + new_ctg_name + "/\n")
-        # Access to features
-        for f_index,feature in enumerate(rec.features):
-            if(not(feature.qualifiers['source'][0].startswith("minced"))):
-                #Generate correspondance
-                old_prot_name = feature.qualifiers['ID'][0].replace("_gene","")
-                prot_number =  old_prot_name.split("_")[-1]
-                
-                subfeat_types = {subfeat.type for subfeat in feature.sub_features}
-                assert len(subfeat_types) == 1, f'Subfeature have different types {subfeat_types}' 
-                subfeat_type = subfeat_types.pop()
-
-
-                new_prot_name = f"{new_ctg_name}.{subfeat_type}_{prot_number}"
-                prot_names[old_prot_name] = new_prot_name
-                fh_prot_table.write(old_prot_name + "\t" + new_prot_name + "\n")
-
-                #Initialize field of "gene" feature (the parent)
-                rec.features[f_index].qualifiers["ID"] = new_prot_name + "_gene"
-                rec.features[f_index].qualifiers["locus_tag"] = [new_prot_name]
-
-                #Annotations (not prokka lines) are in sub_features
-                for fsub_index,sub_feature in enumerate(feature.sub_features):
-                    # Update ID
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["ID"] = new_prot_name
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["Parent"] = []
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["locus_tag"] = [new_prot_name]
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["protein_id"] = [new_prot_name]
-        to_write.append(rec)
-
-    #Write only one time
-    #print (to_write)
-    GFF.write(to_write, out_handle)
-
-
-with open(args.fastaFile, "r") as handle,\
-    open(args.outFAAFile, "w") as outFasta_handle:
-    for record in SeqIO.parse(handle, "fasta"):
-        try :
-            old = record.id
-            record.id = prot_names[record.id]
-            record.description = record.description.replace(old + " ","")
-            SeqIO.write(record, outFasta_handle, "fasta")
-        except :
-            print ("Warning FAA file : protein " + record.id + " discarded, no new name defined")
-            pass
-
-
-with open(args.ffnFile, "r") as handle,\
-    open(args.outFFNFile, "w") as outFFN_handle:
-    for record in SeqIO.parse(handle, "fasta"):
-        try :
-            old = record.id
-            record.id = prot_names[record.id]
-            record.description = record.description.replace(old + " ","")
-            SeqIO.write(record, outFFN_handle, "fasta")
-        except :
-            print ("Warning FFN file : protein " + record.id + " discarded, no new name defined")
-            pass
diff --git a/modules/prokka.nf b/modules/prokka.nf
deleted file mode 100644
index 6fbd538..0000000
--- a/modules/prokka.nf
+++ /dev/null
@@ -1,48 +0,0 @@
-process PROKKA {
-  tag "${meta.id}"
-
-  input:
-  tuple val(meta), file(assembly_file)
-
-   output:
-   tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
-   path "PROKKA_${meta.id}/${meta.id}.txt", emit: report
-   path "v_prokka.txt", emit: v_prokka
-
-  script:
-  """
-  prokka --metagenome --noanno --rawproduct --outdir PROKKA_${meta.id} --prefix ${meta.id} ${assembly_file} --centre X --compliant --cpus ${task.cpus}
-  rm PROKKA_${meta.id}/*.gbk
-  gt gff3validator PROKKA_${meta.id}/${meta.id}.gff 
-
-  prokka -v &> v_prokka.txt
-  """
-}
-
-process RENAME_CONTIGS_AND_GENES {
-  tag "${meta.id}"
-  publishDir "${params.outdir}/04_structural_annot", mode: 'copy'
-  label 'PYTHON'
-
-  input:
-    tuple val(meta), path(prokka_results)
-
-  output:
-    tuple val(meta), path("${meta.id}.annotated.fna"), emit: fna
-    tuple val(meta), path("${meta.id}.annotated.ffn"), emit: ffn
-    tuple val(meta), path("${meta.id}.annotated.faa"), emit: faa
-    tuple val(meta), path("${meta.id}.annotated.gff"), emit: gff
-    tuple val(meta), path("${meta.id}_prot.len"), emit: prot_length
-  
-  script:
-  """
-  grep "^gnl" ${prokka_results}/${meta.id}.gff > ${meta.id}_only_gnl.gff
-  
-  Rename_contigs_and_genes.py -f ${meta.id}_only_gnl.gff -faa ${prokka_results}/${meta.id}.faa \
-                              -ffn ${prokka_results}/${meta.id}.ffn -fna ${prokka_results}/${meta.id}.fna \
-                              -p ${meta.id} -oGFF ${meta.id}.annotated.gff -oFAA ${meta.id}.annotated.faa \
-                              -oFFN ${meta.id}.annotated.ffn -oFNA ${meta.id}.annotated.fna
-                              
-  samtools faidx ${meta.id}.annotated.faa; cut -f 1,2 ${meta.id}.annotated.faa.fai > ${meta.id}_prot.len
-  """
-}
-- 
GitLab


From c6f2778c60764647bbee7733224f4be486bdfac4 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:18:32 +0200
Subject: [PATCH 022/194] rm conf of removed process

---
 conf/base.config | 7 -------
 conf/test.config | 7 -------
 2 files changed, 14 deletions(-)

diff --git a/conf/base.config b/conf/base.config
index fd060b8..a94490b 100644
--- a/conf/base.config
+++ b/conf/base.config
@@ -58,13 +58,6 @@ process {
         memory = { 8.GB * task.attempt }
         cpus = 4
     }
-    withName: PROKKA {
-        memory = { 45.GB * task.attempt }
-        cpus = 8
-    }
-    withName: RENAME_CONTIGS_AND_GENES {
-        memory = { 20.GB * task.attempt }
-    }
     withLabel: CD_HIT {
         memory = { 50.GB * task.attempt }
         cpus = 16
diff --git a/conf/test.config b/conf/test.config
index 710b959..ae50b57 100644
--- a/conf/test.config
+++ b/conf/test.config
@@ -49,13 +49,6 @@ process {
         memory = { 1.GB * task.attempt }
         cpus = 2
     }
-    withName: PROKKA {
-        memory = { 1.GB * task.attempt }
-        cpus = 1
-    }
-    withName: RENAME_CONTIGS_AND_GENES {
-        memory = { 1.GB * task.attempt }
-    }
     withLabel: CD_HIT {
         memory = { 16.GB * task.attempt }
         cpus = 2
-- 
GitLab


From 1092e2592f39c7b93f67fb4a3ef2dee032e223b1 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:38:45 +0200
Subject: [PATCH 023/194] simple script to rename contigs with sample and
 contig number

---
 modules/rename_contigs.nf | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
new file mode 100644
index 0000000..e69de29
-- 
GitLab


From bbf5ec9720f9ddc4e3fe6cca3ae4b185d91bec56 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:39:13 +0200
Subject: [PATCH 024/194] make script exec

---
 bin/rename_contigs.py | 71 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)
 create mode 100755 bin/rename_contigs.py

diff --git a/bin/rename_contigs.py b/bin/rename_contigs.py
new file mode 100755
index 0000000..0734c9c
--- /dev/null
+++ b/bin/rename_contigs.py
@@ -0,0 +1,71 @@
+#!/usr/bin/env python3
+
+"""
+Rename assembly contigs.
+
+Rename contig as <sample_name>_c<contig_number>
+
+:Example:
+rename_contigs.py -h
+"""
+
+# Metadata
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2020 INRAE'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, FileType
+import logging
+import gzip
+import csv
+from collections import defaultdict
+import pyfastx
+from Bio.Seq import Seq
+
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-s', '--sample', help='Sample name used to rename contigs.', required=True)
+    
+    parser.add_argument('-i', '--fna_file', help='Original fasta file of contigs.', required=True)
+
+    parser.add_argument('-o', '--out_fna', help='Output fasta file with renamed contigs.', required=True)
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+
+
+def main():
+
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+    sample = args.sample    
+    fna_file = args.fna_file
+    out_fna = args.out_fna
+
+
+    logging.info(f'Writting renamed fasta file in {out_fna}')
+    with open(out_fna, "w") as fh_fna:
+        for i, (_, seq) in enumerate(pyfastx.Fasta(fna_file, build_index=False)):
+            fh_fna.write(f'>{sample}_c{i+1}\n{seq}\n')
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
-- 
GitLab


From 52941577a0ee4e4bd8e5c23039ef4c25aa471a53 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:42:47 +0200
Subject: [PATCH 025/194] call RENAME_CONTIGS process

---
 modules/assembly.nf | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/modules/assembly.nf b/modules/assembly.nf
index b8f9d35..41db2c5 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -107,3 +107,20 @@ process METAFLYE {
   """
 }
 
+process RENAME_CONTIGS {
+  tag "${meta.id}"
+  publishDir "${params.outdir}/02_assembly/", mode: 'copy'
+  label 'PYTHON'
+
+  input:
+    tuple val(meta), path(assembly)
+
+  output:
+    tuple val(meta), path("${meta.id}.fna"), emit: fna
+
+  script:
+  """
+    rename_contigs.py --sample ${meta.id}  --fna_file $assembly --out_fna ${meta.id}.fna -v
+
+  """
+}
\ No newline at end of file
-- 
GitLab


From faec234a8f1a5d6c7e324dfc6723c758d713bd3c Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:50:28 +0200
Subject: [PATCH 026/194] call RENAME_CONTIGS in 02_assembly

---
 modules/rename_contigs.nf   | 0
 subworkflows/02_assembly.nf | 9 +++++----
 2 files changed, 5 insertions(+), 4 deletions(-)
 delete mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
deleted file mode 100644
index e69de29..0000000
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 8411728..0101234 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -1,4 +1,4 @@
-include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE } from '../modules/assembly'
+include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; RENAME_CONTIGS } from '../modules/assembly'
 include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
@@ -47,7 +47,8 @@ workflow STEP_02_ASSEMBLY {
         }
     }
     
-    ASSEMBLY_QUAST( ch_assembly,"02_assembly/quast_primary")
+    ch_assembly_renamed = RENAME_CONTIGS(ch_assembly)
+    ASSEMBLY_QUAST( ch_assembly_renamed,"02_assembly/quast_primary")
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
 
@@ -57,7 +58,7 @@ workflow STEP_02_ASSEMBLY {
     ch_flagstat = Channel.empty()
     ch_reads = reads
 
-    ch_contigs_and_reads = ch_assembly.join(ch_reads, remainder: true)
+    ch_contigs_and_reads = ch_assembly_renamed.join(ch_reads, remainder: true)
     if ( params.type.toUpperCase() == "SR" ) {
       READS_DEDUPLICATION ( ch_contigs_and_reads )
       ch_dedup = READS_DEDUPLICATION.out.dedup
@@ -88,7 +89,7 @@ workflow STEP_02_ASSEMBLY {
 
 
   emit:
-    assembly = ch_assembly
+    assembly = ch_assembly_renamed
     dedup = ch_dedup
     idxstats = ch_idxstats
     flagstat = ch_flagstat
-- 
GitLab


From 6cf92e7e3813662c4770c23b8643a5381a6a3a51 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 14:57:10 +0200
Subject: [PATCH 027/194] Add prodigal  module #163

---
 modules/prodigal.nf | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 modules/prodigal.nf

diff --git a/modules/prodigal.nf b/modules/prodigal.nf
new file mode 100644
index 0000000..1a9946c
--- /dev/null
+++ b/modules/prodigal.nf
@@ -0,0 +1,18 @@
+process PRODIGAL {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
+    path "v_prodigal.txt", emit: v_prokka
+
+  script:
+  """
+  prodigal -i ${assembly_file} -c -p meta -f gff -a prodigal.faa -o prodigal.gff 
+  
+  prodigal -v 2> v_prodigal.txt
+
+  """
+}
\ No newline at end of file
-- 
GitLab


From 3219ec1d03a7e37cf6336c882a559183c8438996 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:51:34 +0200
Subject: [PATCH 028/194] Add barrnap module see issue #163

---
 modules/barnap.nf | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 modules/barnap.nf

diff --git a/modules/barnap.nf b/modules/barnap.nf
new file mode 100644
index 0000000..0b88b76
--- /dev/null
+++ b/modules/barnap.nf
@@ -0,0 +1,18 @@
+process PRODIGAL {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
+    path "v_barrnap.txt", emit: v_barrnap
+
+  script:
+  """
+    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
+
+    barrnap --version  2> v_barrnap.txt
+
+  """
+}
-- 
GitLab


From 090dd8fb60b1a15811f3c3090dc8da4d202f281b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:52:13 +0200
Subject: [PATCH 029/194] Fix typo in prodigal module see issue #163

---
 modules/prodigal.nf | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/modules/prodigal.nf b/modules/prodigal.nf
index 1a9946c..be69d07 100644
--- a/modules/prodigal.nf
+++ b/modules/prodigal.nf
@@ -5,8 +5,9 @@ process PRODIGAL {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
-    path "v_prodigal.txt", emit: v_prokka
+    tuple val(meta), path("prodigal.gff"), emit: prodigal_gff
+    tuple val(meta), path("prodigal.faa"), emit: prodigal_faa
+    path "v_prodigal.txt", emit: v_prodigal
 
   script:
   """
-- 
GitLab


From 4df1dcc1a25ba4571bc977887fdcb6bfcd5b77a4 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:55:34 +0200
Subject: [PATCH 030/194] fix module name

---
 modules/barnap.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/barnap.nf b/modules/barnap.nf
index 0b88b76..302ab6d 100644
--- a/modules/barnap.nf
+++ b/modules/barnap.nf
@@ -1,4 +1,4 @@
-process PRODIGAL {
+process BARRNAP {
   tag "${meta.id}"
 
   input:
-- 
GitLab


From f1ccb099769b60ca5fa95fc2a354468a80111d6b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 16:18:15 +0200
Subject: [PATCH 031/194] fix typo in barrnap name module

---
 modules/{barnap.nf => barrnap.nf} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename modules/{barnap.nf => barrnap.nf} (100%)

diff --git a/modules/barnap.nf b/modules/barrnap.nf
similarity index 100%
rename from modules/barnap.nf
rename to modules/barrnap.nf
-- 
GitLab


From 17f531e2120bbdf17eec1bd8fc765509ae8eeb98 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 17:10:09 +0200
Subject: [PATCH 032/194] structuring step 04 with prodigal + barrnap approach

---
 main.nf                             | 17 +++++++++--------
 subworkflows/04_structural_annot.nf | 26 ++++++++++++++++----------
 2 files changed, 25 insertions(+), 18 deletions(-)

diff --git a/main.nf b/main.nf
index 229345d..cde0ad1 100644
--- a/main.nf
+++ b/main.nf
@@ -443,17 +443,18 @@ workflow {
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
-    ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
-    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    // ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    // ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
+    // ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
+    // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
+    // ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
-    ch_contigs_and_reads = ch_prokka_fna
-        .join(ch_reads, remainder: true)
-    ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
+    // ch_contigs_and_reads = ch_prokka_fna
+    //     .join(ch_reads, remainder: true)
+    // ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
 
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
+    // exit 0, 'Exit now... S04_STRUCTURAL_ANNOT being constructed ' 
 	}
 
   ch_bam = Channel.empty()
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 61bff36..ba3d4fe 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,19 +1,25 @@
-include { PROKKA; RENAME_CONTIGS_AND_GENES } from '../modules/prokka'
+include { PRODIGAL } from '../modules/prodigal'
+include { BARRNAP } from '../modules/barrnap'
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
 
   main:
-    PROKKA( assembly )
-    ch_software_versions = PROKKA.out.v_prokka.first()
-    RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
+    PRODIGAL( assembly )
+    BARRNAP( assembly )
+    ch_software_versions = PRODIGAL.out.v_prodigal.first()
+
+
+    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first())
+
+    // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
 
   emit:
-    report = PROKKA.out.report
-    fna = RENAME_CONTIGS_AND_GENES.out.fna
-    ffn = RENAME_CONTIGS_AND_GENES.out.ffn
-    gff = RENAME_CONTIGS_AND_GENES.out.gff
-    faa = RENAME_CONTIGS_AND_GENES.out.faa 
-    prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
+    // report = PROKKA.out.report
+    // fna = RENAME_CONTIGS_AND_GENES.out.fna
+    // ffn = RENAME_CONTIGS_AND_GENES.out.ffn
+    // gff = RENAME_CONTIGS_AND_GENES.out.gff
+    // faa = RENAME_CONTIGS_AND_GENES.out.faa 
+    // prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From 40bf8662d360e145d7268ad9d7f03812d7a2ef8b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 17:10:43 +0200
Subject: [PATCH 033/194] fix barnnap output

---
 modules/barrnap.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/barrnap.nf b/modules/barrnap.nf
index 302ab6d..44cbd5e 100644
--- a/modules/barrnap.nf
+++ b/modules/barrnap.nf
@@ -10,7 +10,7 @@ process BARRNAP {
 
   script:
   """
-    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
+    barrnap --threads ${task.cpus} ${assembly_file} > barrnap.gff
 
     barrnap --version  2> v_barrnap.txt
 
-- 
GitLab


From 80e61aa9048ec99362ed88b3ce5d836a542b048f Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 10:35:40 +0200
Subject: [PATCH 034/194] Add trnascan and pyfastx in conda recipe

issue #163
---
 env/metagWGS.yml | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/env/metagWGS.yml b/env/metagWGS.yml
index 920422d..3708912 100644
--- a/env/metagWGS.yml
+++ b/env/metagWGS.yml
@@ -27,4 +27,6 @@ dependencies:
   - subread=2.0.1
   - flye=2.9.1
   - hifiasm_meta=hamtv0.3
-  - plotly
\ No newline at end of file
+  - plotly
+  - trnascan-se=2.0.11
+  - pyfastx
\ No newline at end of file
-- 
GitLab


From 7ee829d797a6441aba07f25e136b03388fa6f9b3 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 11:45:15 +0200
Subject: [PATCH 035/194] Add trnascan_se module issue #163

---
 modules/trnascan_se.nf              | 19 +++++++++++++++++++
 subworkflows/04_structural_annot.nf |  6 +++++-
 2 files changed, 24 insertions(+), 1 deletion(-)
 create mode 100644 modules/trnascan_se.nf

diff --git a/modules/trnascan_se.nf b/modules/trnascan_se.nf
new file mode 100644
index 0000000..e292e3e
--- /dev/null
+++ b/modules/trnascan_se.nf
@@ -0,0 +1,19 @@
+process TRNASCAN_SE {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("trnascan_se.gff"), emit: trnascan_gff
+    path "v_tRNAscan.txt", emit: v_tRNAscan
+
+  script:
+  """
+    tRNAscan-SE -B --gff trnascan_se.gff  --thread ${task.cpus} --stats trnascan_se.log  ${assembly_file}
+
+    tRNAscan-SE -h 2> v_tRNAscan.txt
+
+
+  """
+}
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index ba3d4fe..4e6687b 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,5 +1,6 @@
 include { PRODIGAL } from '../modules/prodigal'
 include { BARRNAP } from '../modules/barrnap'
+include { TRNASCAN_SE } from '../modules/trnascan_se'
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
@@ -7,10 +8,13 @@ workflow STEP_04_STRUCTURAL_ANNOT {
   main:
     PRODIGAL( assembly )
     BARRNAP( assembly )
+    TRNASCAN_SE( assembly )
+
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
 
-    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first())
+    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
+                                                                TRNASCAN_SE.out.v_tRNAscan.first())
 
     // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
 
-- 
GitLab


From 6ae87fe3a29afa7580d766d72b461fe1097ce85d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 17:48:21 +0200
Subject: [PATCH 036/194] simplify channel name

---
 modules/barrnap.nf     | 2 +-
 modules/prodigal.nf    | 4 ++--
 modules/trnascan_se.nf | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/modules/barrnap.nf b/modules/barrnap.nf
index 44cbd5e..16013a0 100644
--- a/modules/barrnap.nf
+++ b/modules/barrnap.nf
@@ -5,7 +5,7 @@ process BARRNAP {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
+    tuple val(meta), path("barrnap.gff"), emit: gff
     path "v_barrnap.txt", emit: v_barrnap
 
   script:
diff --git a/modules/prodigal.nf b/modules/prodigal.nf
index be69d07..63bde69 100644
--- a/modules/prodigal.nf
+++ b/modules/prodigal.nf
@@ -5,8 +5,8 @@ process PRODIGAL {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("prodigal.gff"), emit: prodigal_gff
-    tuple val(meta), path("prodigal.faa"), emit: prodigal_faa
+    tuple val(meta), path("prodigal.gff"), emit: gff
+    tuple val(meta), path("prodigal.faa"), emit: faa
     path "v_prodigal.txt", emit: v_prodigal
 
   script:
diff --git a/modules/trnascan_se.nf b/modules/trnascan_se.nf
index e292e3e..b690c7c 100644
--- a/modules/trnascan_se.nf
+++ b/modules/trnascan_se.nf
@@ -5,7 +5,7 @@ process TRNASCAN_SE {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("trnascan_se.gff"), emit: trnascan_gff
+    tuple val(meta), path("trnascan_se.gff"), emit: gff
     path "v_tRNAscan.txt", emit: v_tRNAscan
 
   script:
-- 
GitLab


From 82b9f4172e919835d844d859fa8a4d4b16338ec4 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 18:03:14 +0200
Subject: [PATCH 037/194] Add process and script to merge gff annotations issue
 #163

---
 bin/merge_annotations.py            | 178 ++++++++++++++++++++++++++++
 subworkflows/04_structural_annot.nf |  12 ++
 2 files changed, 190 insertions(+)
 create mode 100755 bin/merge_annotations.py

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
new file mode 100755
index 0000000..8d3b4fa
--- /dev/null
+++ b/bin/merge_annotations.py
@@ -0,0 +1,178 @@
+#!/usr/bin/env python3
+
+"""
+Combine structural annotations made from different gff. 
+
+In case of collapsing annotations RNA annotation are prefered to CDS annotations.
+
+:Example:
+python template.py -v
+"""
+
+# Metadata
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2020 INRAE'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, FileType
+import logging
+import gzip
+import csv
+from collections import defaultdict
+
+def read_file_and_ignore_hashtag(file_path):
+    proper_open = gzip.open if file_path.endswith('.gz') else open
+    with proper_open(file_path, 'rt') as fl:
+        for line in fl:
+            if line.startswith('#'):
+                continue
+            yield line
+
+def group_annotations_by_contigs(*gff_annotations):
+
+    contig2annotations = defaultdict(list) 
+    for annotations in gff_annotations:
+        for annotation in annotations:
+            contig2annotations[annotation['seqname']].append(annotation)
+
+    return contig2annotations
+
+        
+def parse_gff_file(gff_file, feature_to_keep=False):
+
+    gff_headers = ("seqname", "_3", "feature", "start", "end", "_2", "strand", "_1", "attribute")
+
+    gff_annotations = csv.DictReader(read_file_and_ignore_hashtag(gff_file), 
+                                                                        delimiter='\t',
+                                                                        fieldnames=gff_headers)
+
+    if feature_to_keep:
+        logging.info(f'Keeping only {feature_to_keep} feature from {gff_file}')
+        gff_annotations = (annotation for annotation in gff_annotations if annotation['feature'] == feature_to_keep)
+        
+    return gff_annotations
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
+
+    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
+
+    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+
+    parser.add_argument('-o', '--gff_output', help='final gff file with merged annotations.', required=True)
+
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+def remove_overlapping_cds(cds_file, contig2rnas):
+
+    contig_annotations = []
+    current_contig = None
+
+    for cds in parse_gff_file(cds_file, 'CDS'):
+        
+        reading_next_contig = cds['seqname'] != current_contig
+        
+        if contig_annotations and reading_next_contig:
+
+            yield current_contig, contig_annotations
+            contig_annotations = []
+
+        current_contig = cds['seqname']
+
+        is_overlapping = False
+        for rna in contig2rnas[current_contig]:
+                if (int(rna['end']) < int(cds['start']) or int(rna['start']) > int(cds['end'])):
+                    continue
+                
+                else:  # overlap -> remove cds
+                    is_overlapping = True
+                    overlap = f"[{max(rna['start'], cds['start'])},{min(rna['end'], cds['end'])}]"
+                    rna_info = f"{rna['feature']} [{rna['start']}, {rna['end']}]"
+                    cds_info = f"CDS [{cds['start']}, {cds['end']}]"
+                    logging.info(f"overlap: {cds_info} overlapping with {rna_info} at {overlap} on contig={current_contig}")
+
+        if not is_overlapping:
+            contig_annotations.append(cds)
+
+    yield current_contig, contig_annotations
+
+def merging_cds_and_rna(cds_per_contig, contig2rnas):
+    contig_processed = []
+    for contig, cds_features in cds_per_contig:
+        contig_processed.append(contig)
+        rna_features = contig2rnas[contig]
+        yield contig, rna_features + cds_features
+    
+    # check that all rrna contigs have been processed if not processe them
+    for contig, rnas in  contig2rnas.items():
+        if contig not in contig_processed:
+            logging.info(f'{contig} has only rna annotation')
+            yield contig, rnas
+
+def writing_features_to_gff(annotations_per_contig, out_gff):
+    
+    with open(out_gff, 'w') as fl:
+
+        fl.write("##gff-version  3\n")
+        for contig, features in annotations_per_contig:
+            logging.info(f"writing {contig} annotations to gff file")
+            fl.write(f"##sequence-region {contig}\n")
+
+            for feature in sorted(features, key=lambda x: int(x['start'])):
+                fl.write('\t'.join(feature.values())+"\n")
+
+def main():
+
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+
+    trna_file  = args.trna 
+    rrna_file  = args.rrna
+    cds_file = args.cds
+
+    output_gff = args.gff_output
+
+    logging.info('Parsing rRNA annoations.')
+    rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
+
+    logging.info('Parsing tRNA annoations.')
+    trna_annotations = parse_gff_file(trna_file, 'tRNA')
+
+    logging.info('Grouping RNA annoations by contig.')
+    contig2rnas = group_annotations_by_contigs(trna_annotations, rrna_annotations)
+    
+    logging.info('Removing CDS annoations overlapping a RNA annotations.')
+    unoverlapping_cds_per_contig = remove_overlapping_cds(cds_file, contig2rnas)
+
+    logging.info('Merge CDS and RNA annotations by contig.')
+    annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
+
+    logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
+    writing_features_to_gff(annotation_per_contigs, output_gff)
+    
+
+
+
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 4e6687b..a70b215 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,6 +1,8 @@
 include { PRODIGAL } from '../modules/prodigal'
 include { BARRNAP } from '../modules/barrnap'
 include { TRNASCAN_SE } from '../modules/trnascan_se'
+include { MERGE_ANNOTATIONS } from '../modules/merge_annotations'
+
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
@@ -10,6 +12,16 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     BARRNAP( assembly )
     TRNASCAN_SE( assembly )
 
+
+    annotations_ch = PRODIGAL.out.gff.join(BARRNAP.out.gff)
+                                              .join(TRNASCAN_SE.out.gff)
+    annotations_ch.view()
+
+
+
+    MERGE_ANNOTATIONS(annotations_ch)
+
+
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
 
-- 
GitLab


From 6c5e309a427600f1dbfaadacd166e3afe8ffc630 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 19:01:45 +0200
Subject: [PATCH 038/194] add ffn output on top of gff output

---
 bin/merge_annotations.py            | 51 +++++++++++++++++++++++++----
 subworkflows/04_structural_annot.nf |  2 +-
 2 files changed, 45 insertions(+), 8 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 8d3b4fa..91ebdb0 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -23,6 +23,8 @@ import logging
 import gzip
 import csv
 from collections import defaultdict
+import pyfastx
+
 
 def read_file_and_ignore_hashtag(file_path):
     proper_open = gzip.open if file_path.endswith('.gz') else open
@@ -67,7 +69,11 @@ def parse_arguments():
 
     parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
 
-    parser.add_argument('-o', '--gff_output', help='final gff file with merged annotations.', required=True)
+    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
+    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
 
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
@@ -122,17 +128,44 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
             logging.info(f'{contig} has only rna annotation')
             yield contig, rnas
 
-def writing_features_to_gff(annotations_per_contig, out_gff):
+def add_new_ID_tag(gff_attributes, new_id):
+    gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] != 'ID'])
+    return f"ID={new_id};{gff_attributes_no_id}"
+
+def get_Name_tag(gff_attributes):
+    for attr in gff_attributes.split(';'):
+        if attr.split('=')[0] == "Name":
+            return attr.split('=')[1]
+    return ''
+
+
+def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
     
-    with open(out_gff, 'w') as fl:
+    contig_fa = pyfastx.Fasta(fna_file)
+
+
+    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
 
-        fl.write("##gff-version  3\n")
+        fh_gff.write("##gff-version  3\n")
         for contig, features in annotations_per_contig:
+            gene_count = defaultdict(int)
             logging.info(f"writing {contig} annotations to gff file")
-            fl.write(f"##sequence-region {contig}\n")
+            fh_gff.write(f"##sequence-region {contig}\n")
 
             for feature in sorted(features, key=lambda x: int(x['start'])):
-                fl.write('\t'.join(feature.values())+"\n")
+                gene_count[feature['feature']] += 1 
+                new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+
+                feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
+
+                tag_name = get_Name_tag(feature['attribute'])
+                fh_gff.write('\t'.join(feature.values())+"\n")
+
+                feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
+                fh_ffn.write(f">{new_id} {tag_name}\n")
+                fh_ffn.write(f"{feature_seq}\n")
+
+
 
 def main():
 
@@ -152,6 +185,9 @@ def main():
 
     output_gff = args.gff_output
 
+    fna_file = args.contig_seq
+    out_ffn = args.ffn_output
+
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
 
@@ -168,11 +204,12 @@ def main():
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
     logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
-    writing_features_to_gff(annotation_per_contigs, output_gff)
+    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn)
     
 
 
 
 
+
 if __name__ == '__main__':
     main()
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index a70b215..e420d55 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -13,7 +13,7 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     TRNASCAN_SE( assembly )
 
 
-    annotations_ch = PRODIGAL.out.gff.join(BARRNAP.out.gff)
+    annotations_ch = assembly.join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
     annotations_ch.view()
 
-- 
GitLab


From eb8392e1799265f431e3f6e26c8bf9708af03fa6 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 09:31:10 +0200
Subject: [PATCH 039/194] process to launch python script to merge gff files

---
 modules/merge_annotations.nf | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
 create mode 100644 modules/merge_annotations.nf

diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
new file mode 100644
index 0000000..4cbbd82
--- /dev/null
+++ b/modules/merge_annotations.nf
@@ -0,0 +1,15 @@
+process MERGE_ANNOTATIONS {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file), file(cds_gff), file(rrna_gff), file(trna_gff)
+
+  output:
+
+
+  script:
+  """
+    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  --contig_seq $assembly_file \
+                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff 
+  """
+}
\ No newline at end of file
-- 
GitLab


From 7d1759466fbb08f640ad66a37f0b517eb7c4b674 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 13:37:32 +0200
Subject: [PATCH 040/194] fix strand and zero base position when extracting seq

---
 bin/merge_annotations.py | 112 +++++++++++++++++++++++++--------------
 1 file changed, 73 insertions(+), 39 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 91ebdb0..5434cdb 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -24,9 +24,36 @@ import gzip
 import csv
 from collections import defaultdict
 import pyfastx
+from Bio.Seq import Seq
 
 
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
+
+    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
+
+    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+
+    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
+
+    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
+
+    parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
 def read_file_and_ignore_hashtag(file_path):
+
     proper_open = gzip.open if file_path.endswith('.gz') else open
     with proper_open(file_path, 'rt') as fl:
         for line in fl:
@@ -58,30 +85,6 @@ def parse_gff_file(gff_file, feature_to_keep=False):
         
     return gff_annotations
 
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(description="...",
-                            formatter_class=ArgumentDefaultsHelpFormatter)
-
-    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
-
-    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
-
-    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
-
-    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
-    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
-    
-    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
-
-
-
-    parser.add_argument("-v", "--verbose", help="increase output verbosity",
-                        action="store_true")
-
-    args = parser.parse_args()
-    return args
-
 def remove_overlapping_cds(cds_file, contig2rnas):
 
     contig_annotations = []
@@ -116,6 +119,7 @@ def remove_overlapping_cds(cds_file, contig2rnas):
     yield current_contig, contig_annotations
 
 def merging_cds_and_rna(cds_per_contig, contig2rnas):
+
     contig_processed = []
     for contig, cds_features in cds_per_contig:
         contig_processed.append(contig)
@@ -129,21 +133,22 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
             yield contig, rnas
 
 def add_new_ID_tag(gff_attributes, new_id):
+
     gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] != 'ID'])
     return f"ID={new_id};{gff_attributes_no_id}"
 
-def get_Name_tag(gff_attributes):
-    for attr in gff_attributes.split(';'):
-        if attr.split('=')[0] == "Name":
+
+def get_tag_value(gff_attribute, tag):
+
+    for attr in gff_attribute.split(';'):
+        if attr.split('=')[0] == tag:
             return attr.split('=')[1]
     return ''
 
-
 def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
     
     contig_fa = pyfastx.Fasta(fna_file)
 
-
     with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
 
         fh_gff.write("##gff-version  3\n")
@@ -158,13 +163,41 @@ def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, o
 
                 feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
 
-                tag_name = get_Name_tag(feature['attribute'])
+                tag_name = get_tag_value(feature['attribute'], 'Name')
                 fh_gff.write('\t'.join(feature.values())+"\n")
 
-                feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
-                fh_ffn.write(f">{new_id} {tag_name}\n")
-                fh_ffn.write(f"{feature_seq}\n")
+                # feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
+                #                 
+                
 
+                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
+                
+                if feature['strand'] == "+":
+                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                else:
+                    # reverse complement the sequence
+                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
+
+                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+
+
+                # if feature['feature'] == "CDS":
+
+                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
+                    
+                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
+
+
+# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+
+#     protein_fa = pyfastx.Fasta(faa_file)
+#     all_names = [set(protein_fa.keys().filter())]
+
+    
+#     for contig, features in annotation_per_contigs:
+        
+
+#     yield contig, features 
 
 
 def main():
@@ -187,6 +220,9 @@ def main():
 
     fna_file = args.contig_seq
     out_ffn = args.ffn_output
+    out_faa = args.faa_output
+
+    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
@@ -203,13 +239,11 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
-    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn)
-    
-
-
-
+    # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
 
+    logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
+    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    
 
 if __name__ == '__main__':
     main()
\ No newline at end of file
-- 
GitLab


From aef7a100ad95c608c0e20019109b266fa97ac0e3 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:35:49 +0200
Subject: [PATCH 041/194] add faa file filtering from prodigal

---
 bin/merge_annotations.py | 69 +++++++++++++++++++++++++---------------
 1 file changed, 44 insertions(+), 25 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 5434cdb..e6a5c59 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -145,11 +145,13 @@ def get_tag_value(gff_attribute, tag):
             return attr.split('=')[1]
     return ''
 
-def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
+def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, out_ffn, faa_file, out_faa):
     
     contig_fa = pyfastx.Fasta(fna_file)
+    protein_fa = pyfastx.Fasta(faa_file)
 
-    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
+
+    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn, open(out_faa, 'w') as fh_faa:
 
         fh_gff.write("##gff-version  3\n")
         for contig, features in annotations_per_contig:
@@ -161,43 +163,60 @@ def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, o
                 gene_count[feature['feature']] += 1 
                 new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
 
+                start, end = int(feature['start']), int(feature['end'])
+                
+                # write faa
+                if feature['feature'] == "CDS":
+                    gff_id = get_tag_value(feature['attribute'], 'ID')
+
+                    # ID in gff from prodigal is <contig_number>_<cds_number>
+                    # seq name in faa from prodigal is <contig_name>_<cds_number>
+                    cds_number = gff_id.split('_')[-1]
+                    cds_prodigal_id = f"{contig}_{cds_number}"
+                    fh_faa.write(f">{new_id} {start}-{end}\n{protein_fa[cds_prodigal_id]}\n")
+           
+                    
+                # Write gff and ffn 
                 feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
 
                 tag_name = get_tag_value(feature['attribute'], 'Name')
                 fh_gff.write('\t'.join(feature.values())+"\n")
-
-                # feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
-                #                 
-                
-
-                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
                 
                 if feature['strand'] == "+":
-                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                    feature_seq = contig_fa[contig][start-1:end].seq
                 else:
-                    # reverse complement the sequence
-                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
+                    # minus strand: reverse complement the sequence
+                    feature_seq = contig_fa[contig][start-1:end].antisense
 
-                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+                fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
 
-                # if feature['feature'] == "CDS":
-
-                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
-                    
-                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
-
+                
+def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
 
-# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+    protein_fa = pyfastx.Fasta(faa_file)
 
-#     protein_fa = pyfastx.Fasta(faa_file)
-#     all_names = [set(protein_fa.keys().filter())]
+    for contig, features in annotation_per_contigs:
+        
+        for feature in features:
+            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+
+            gff_id = get_tag_value(feature['attribute'], 'ID')
+            # ID in gff from prodigal is <contig_number>_<cds_number>
+            # seq name from prodigal is <contig_name>_<cds_number>
+            cds_number = gff_id.split('_')[-1]
+            cds_prodigal_id = f"{contig}_{cds_number}"
+            print(cds_prodigal_id, new_id)
+            print(protein_fa[cds_prodigal_id])
+            
+
+            
+            
+            input()
 
-    
-#     for contig, features in annotation_per_contigs:
         
 
-#     yield contig, features 
+    yield contig, features 
 
 
 def main():
@@ -242,7 +261,7 @@ def main():
     # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
-    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
     
 
 if __name__ == '__main__':
-- 
GitLab


From e74d1a1f32fa06cf2f977185db8a11fa97961d90 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:37:34 +0200
Subject: [PATCH 042/194] improve presentation string

---
 bin/merge_annotations.py | 41 ++++++++--------------------------------
 1 file changed, 8 insertions(+), 33 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index e6a5c59..91af848 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -3,10 +3,11 @@
 """
 Combine structural annotations made from different gff. 
 
-In case of collapsing annotations RNA annotation are prefered to CDS annotations.
+In case of collapsing annotations, RNA annotation are prefered to CDS annotations.
+Faa file from prodigal is processed to filter out overlapping sequences. 
 
 :Example:
-python template.py -v
+merge_annotations.py -c prodigal.gff -r barrnap.gff -t trnascan_se.gff --contig_seq contigs.fasta --faa_file prodigal.faa
 """
 
 # Metadata
@@ -37,14 +38,17 @@ def parse_arguments():
     parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
 
     parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene sequence', required=True)
+
+    parser.add_argument('--faa_file', help='fasta file of protein sequences generated by prodigal.', required=True)
 
     parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
 
     parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
 
     parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
-    
-    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -191,33 +195,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                 fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
 
-                
-def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
-
-    protein_fa = pyfastx.Fasta(faa_file)
-
-    for contig, features in annotation_per_contigs:
-        
-        for feature in features:
-            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
-
-            gff_id = get_tag_value(feature['attribute'], 'ID')
-            # ID in gff from prodigal is <contig_number>_<cds_number>
-            # seq name from prodigal is <contig_name>_<cds_number>
-            cds_number = gff_id.split('_')[-1]
-            cds_prodigal_id = f"{contig}_{cds_number}"
-            print(cds_prodigal_id, new_id)
-            print(protein_fa[cds_prodigal_id])
-            
-
-            
-            
-            input()
-
-        
-
-    yield contig, features 
-
 
 def main():
 
@@ -258,8 +235,6 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
-
     logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
     writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
     
-- 
GitLab


From daf5224ce69601ed72274df24067ae08b2901c5f Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:40:52 +0200
Subject: [PATCH 043/194] clean script

---
 bin/merge_annotations.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 91af848..ac098de 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -212,13 +212,14 @@ def main():
     rrna_file  = args.rrna
     cds_file = args.cds
 
-    output_gff = args.gff_output
 
     fna_file = args.contig_seq
+    faa_file = args.faa_file
+
+    out_gff = args.gff_output
     out_ffn = args.ffn_output
     out_faa = args.faa_output
 
-    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
@@ -235,8 +236,8 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
-    writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
+    logging.info(f'Writting CDS and RNA annotations to gff file: {out_gff}.')
+    writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
     
 
 if __name__ == '__main__':
-- 
GitLab


From 0bc6ba2eb6e1c3a892e790734e84d9d257cfb361 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:45:55 +0200
Subject: [PATCH 044/194] add faa files into merging process

---
 modules/merge_annotations.nf        | 8 +++++---
 subworkflows/04_structural_annot.nf | 2 +-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
index 4cbbd82..12f37e8 100644
--- a/modules/merge_annotations.nf
+++ b/modules/merge_annotations.nf
@@ -2,14 +2,16 @@ process MERGE_ANNOTATIONS {
   tag "${meta.id}"
 
   input:
-    tuple val(meta), file(assembly_file), file(cds_gff), file(rrna_gff), file(trna_gff)
+    tuple val(meta), file(assembly_file), file(faa_file), file(cds_gff), file(rrna_gff), file(trna_gff)
 
   output:
+    
 
 
   script:
   """
-    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  --contig_seq $assembly_file \
-                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff 
+    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  \
+                         --contig_seq $assembly_file --faa_file $faa_file \
+                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff --faa_output ${meta.sample}.faa 
   """
 }
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index e420d55..7ce7d5e 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -13,7 +13,7 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     TRNASCAN_SE( assembly )
 
 
-    annotations_ch = assembly.join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
+    annotations_ch = assembly.join(PRODIGAL.out.faa).join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
     annotations_ch.view()
 
-- 
GitLab


From c12388a0bcd7b0161b54820f9f36d731c3b829f1 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 17:38:04 +0200
Subject: [PATCH 045/194] Generate report to plot stat in multiqc

---
 bin/merge_annotations.py            | 21 +++++++++++++++++++--
 main.nf                             |  8 ++++----
 modules/merge_annotations.nf        | 10 +++++++---
 subworkflows/04_structural_annot.nf | 11 ++++-------
 4 files changed, 34 insertions(+), 16 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index ac098de..d18ebd0 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -49,6 +49,9 @@ def parse_arguments():
 
     parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
 
+    parser.add_argument('--report_output', help='Prokka report like to be able to show annotations in multiqc.', default="annotation_report.txt")
+
+
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -154,7 +157,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
     contig_fa = pyfastx.Fasta(fna_file)
     protein_fa = pyfastx.Fasta(faa_file)
 
-
     with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn, open(out_faa, 'w') as fh_faa:
 
         fh_gff.write("##gff-version  3\n")
@@ -194,6 +196,16 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
 
                 fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
+    # building prokka like report for multiqc
+    report = {"organism": "NA",
+            "contigs": len(contig_fa),
+            "bases": contig_fa.size }
+    report.update(gene_count)
+
+    return report
+
+
+
 
 
 def main():
@@ -219,6 +231,7 @@ def main():
     out_gff = args.gff_output
     out_ffn = args.ffn_output
     out_faa = args.faa_output
+    out_report = args.report_output
 
 
     logging.info('Parsing rRNA annoations.')
@@ -237,7 +250,11 @@ def main():
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {out_gff}.')
-    writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
+    report = writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
+    
+    with open(out_report, "w") as fl:
+        fl.write(''.join(f"{k}: {v}\n" for k,v in report.items()))
+
     
 
 if __name__ == '__main__':
diff --git a/main.nf b/main.nf
index cde0ad1..5184c2b 100644
--- a/main.nf
+++ b/main.nf
@@ -443,11 +443,11 @@ workflow {
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    // ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    // ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    // ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
+    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
+    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
     // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
-    // ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
     // ch_contigs_and_reads = ch_prokka_fna
     //     .join(ch_reads, remainder: true)
diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
index 12f37e8..c6481f6 100644
--- a/modules/merge_annotations.nf
+++ b/modules/merge_annotations.nf
@@ -1,17 +1,21 @@
 process MERGE_ANNOTATIONS {
+  publishDir "${params.outdir}/04_structural_annot/${meta.id}/", mode: 'copy'
   tag "${meta.id}"
 
   input:
     tuple val(meta), file(assembly_file), file(faa_file), file(cds_gff), file(rrna_gff), file(trna_gff)
 
   output:
-    
-
+    tuple val(meta), file("${meta.id}.gff"), emit: gff
+    tuple val(meta), file("${meta.id}.ffn"), emit: ffn
+    tuple val(meta), file("${meta.id}.faa"), emit: faa
+    path "${meta.id}.txt", emit: report
 
   script:
   """
     merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  \
                          --contig_seq $assembly_file --faa_file $faa_file \
-                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff --faa_output ${meta.sample}.faa 
+                         --ffn_output ${meta.id}.ffn  --gff_output ${meta.id}.gff --faa_output ${meta.id}.faa \
+                         --report_output ${meta.id}.txt
   """
 }
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 7ce7d5e..e315dbd 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -28,14 +28,11 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
                                                                 TRNASCAN_SE.out.v_tRNAscan.first())
 
-    // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
-
   emit:
-    // report = PROKKA.out.report
-    // fna = RENAME_CONTIGS_AND_GENES.out.fna
-    // ffn = RENAME_CONTIGS_AND_GENES.out.ffn
-    // gff = RENAME_CONTIGS_AND_GENES.out.gff
-    // faa = RENAME_CONTIGS_AND_GENES.out.faa 
+    report = MERGE_ANNOTATIONS.out.report
+    ffn = MERGE_ANNOTATIONS.out.ffn
+    gff = MERGE_ANNOTATIONS.out.gff
+    faa = MERGE_ANNOTATIONS.out.faa
     // prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From 6cbc7a4284c229b322eea10f461fc80bbf09886d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 18:00:14 +0200
Subject: [PATCH 046/194] update multiqc config with new structural annotation
 method

---
 assets/hifi_multiqc_config.yaml | 92 +++++++++++++++++++++++++++++++++
 assets/multiqc_config.yaml      |  7 ++-
 2 files changed, 98 insertions(+), 1 deletion(-)
 create mode 100644 assets/hifi_multiqc_config.yaml

diff --git a/assets/hifi_multiqc_config.yaml b/assets/hifi_multiqc_config.yaml
new file mode 100644
index 0000000..c90beaa
--- /dev/null
+++ b/assets/hifi_multiqc_config.yaml
@@ -0,0 +1,92 @@
+report_comment: >
+    This report has been generated by the <a href="https://forgemia.inra.fr/genotoul-bioinfo/metagwgs" target="_blank">genotoul-bioinfo/metagwgs</a>
+    analysis pipeline. For information about how to interpret these results, please see the
+    <a href="https://forgemia.inra.fr/genotoul-bioinfo/metagwgs" target="_blank">documentation</a>.
+
+extra_fn_clean_trim:
+  - "hifi_"
+  - 'reads_'
+  - '.count_reads_on_contigs'
+  - '_scaffolds'
+  - '.txt'
+  - '.contigs'
+  - '.sort'
+  - "cleaned_"
+  - "raw_"
+  - '_kept_contigs'
+  - '.no_filter'
+  - '_kaiju_MEM_verbose'
+
+extra_fn_clean_exts:
+  - "_select_contigs_cpm"
+  - '.host_filter'
+
+module_order:
+    - fastqc:
+        name: 'FastQC (raw)'
+        path_filters_exclude:
+            - '*cleaned_*.zip'
+    - samtools:
+        name : 'Reads before host reads filter'
+        info: 'This section reports of the reads alignement against host genome.'
+        path_filters:
+            - '*.no_filter.flagstat'
+    - samtools:
+        name : 'Reads after host reads filter'
+        info: 'This section reports of the cleaned reads alignement against host genome.'
+        path_filters:
+            - '*.host_filter.flagstat'
+    - fastqc:
+        name: 'FastQC (cleaned)'
+        info: 'This section of the report shows FastQC after removing reads mapping the host genome.'
+        path_filters:
+            - '*cleaned_*.zip'
+    - kaiju
+    - quast:
+        name: 'Quast primary assembly'
+        info: 'This section of the report shows quast results after assembly.'
+        path_filters:
+            - '*quast_primary/*/report.tsv'
+    - quast:
+        name: 'Quast filtered assembly'
+        info: 'This section of the report shows quast results after assembly filtering.'
+        path_filters:
+            - '*quast_filtered/*/report.tsv'
+    - prokka:
+        name: 'Structural annotation'
+        info: 'This section of the report shows structural annotations results. CDS are predicted using Prodigal, rRNA using Barrnap and tRNA using tRNAscan-se.'
+    - featureCounts
+    - custom_content:
+        name: 'Binning results'
+        info: 'This section of the report shows quast results after binning the contigs into species genomes'
+        path_filters:
+            - '*mqc.tsv'
+
+report_section_order:
+  stats_table:
+    order: -1000
+  bins_quality:
+    order: -1010
+  bins_quality_count:
+    order: -1020
+  bins_quality_size:
+    order: -1030
+  binning_heatmap:
+    order: -1040
+  software_versions:
+    order: -1050
+    
+prokka_fn_snames: True
+prokka_table: True
+
+featurecounts:
+  fn: '*.summary'
+  shared: true
+
+table_columns_visible:
+  FastQC (raw):
+        percent_duplicates: False
+        percent_gc: False
+  Structural annotation:
+        organism: False
+
diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml
index fc5eb8e..06e9cdd 100644
--- a/assets/multiqc_config.yaml
+++ b/assets/multiqc_config.yaml
@@ -69,11 +69,14 @@ module_order:
         path_filters:
             - './final_assembly_flagstat/*'
     - prokka:
+        name: 'Structural annotation'
+        info: 'This section of the report shows structural annotations results. CDS are predicted using Prodigal, rRNA using Barrnap and tRNA using tRNAscan-se.'
         path_filters:
         - './prokka_report/*'
     - featureCounts:
         path_filters:
         - './featureCounts_report/*'
+            - '*.count_reads_on_contigs.flagstat'
     - custom_content:
         name: 'Binning results'
         info: 'This section of the report shows quast results after binning the contigs into species genomes'
@@ -106,11 +109,12 @@ featurecounts:
   fn: '*.summary'
   shared: true
 
+
 table_columns_visible:
   FastQC (raw):
         percent_duplicates: False
         percent_gc: False
-  prokka:
+  Structural annotation:
         organism: False
   Reads alignment on unfiltered assembly:
         mapped_passed_pct: True
@@ -141,3 +145,4 @@ table_columns_visible:
 #   - hide
 # show_hide_patterns:
 #   -  ["_R1", "_R2"]
+
-- 
GitLab


From 7728b4ab4cfd7b992aaa0246dcd71e7a9aea486d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:16:21 +0200
Subject: [PATCH 047/194] rm prokka process and script

---
 bin/Rename_contigs_and_genes.py | 166 --------------------------------
 modules/prokka.nf               |  48 ---------
 2 files changed, 214 deletions(-)
 delete mode 100755 bin/Rename_contigs_and_genes.py
 delete mode 100644 modules/prokka.nf

diff --git a/bin/Rename_contigs_and_genes.py b/bin/Rename_contigs_and_genes.py
deleted file mode 100755
index 7d0e94d..0000000
--- a/bin/Rename_contigs_and_genes.py
+++ /dev/null
@@ -1,166 +0,0 @@
-#!/usr/bin/env python
-
-"""----------------------------------------------------------------------------------------------------------------------------------------------------------
-  Script Name: Rename_contigs_and_genes.py
-  Description: Rename contigs and genes in GFF, FAA and FFN
-               files generated by PROKKA.
-  Input files:
-               GFF, FAA and FFN files produced by PROKKA.
-  Created By:  Celine Noirot and Joanna Fourquet
-  Date:        2019-06-12
-----------------------------------------------------------------------------------------------------------------------------------------------------------
-"""
-
-# Metadata
-__author__ = 'Celine Noirot and Joanna Fourquet \
-- Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2019 INRA'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-# Status: dev
-
-# Modules importation
-try:
-    import argparse
-    from BCBio import GFF
-    from Bio.Seq import Seq
-    from Bio.SeqRecord import SeqRecord
-    from Bio.SeqFeature import SeqFeature, FeatureLocation
-    import pprint
-    from BCBio.GFF import GFFExaminer
-    from Bio import SeqIO
-except ImportError as error:
-    print(error)
-    exit(1)
-
-# Manage parameters
-parser = argparse.ArgumentParser(description = \
-'Script which rename contigs and genes in GFF, FAA and FFN files generated by PROKKA.')
-parser.add_argument('-f', '--file', required = True, help = \
-'GFF file generated by PROKKA.')
-parser.add_argument('-faa', '--fastaFile', required = True, \
-help = 'Fasta of predicted sequence (aa) generated by PROKKA (FAA).')
-parser.add_argument('-ffn', '--ffnFile', required = True, \
-help = 'Fasta of predicted sequence (nuc) generated by PROKKA (FFN).')
-parser.add_argument('-fna', '--fnaFile', required = True, \
-help = 'Fasta of contigs generated by PROKKA.')
-parser.add_argument('-p', '--prefix', required = True, \
-help = 'Contig name prefix.')
-parser.add_argument('-oGFF', '--outGFFFile', required = True, \
-help = 'Name of output GFF file.')
-parser.add_argument('-oFAA', '--outFAAFile', required = True, \
-help = 'Filename of renamed predicted fasta sequences (aa).')
-parser.add_argument('-oFFN', '--outFFNFile', required = True, \
-help = 'Filename of renamed predicted fasta sequences (nuc).')
-parser.add_argument('-oFNA', '--outFNAFile', required = True, \
-help = 'Filename of renamed contig sequences (nuc).')
-parser.add_argument('-oprottable', '--outProtein', default = "protein_table.csv", \
-help = 'Filename for protein names correspondance table.')
-parser.add_argument('-oconttable', '--outContig', default = "contig_table.csv", \
-help = 'Filename for contig names correspondance table.')
-args = parser.parse_args()
-
-
-# Variable names informations:
-# prot: corresponds to proteins
-# ctg: corresponds to contigs
-
-# Variables initialization.
-prot_names = {}
-contig_renames = {}
-ctg_prefix = args.prefix
-prot_prefix = "Prot_"
-to_write = []
-# lecture fna
-#remplissage 
-#contig_renames [ald_name]=newname
-#reecriture du fasta
-
-with open(args.fnaFile, "r") as fnaFile,\
-    open(args.outFNAFile, "w") as outFNA_handle:
-    for record in SeqIO.parse(fnaFile, "fasta"):
-        try :
-            old_ctg_name = record.id
-            new_ctg_name = ctg_prefix + "_c" + old_ctg_name.split("_")[-1]
-            contig_renames[old_ctg_name] = new_ctg_name
-            record.id = contig_renames[old_ctg_name]
-            record.description = record.description.replace(old_ctg_name,"")
-            SeqIO.write(record, outFNA_handle, "fasta")
-        except :
-            print ("Warning FNA file : contig " + record.id + " discarded, no new name defined")
-            pass
-    
-with open(args.file) as gffFile,\
-    open(args.outGFFFile, "w") as out_handle,\
-    open(args.outProtein, "w") as fh_prot_table,\
-    open(args.outContig, "w") as fh_cont_table,\
-    open(args.outContig + ".sed", "w") as fh_cont_sed:
-    for rec in GFF.parse(gffFile):
-        # Access to contig id
-        old_ctg_name = rec.id
-        new_ctg_name = contig_renames[old_ctg_name]
-        rec.id = new_ctg_name
-
-        fh_cont_table.write(old_ctg_name + "\t" + new_ctg_name + "\n")
-        fh_cont_sed.write("s/" + old_ctg_name + "/" + new_ctg_name + "/\n")
-        # Access to features
-        for f_index,feature in enumerate(rec.features):
-            if(not(feature.qualifiers['source'][0].startswith("minced"))):
-                #Generate correspondance
-                old_prot_name = feature.qualifiers['ID'][0].replace("_gene","")
-                prot_number =  old_prot_name.split("_")[-1]
-                
-                subfeat_types = {subfeat.type for subfeat in feature.sub_features}
-                assert len(subfeat_types) == 1, f'Subfeature have different types {subfeat_types}' 
-                subfeat_type = subfeat_types.pop()
-
-
-                new_prot_name = f"{new_ctg_name}.{subfeat_type}_{prot_number}"
-                prot_names[old_prot_name] = new_prot_name
-                fh_prot_table.write(old_prot_name + "\t" + new_prot_name + "\n")
-
-                #Initialize field of "gene" feature (the parent)
-                rec.features[f_index].qualifiers["ID"] = new_prot_name + "_gene"
-                rec.features[f_index].qualifiers["locus_tag"] = [new_prot_name]
-
-                #Annotations (not prokka lines) are in sub_features
-                for fsub_index,sub_feature in enumerate(feature.sub_features):
-                    # Update ID
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["ID"] = new_prot_name
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["Parent"] = []
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["locus_tag"] = [new_prot_name]
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["protein_id"] = [new_prot_name]
-        to_write.append(rec)
-
-    #Write only one time
-    #print (to_write)
-    GFF.write(to_write, out_handle)
-
-
-with open(args.fastaFile, "r") as handle,\
-    open(args.outFAAFile, "w") as outFasta_handle:
-    for record in SeqIO.parse(handle, "fasta"):
-        try :
-            old = record.id
-            record.id = prot_names[record.id]
-            record.description = record.description.replace(old + " ","")
-            SeqIO.write(record, outFasta_handle, "fasta")
-        except :
-            print ("Warning FAA file : protein " + record.id + " discarded, no new name defined")
-            pass
-
-
-with open(args.ffnFile, "r") as handle,\
-    open(args.outFFNFile, "w") as outFFN_handle:
-    for record in SeqIO.parse(handle, "fasta"):
-        try :
-            old = record.id
-            record.id = prot_names[record.id]
-            record.description = record.description.replace(old + " ","")
-            SeqIO.write(record, outFFN_handle, "fasta")
-        except :
-            print ("Warning FFN file : protein " + record.id + " discarded, no new name defined")
-            pass
diff --git a/modules/prokka.nf b/modules/prokka.nf
deleted file mode 100644
index 6fbd538..0000000
--- a/modules/prokka.nf
+++ /dev/null
@@ -1,48 +0,0 @@
-process PROKKA {
-  tag "${meta.id}"
-
-  input:
-  tuple val(meta), file(assembly_file)
-
-   output:
-   tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
-   path "PROKKA_${meta.id}/${meta.id}.txt", emit: report
-   path "v_prokka.txt", emit: v_prokka
-
-  script:
-  """
-  prokka --metagenome --noanno --rawproduct --outdir PROKKA_${meta.id} --prefix ${meta.id} ${assembly_file} --centre X --compliant --cpus ${task.cpus}
-  rm PROKKA_${meta.id}/*.gbk
-  gt gff3validator PROKKA_${meta.id}/${meta.id}.gff 
-
-  prokka -v &> v_prokka.txt
-  """
-}
-
-process RENAME_CONTIGS_AND_GENES {
-  tag "${meta.id}"
-  publishDir "${params.outdir}/04_structural_annot", mode: 'copy'
-  label 'PYTHON'
-
-  input:
-    tuple val(meta), path(prokka_results)
-
-  output:
-    tuple val(meta), path("${meta.id}.annotated.fna"), emit: fna
-    tuple val(meta), path("${meta.id}.annotated.ffn"), emit: ffn
-    tuple val(meta), path("${meta.id}.annotated.faa"), emit: faa
-    tuple val(meta), path("${meta.id}.annotated.gff"), emit: gff
-    tuple val(meta), path("${meta.id}_prot.len"), emit: prot_length
-  
-  script:
-  """
-  grep "^gnl" ${prokka_results}/${meta.id}.gff > ${meta.id}_only_gnl.gff
-  
-  Rename_contigs_and_genes.py -f ${meta.id}_only_gnl.gff -faa ${prokka_results}/${meta.id}.faa \
-                              -ffn ${prokka_results}/${meta.id}.ffn -fna ${prokka_results}/${meta.id}.fna \
-                              -p ${meta.id} -oGFF ${meta.id}.annotated.gff -oFAA ${meta.id}.annotated.faa \
-                              -oFFN ${meta.id}.annotated.ffn -oFNA ${meta.id}.annotated.fna
-                              
-  samtools faidx ${meta.id}.annotated.faa; cut -f 1,2 ${meta.id}.annotated.faa.fai > ${meta.id}_prot.len
-  """
-}
-- 
GitLab


From d909c03aca2f80309e01de4f38626369549ec413 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:18:32 +0200
Subject: [PATCH 048/194] rm conf of removed process

---
 conf/base.config | 7 -------
 conf/test.config | 7 -------
 2 files changed, 14 deletions(-)

diff --git a/conf/base.config b/conf/base.config
index fd060b8..a94490b 100644
--- a/conf/base.config
+++ b/conf/base.config
@@ -58,13 +58,6 @@ process {
         memory = { 8.GB * task.attempt }
         cpus = 4
     }
-    withName: PROKKA {
-        memory = { 45.GB * task.attempt }
-        cpus = 8
-    }
-    withName: RENAME_CONTIGS_AND_GENES {
-        memory = { 20.GB * task.attempt }
-    }
     withLabel: CD_HIT {
         memory = { 50.GB * task.attempt }
         cpus = 16
diff --git a/conf/test.config b/conf/test.config
index 710b959..ae50b57 100644
--- a/conf/test.config
+++ b/conf/test.config
@@ -49,13 +49,6 @@ process {
         memory = { 1.GB * task.attempt }
         cpus = 2
     }
-    withName: PROKKA {
-        memory = { 1.GB * task.attempt }
-        cpus = 1
-    }
-    withName: RENAME_CONTIGS_AND_GENES {
-        memory = { 1.GB * task.attempt }
-    }
     withLabel: CD_HIT {
         memory = { 16.GB * task.attempt }
         cpus = 2
-- 
GitLab


From a69c4faa43beac99047003b139241f027b6177a8 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:38:45 +0200
Subject: [PATCH 049/194] simple script to rename contigs with sample and
 contig number

---
 modules/rename_contigs.nf | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
new file mode 100644
index 0000000..e69de29
-- 
GitLab


From fd434081e439fea80cdd12f1f772c40fd8373181 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:39:13 +0200
Subject: [PATCH 050/194] make script exec

---
 bin/rename_contigs.py | 71 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)
 create mode 100755 bin/rename_contigs.py

diff --git a/bin/rename_contigs.py b/bin/rename_contigs.py
new file mode 100755
index 0000000..0734c9c
--- /dev/null
+++ b/bin/rename_contigs.py
@@ -0,0 +1,71 @@
+#!/usr/bin/env python3
+
+"""
+Rename assembly contigs.
+
+Rename contig as <sample_name>_c<contig_number>
+
+:Example:
+rename_contigs.py -h
+"""
+
+# Metadata
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2020 INRAE'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, FileType
+import logging
+import gzip
+import csv
+from collections import defaultdict
+import pyfastx
+from Bio.Seq import Seq
+
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-s', '--sample', help='Sample name used to rename contigs.', required=True)
+    
+    parser.add_argument('-i', '--fna_file', help='Original fasta file of contigs.', required=True)
+
+    parser.add_argument('-o', '--out_fna', help='Output fasta file with renamed contigs.', required=True)
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+
+
+def main():
+
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+    sample = args.sample    
+    fna_file = args.fna_file
+    out_fna = args.out_fna
+
+
+    logging.info(f'Writting renamed fasta file in {out_fna}')
+    with open(out_fna, "w") as fh_fna:
+        for i, (_, seq) in enumerate(pyfastx.Fasta(fna_file, build_index=False)):
+            fh_fna.write(f'>{sample}_c{i+1}\n{seq}\n')
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
-- 
GitLab


From c1f8af42c1d9436d115dc3af56850996dfb6dc59 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:42:47 +0200
Subject: [PATCH 051/194] call RENAME_CONTIGS process

---
 modules/assembly.nf | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/modules/assembly.nf b/modules/assembly.nf
index b8f9d35..41db2c5 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -107,3 +107,20 @@ process METAFLYE {
   """
 }
 
+process RENAME_CONTIGS {
+  tag "${meta.id}"
+  publishDir "${params.outdir}/02_assembly/", mode: 'copy'
+  label 'PYTHON'
+
+  input:
+    tuple val(meta), path(assembly)
+
+  output:
+    tuple val(meta), path("${meta.id}.fna"), emit: fna
+
+  script:
+  """
+    rename_contigs.py --sample ${meta.id}  --fna_file $assembly --out_fna ${meta.id}.fna -v
+
+  """
+}
\ No newline at end of file
-- 
GitLab


From f8f655cfb5071d8800aa1c9c25b350bc60544854 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:50:28 +0200
Subject: [PATCH 052/194] call RENAME_CONTIGS in 02_assembly

---
 modules/rename_contigs.nf   | 0
 subworkflows/02_assembly.nf | 9 +++++----
 2 files changed, 5 insertions(+), 4 deletions(-)
 delete mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
deleted file mode 100644
index e69de29..0000000
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 8411728..0101234 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -1,4 +1,4 @@
-include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE } from '../modules/assembly'
+include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; RENAME_CONTIGS } from '../modules/assembly'
 include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
@@ -47,7 +47,8 @@ workflow STEP_02_ASSEMBLY {
         }
     }
     
-    ASSEMBLY_QUAST( ch_assembly,"02_assembly/quast_primary")
+    ch_assembly_renamed = RENAME_CONTIGS(ch_assembly)
+    ASSEMBLY_QUAST( ch_assembly_renamed,"02_assembly/quast_primary")
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
 
@@ -57,7 +58,7 @@ workflow STEP_02_ASSEMBLY {
     ch_flagstat = Channel.empty()
     ch_reads = reads
 
-    ch_contigs_and_reads = ch_assembly.join(ch_reads, remainder: true)
+    ch_contigs_and_reads = ch_assembly_renamed.join(ch_reads, remainder: true)
     if ( params.type.toUpperCase() == "SR" ) {
       READS_DEDUPLICATION ( ch_contigs_and_reads )
       ch_dedup = READS_DEDUPLICATION.out.dedup
@@ -88,7 +89,7 @@ workflow STEP_02_ASSEMBLY {
 
 
   emit:
-    assembly = ch_assembly
+    assembly = ch_assembly_renamed
     dedup = ch_dedup
     idxstats = ch_idxstats
     flagstat = ch_flagstat
-- 
GitLab


From db915f01142e804b74e1d180ac0bd99adda55c87 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 12:21:20 +0200
Subject: [PATCH 053/194] simplify quast report channel

---
 main.nf              | 13 ++++++++-----
 modules/metaquast.nf |  2 +-
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/main.nf b/main.nf
index 5184c2b..fd9fffe 100644
--- a/main.nf
+++ b/main.nf
@@ -404,12 +404,16 @@ workflow {
       /////////////////////
 
     S02_ASSEMBLY ( ch_preprocessed_reads, ch_assembly, has_assembly, assembly_tool )
+
     ch_assembly = S02_ASSEMBLY.out.assembly
-    ch_reads = S02_ASSEMBLY.out.dedup
+    ch_reads = S02_ASSEMBLY.out.reads
+
+
     ch_idxstats = S02_ASSEMBLY.out.idxstats
+    
     ch_unfilter_assembly_flagstat_report = S02_ASSEMBLY.out.flagstat
-    ch_quast = S02_ASSEMBLY.out.assembly_report
-    ch_quast_before_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+
+    ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
     ch_software_versions_S02 = S02_ASSEMBLY.out.software_versions
   }
 
@@ -429,8 +433,7 @@ workflow {
         ch_min_contigs_cpm
     )
     ch_assembly = S03_FILTERING.out.selected
-    ch_quast = S03_FILTERING.out.report
-    ch_quast_after_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+    ch_quast_after_filter_report = S03_FILTERING.out.report
     
   }
 
diff --git a/modules/metaquast.nf b/modules/metaquast.nf
index dbaa508..dee90d5 100644
--- a/modules/metaquast.nf
+++ b/modules/metaquast.nf
@@ -9,7 +9,7 @@ process QUAST {
 
     output:
         path "${outdir}/${meta.id}/*", emit: all
-        tuple val(meta), path ("${outdir}/${meta.id}/report.tsv"), emit: report
+        path "${outdir}/${meta.id}/report.tsv", emit: report
         path "v_quast.txt", emit: v_quast
 
     script:
-- 
GitLab


From 28d76a50f041a072f154a5db0443fb2bf6591d35 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:30:19 +0200
Subject: [PATCH 054/194] clean subworkflow STEP_04_STRUCTURAL_ANNOT

---
 subworkflows/04_structural_annot.nf | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index e315dbd..edac18e 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -12,19 +12,13 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     BARRNAP( assembly )
     TRNASCAN_SE( assembly )
 
-
     annotations_ch = assembly.join(PRODIGAL.out.faa).join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
-    annotations_ch.view()
-
-
 
     MERGE_ANNOTATIONS(annotations_ch)
 
-
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
-
     ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
                                                                 TRNASCAN_SE.out.v_tRNAscan.first())
 
-- 
GitLab


From 898e8539889162c956047da79d13030824e74e0b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:34:12 +0200
Subject: [PATCH 055/194] reorganise deduplication process

---
 main.nf                        |  2 +-
 modules/reads_deduplication.nf | 43 ++++++++++++++++++++--------------
 subworkflows/02_assembly.nf    | 20 ++++++++++------
 3 files changed, 39 insertions(+), 26 deletions(-)

diff --git a/main.nf b/main.nf
index fd9fffe..bba6ea7 100644
--- a/main.nf
+++ b/main.nf
@@ -407,7 +407,7 @@ workflow {
 
     ch_assembly = S02_ASSEMBLY.out.assembly
     ch_reads = S02_ASSEMBLY.out.reads
-
+    ch_bam = S02_ASSEMBLY.out.bam
 
     ch_idxstats = S02_ASSEMBLY.out.idxstats
     
diff --git a/modules/reads_deduplication.nf b/modules/reads_deduplication.nf
index b64df7c..4731f9b 100644
--- a/modules/reads_deduplication.nf
+++ b/modules/reads_deduplication.nf
@@ -1,38 +1,45 @@
 process READS_DEDUPLICATION {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly", mode: 'copy', pattern: '*.fastq.gz'
-  publishDir "${params.outdir}/02_assembly/logs", mode: 'copy', pattern: '*.idxstats'
-  publishDir "${params.outdir}/02_assembly/logs", mode: 'copy', pattern: '*.flagstat'
+  publishDir "${params.outdir}/02_assembly/deduplicated_reads/", mode: 'copy', pattern: '*.fastq.gz'
+  publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.fastq.gz'
   
   input:
   tuple val(meta), path(assembly), path(reads)
 
   output:
-  tuple val(meta), path("${meta.id}*_dedup.fastq.gz"), emit: dedup
-  tuple val(meta), path("${meta.id}.count_reads_on_contigs.idxstats"), emit: idxstats
+  tuple val(meta), path("${meta.id}*_dedup.fastq.gz"), emit: dedup_reads
+  tuple val(meta), path("${meta.id}.bam"), path("${meta.id}.bam.bai"), emit: bam
+  
   path "${meta.id}_singletons.fastq.gz", emit: singletons
-  path "${meta.id}.count_reads_on_contigs.flagstat", emit: flagstat
+
   path "v_bwa.txt", emit: v_bwa_mem2
   path "v_samtools.txt", emit: v_samtools
 
   script:
   """
-  mkdir logs
+  # Align reads against assembly
   bwa-mem2 index ${assembly} -p ${assembly}
-  bwa-mem2 mem ${assembly} ${reads[0]} ${reads[1]} | samtools view -bS - | samtools sort -n -o ${meta.id}.sort.bam -
-  samtools fixmate -m ${meta.id}.sort.bam ${meta.id}.fixmate.bam
-  samtools sort -o ${meta.id}.fixmate.positionsort.bam ${meta.id}.fixmate.bam
-  samtools markdup -r -S -s -f ${meta.id}.stats ${meta.id}.fixmate.positionsort.bam ${meta.id}.filtered.bam
-  samtools index ${meta.id}.filtered.bam 
-  samtools idxstats ${meta.id}.filtered.bam  > ${meta.id}.count_reads_on_contigs.idxstats
-  samtools flagstat ${meta.id}.filtered.bam  > ${meta.id}.count_reads_on_contigs.flagstat
-  samtools sort -n -o ${meta.id}.filtered.sort.bam ${meta.id}.filtered.bam 
-  samtools fastq -N -s ${meta.id}_singletons.fastq.gz -1 ${meta.id}_R1_dedup.fastq.gz -2 ${meta.id}_R2_dedup.fastq.gz ${meta.id}.filtered.sort.bam 
+  bwa-mem2 mem -t ${task.cpus}  ${assembly} ${reads[0]} ${reads[1]} | samtools view -@ ${task.cpus} -bS - | samtools sort -@ ${task.cpus} -n -o ${meta.id}.sort.bam -
+  
+  # Identify and removed duplicated reads from the bam file
+  samtools fixmate -@ ${task.cpus} -m ${meta.id}.sort.bam ${meta.id}.fixmate.bam
+  samtools sort -@ ${task.cpus} -o ${meta.id}.fixmate.positionsort.bam ${meta.id}.fixmate.bam
+  samtools markdup -@ ${task.cpus}  -r -S -s -f ${meta.id}.stats ${meta.id}.fixmate.positionsort.bam ${meta.id}.filtered.bam
+  
+  # final bam file without duplicated reads
+  samtools sort -@ ${task.cpus} -o ${meta.id}.bam ${meta.id}.filtered.bam
+  samtools index -@ ${task.cpus}  ${meta.id}.bam 
+
+  # Get deduplicated reads
+  samtools sort -@ ${task.cpus}  -n -o ${meta.id}.filtered.n_sorted.bam ${meta.id}.bam  
+  samtools fastq -@ ${task.cpus}  -N -s ${meta.id}_singletons.fastq.gz -1 ${meta.id}_R1_dedup.fastq.gz -2 ${meta.id}_R2_dedup.fastq.gz ${meta.id}.filtered.n_sorted.bam 
+  
+  # clean directory
   rm ${meta.id}.sort.bam
   rm ${meta.id}.fixmate.bam
   rm ${meta.id}.fixmate.positionsort.bam
-  rm ${meta.id}.filtered.bam 
-  rm ${meta.id}.filtered.sort.bam
+  rm ${meta.id}.filtered.n_sorted.bam
+  rm ${meta.id}.filtered.bam
 
 
   bwa-mem2 version > v_bwa.txt
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 0101234..6f6141e 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -52,26 +52,31 @@ workflow STEP_02_ASSEMBLY {
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
 
-    ch_dedup = Channel.empty() 
     ch_idxstats = Channel.empty()
-    ch_dedup_report = Channel.empty()
     ch_flagstat = Channel.empty()
     ch_reads = reads
 
     ch_contigs_and_reads = ch_assembly_renamed.join(ch_reads, remainder: true)
     if ( params.type.toUpperCase() == "SR" ) {
+
       READS_DEDUPLICATION ( ch_contigs_and_reads )
-      ch_dedup = READS_DEDUPLICATION.out.dedup
-      ch_idxstats = READS_DEDUPLICATION.out.idxstats
-      ch_flagstat = READS_DEDUPLICATION.out.flagstat
+      
+      ch_reads = READS_DEDUPLICATION.out.dedup_reads
+      ch_bam = READS_DEDUPLICATION.out.bam
+
+      SAMTOOLS(ch_bam, "02_assembly")
+      ch_idxstats = SAMTOOLS.out.sam_idxstat
+      ch_flagstat = SAMTOOLS.out.sam_flagstat
 
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
       ch_samtools_v = READS_DEDUPLICATION.out.v_samtools
+      
     } else {
-      ch_dedup = ch_reads
+
       if (!params.skip_filtering) { 
         MINIMAP2(ch_contigs_and_reads,"02_assembly")
         ch_bam = MINIMAP2.out.bam
+
         SAMTOOLS(ch_bam, "02_assembly")
         ch_idxstats  = SAMTOOLS.out.sam_idxstat
         ch_flagstat =  SAMTOOLS.out.sam_flagstat
@@ -90,7 +95,8 @@ workflow STEP_02_ASSEMBLY {
 
   emit:
     assembly = ch_assembly_renamed
-    dedup = ch_dedup
+    reads = ch_reads
+    bam = ch_bam
     idxstats = ch_idxstats
     flagstat = ch_flagstat
     assembly_report = ch_assembly_report
-- 
GitLab


From 4cce1264fb5552836f88705efe36c2e1176a4745 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:35:00 +0200
Subject: [PATCH 056/194] correct typo in multiqc_config

---
 assets/multiqc_config.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml
index 06e9cdd..c24c305 100644
--- a/assets/multiqc_config.yaml
+++ b/assets/multiqc_config.yaml
@@ -75,7 +75,7 @@ module_order:
         - './prokka_report/*'
     - featureCounts:
         path_filters:
-        - './featureCounts_report/*'
+            - './featureCounts_report/*'
             - '*.count_reads_on_contigs.flagstat'
     - custom_content:
         name: 'Binning results'
-- 
GitLab


From 9f2d9a5c97089ecd15fdbf7bcc2becf56180fad9 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:37:21 +0200
Subject: [PATCH 057/194] rm tax plot made from prot length

---
 bin/aln2taxaffi.py                | 15 ++++++++-------
 main.nf                           |  4 +---
 subworkflows/07_taxonomic_affi.nf |  2 --
 3 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/bin/aln2taxaffi.py b/bin/aln2taxaffi.py
index 5c85116..241d836 100755
--- a/bin/aln2taxaffi.py
+++ b/bin/aln2taxaffi.py
@@ -597,13 +597,14 @@ def main():
             logging.debug(contig_affi_line)
 
 
-
-    with open(query_length_file) as fl:
-        nb_total_prot = len([line for line in fl])
-
-    nb_prot_annotated = len(matches)
-    plot_taxonomic_assignment(
-          output_name, count_rank_affiliation_protein,  count_rank_affiliation_contig, nb_total_prot, nb_prot_annotated, nb_prot_assigned)
+    if query_length_file:
+        logging.debug("Plot taxonomic affiliation using protein lengths.")
+        with open(query_length_file) as fl:
+            nb_total_prot = len([line for line in fl])
+
+        nb_prot_annotated = len(matches)
+        plot_taxonomic_assignment(
+            output_name, count_rank_affiliation_protein,  count_rank_affiliation_contig, nb_total_prot, nb_prot_annotated, nb_prot_assigned)
 
     if args.write_top_taxons:
         top_taxon_columns = ['contig', ] + main_ranks
diff --git a/main.nf b/main.nf
index bba6ea7..75c9f7b 100644
--- a/main.nf
+++ b/main.nf
@@ -442,7 +442,6 @@ workflow {
   ch_prokka_faa = Channel.empty()
   ch_prokka_gff = Channel.empty()
   ch_prokka_fna = Channel.empty()
-  ch_prot_length = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
@@ -454,7 +453,6 @@ workflow {
 
     // ch_contigs_and_reads = ch_prokka_fna
     //     .join(ch_reads, remainder: true)
-    // ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
 
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
     // exit 0, 'Exit now... S04_STRUCTURAL_ANNOT being constructed ' 
@@ -487,7 +485,7 @@ workflow {
   }
 
 	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi ) {
-		S07_TAXO_AFFI ( ch_taxonomy, ch_m8, ch_sam_coverage, ch_prot_length)
+		S07_TAXO_AFFI ( ch_taxonomy, ch_m8, ch_sam_coverage)
 
     ch_software_versions_S07 = S07_TAXO_AFFI.out.software_versions
 	}
diff --git a/subworkflows/07_taxonomic_affi.nf b/subworkflows/07_taxonomic_affi.nf
index d1042c0..8eb2640 100644
--- a/subworkflows/07_taxonomic_affi.nf
+++ b/subworkflows/07_taxonomic_affi.nf
@@ -7,10 +7,8 @@ workflow STEP_07_TAXO_AFFI {
         taxonomy
         diamond_result // channel: [ val(meta), path(diamond_file) ]
         sam_coverage // channel: [ val(meta), path(samtools coverage) ]
-        prot_length  // channel: [ val(meta), path(prot_length) ]
     main:
         ch_assign_taxo_input = diamond_result.join(sam_coverage, remainder: true)
-                                             .join(prot_length, remainder: true)
 
         ASSIGN_TAXONOMY ( taxonomy, ch_assign_taxo_input )
 
-- 
GitLab


From 041d3bb828f4898f904d9b768c0948f6a12fb700 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:57:00 +0200
Subject: [PATCH 058/194] add new tools in scrape_software_versions used
 instead of prokka

---
 bin/scrape_software_versions.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/bin/scrape_software_versions.py b/bin/scrape_software_versions.py
index e04c4d3..4279474 100755
--- a/bin/scrape_software_versions.py
+++ b/bin/scrape_software_versions.py
@@ -23,7 +23,6 @@ regexes = {
     'Hifiasm': ['v_hifiasm_meta.txt', r"ha base version: (\S+)"],
     'MetaFlye': ['v_metaflye.txt', r"v(\S+)"],
     'Quast': ['v_quast.txt', r"QUAST v(\S+)"],
-    'Prokka': ['v_prokka.txt', r"prokka (\S+)"],
     'Kaiju': ['v_kaiju.txt', r"Kaiju (\S+)"],
     'Samtools': ['v_samtools.txt', r"samtools (\S+)"],
     'Eggnog-Mapper': ['v_eggnogmapper.txt', r"emapper-(\S+)"],
@@ -33,7 +32,10 @@ regexes = {
     'CheckM2': ['v_checkm2.txt', r"(\S+)"],
     'Metawrap': ['v_metawrap.txt', r"metawrap (\S+)"],
     'GTDBTK': ['v_gtdbtk.txt', r"...::: GTDB-Tk v(\S+)"],
-    'dRep': ['v_dRep.txt', r"version (\S+)"]
+    'dRep': ['v_dRep.txt', r"version (\S+)"],
+    'tRNAscan-SE': ['v_tRNAscan.txt', r"tRNAscan-SE (\S+)"],
+    'Barrnap': ['v_barrnap.txt', r"barrnap (\S+)"],
+    'Prodigal': ['v_prodigal.txt', r"Prodigal (\S+):"],
 }
 results = OrderedDict()
 results['metagWGS'] = '<span style="color:#999999;\">N/A</span>'
@@ -65,6 +67,9 @@ results['Metawrap'] = '<span style="color:#999999;\">N/A</span>'
 results['dRep'] = '<span style="color:#999999;\">N/A</span>'
 results['GTDBTK'] = '<span style="color:#999999;\">N/A</span>'
 results['MultiQC'] = '<span style="color:#999999;\">N/A</span>'
+results['tRNAscan-SE'] = '<span style="color:#999999;\">N/A</span>'
+results['Barrnap'] = '<span style="color:#999999;\">N/A</span>'
+results['Prodigal'] = '<span style="color:#999999;\">N/A</span>'
 
 # Search each file using its regex
 for k, v in regexes.items():
-- 
GitLab


From 993642d2aa2bbecd8cd9568b8967bcf1fd14eb7e Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:04:34 +0200
Subject: [PATCH 059/194] clean nf scripts

---
 main.nf                     |  5 -----
 subworkflows/02_assembly.nf | 12 ++++--------
 2 files changed, 4 insertions(+), 13 deletions(-)

diff --git a/main.nf b/main.nf
index 75c9f7b..87a6bb4 100644
--- a/main.nf
+++ b/main.nf
@@ -448,14 +448,9 @@ workflow {
     ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
     ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
     ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
-    // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
     ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
-    // ch_contigs_and_reads = ch_prokka_fna
-    //     .join(ch_reads, remainder: true)
-
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
-    // exit 0, 'Exit now... S04_STRUCTURAL_ANNOT being constructed ' 
 	}
 
   ch_bam = Channel.empty()
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 1106df4..819c674 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -6,10 +6,10 @@ include { SAMTOOLS } from '../modules/read_alignment_metrics'
 
 workflow STEP_02_ASSEMBLY {
   take: 
-  reads
-  assembly
-  has_assembly
-  assembly_tool
+    reads
+    assembly
+    has_assembly
+    assembly_tool
 
   main:
     ch_assembler_v = Channel.empty() 
@@ -95,12 +95,8 @@ workflow STEP_02_ASSEMBLY {
 
   emit:
     assembly = ch_assembly_renamed
-<<<<<<< HEAD
     reads = ch_reads
     bam = ch_bam
-=======
-    dedup = ch_dedup
->>>>>>> faec234a8f1a5d6c7e324dfc6723c758d713bd3c
     idxstats = ch_idxstats
     flagstat = ch_flagstat
     assembly_report = ch_assembly_report
-- 
GitLab


From 9eb508cfd6e7ba69d2fed9d6ec36ba0bba06c5cd Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:38:20 +0200
Subject: [PATCH 060/194] remove read aln in step 05

---
 main.nf                      | 56 +++++++++++++++++++-----------------
 subworkflows/05_alignment.nf | 49 +++++++++++++++----------------
 2 files changed, 53 insertions(+), 52 deletions(-)

diff --git a/main.nf b/main.nf
index 87a6bb4..5604044 100644
--- a/main.nf
+++ b/main.nf
@@ -287,7 +287,7 @@ workflow {
   ch_kaiju_db = Channel.empty()
   ch_eggnog_db = Channel.empty()
   ch_taxonomy = Channel.empty()
-  ch_diamond = Channel.empty()
+  ch_diamon_db = Channel.empty()
   ch_gtbdtk_db = Channel.empty()
 
 
@@ -297,7 +297,7 @@ workflow {
   ch_kaiju_db = DATABASES.out.kaiju_db
   ch_eggnog_db = DATABASES.out.eggnog
   ch_taxonomy = DATABASES.out.taxonomy
-  ch_diamond = DATABASES.out.diamond
+  ch_diamon_db = DATABASES.out.diamond
   ch_gtbdtk_db = DATABASES.out.gtdbtk
 
   ch_multiqc_config = Channel.empty()
@@ -317,7 +317,7 @@ workflow {
   ch_final_assembly_flagstat_report = Channel.empty()
   ch_assembly_report = Channel.empty()
   ch_filtered_report = Channel.empty()
-  ch_prokka_report = Channel.empty()
+  ch_annotation_report = Channel.empty()
   ch_bins_abundances_report = Channel.empty()
   ch_bins_stats_report = Channel.empty()
   ch_quast = Channel.empty()
@@ -409,8 +409,8 @@ workflow {
     ch_reads = S02_ASSEMBLY.out.reads
     ch_bam = S02_ASSEMBLY.out.bam
 
+    ch_sam_coverage = S02_ASSEMBLY.out.coverage
     ch_idxstats = S02_ASSEMBLY.out.idxstats
-    
     ch_unfilter_assembly_flagstat_report = S02_ASSEMBLY.out.flagstat
 
     ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
@@ -433,47 +433,51 @@ workflow {
         ch_min_contigs_cpm
     )
     ch_assembly = S03_FILTERING.out.selected
+    ch_bam =  S03_FILTERING.out.bam
+    ch_sam_coverage = S02_ASSEMBLY.out.coverage
     ch_quast_after_filter_report = S03_FILTERING.out.report
-    
+    ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
+
+
+
+
   }
 
-  ch_contigs_and_reads = Channel.empty()
-  ch_prokka_ffn = Channel.empty()
-  ch_prokka_faa = Channel.empty()
-  ch_prokka_gff = Channel.empty()
-  ch_prokka_fna = Channel.empty()
+  ch_annotation_ffn = Channel.empty()
+  ch_annotation_faa = Channel.empty()
+  ch_annotation_gff = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
-    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    ch_annotation_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    ch_annotation_faa = S04_STRUCTURAL_ANNOT.out.faa
+    ch_annotation_gff = S04_STRUCTURAL_ANNOT.out.gff
+    ch_annotation_report = S04_STRUCTURAL_ANNOT.out.report
 
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
 	}
 
-  ch_bam = Channel.empty()
+  // ch_bam = Channel.empty()
   ch_m8 = Channel.empty()
-  ch_sam_coverage = Channel.empty()
+  // ch_sam_coverage = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot ) {
-    S05_ALIGNMENT ( ch_contigs_and_reads, ch_prokka_faa, ch_diamond)
-    ch_bam = S05_ALIGNMENT.out.bam
+    S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
+    // ch_bam = S05_ALIGNMENT.out.bam
     ch_m8 = S05_ALIGNMENT.out.m8
-    ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
+    // ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
 
-    if (!params.skip_filtering){
-      // when filtering is skip reads vs assembly remain unchanged so no need to send it to multiqc
-      ch_final_assembly_flagstat_report = S05_ALIGNMENT.out.sam_flagstat
-    }
+    // if (!params.skip_filtering){
+    //   // when filtering is skip reads vs assembly remain unchanged so no need to send it to multiqc
+    //   // ch_final_assembly_flagstat_report = S05_ALIGNMENT.out.sam_flagstat
+    // }
     ch_software_versions_S05 = S05_ALIGNMENT.out.software_versions
   }
 
   ch_quant_report = Channel.empty()
   ch_v_eggnogmapper = Channel.empty()
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot ) {
-      S06_FUNC_ANNOT ( ch_prokka_ffn, ch_prokka_faa, ch_prokka_gff, ch_bam, ch_m8, ch_eggnog_db )
+      S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_m8, ch_eggnog_db )
       ch_quant_report = S06_FUNC_ANNOT.out.quant_report
 
       ch_software_versions_S06 = S06_FUNC_ANNOT.out.software_versions
@@ -486,7 +490,7 @@ workflow {
 	}
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_binning ) {
-    S08_BINNING( ch_reads, ch_prokka_fna, ch_bam, ch_gtbdtk_db, ch_quast )
+    S08_BINNING( ch_reads, ch_annotation_fna, ch_bam, ch_gtbdtk_db, ch_quast )
     ch_bins_abundances_report = S08_BINNING.out.bins_abundances_report
     ch_bins_stats_report = S08_BINNING.out.bins_stats_report
 
@@ -515,7 +519,7 @@ workflow {
     ch_quast_before_filter_report.collect().ifEmpty([]),
     ch_quast_after_filter_report.collect().ifEmpty([]),
     ch_final_assembly_flagstat_report.collect().ifEmpty([]),
-    ch_prokka_report.collect().ifEmpty([]),
+    ch_annotation_report.collect().ifEmpty([]),
     ch_quant_report.collect().ifEmpty([]),
     ch_bins_abundances_report.collect().ifEmpty([]),
     ch_bins_stats_report.collect().ifEmpty([])
diff --git a/subworkflows/05_alignment.nf b/subworkflows/05_alignment.nf
index 1d7c543..191d20f 100644
--- a/subworkflows/05_alignment.nf
+++ b/subworkflows/05_alignment.nf
@@ -4,34 +4,34 @@ include { DIAMOND } from '../modules/diamond'
 
 workflow STEP_05_ALIGNMENT {
     take:
-        contigs_and_reads
+        // contigs_and_reads
         prokka_faa
         diamond
 
 	main:
-        ch_bwa_mem_v = Channel.empty()
-        ch_minimap2_v = Channel.empty()
-        ch_samtools_v = Channel.empty()
+        // ch_bwa_mem_v = Channel.empty()
+        // ch_minimap2_v = Channel.empty()
+        // ch_samtools_v = Channel.empty()
         ch_diamond_v = Channel.empty()
 
-        publishDir = "05_alignment/05_1_reads_alignment_on_contigs"
-        if (params.type == 'SR') {
-            BWA_MEM(contigs_and_reads, publishDir)
-            ch_bam = BWA_MEM.out.bam
+        // publishDir = "05_alignment/05_1_reads_alignment_on_contigs"
+        // if (params.type == 'SR') {
+        //     BWA_MEM(contigs_and_reads, publishDir)
+        //     ch_bam = BWA_MEM.out.bam
 
-            ch_bwa_mem_v = BWA_MEM.out.v_bwa_mem2
-            ch_samtools_v = BWA_MEM.out.v_samtools
-        } else {
-            MINIMAP2(contigs_and_reads, publishDir)
-            ch_bam = MINIMAP2.out.bam
+        //     ch_bwa_mem_v = BWA_MEM.out.v_bwa_mem2
+        //     ch_samtools_v = BWA_MEM.out.v_samtools
+        // } else {
+        //     MINIMAP2(contigs_and_reads, publishDir)
+        //     ch_bam = MINIMAP2.out.bam
 
-            ch_minimap2_v = MINIMAP2.out.v_minimap2
-            ch_samtools_v = MINIMAP2.out.v_samtools
-        }
+        //     ch_minimap2_v = MINIMAP2.out.v_minimap2
+        //     ch_samtools_v = MINIMAP2.out.v_samtools
+        // }
         
-        SAMTOOLS(ch_bam, publishDir)
-        ch_sam_coverage = SAMTOOLS.out.sam_coverage
-        ch_sam_flagstat = SAMTOOLS.out.sam_flagstat
+        // SAMTOOLS(ch_bam, publishDir)
+        // ch_sam_coverage = SAMTOOLS.out.sam_coverage
+        // ch_sam_flagstat = SAMTOOLS.out.sam_flagstat
 
         ch_m8 =Channel.empty()
         if (!params.skip_func_annot || !params.skip_taxo_affi){
@@ -42,13 +42,10 @@ workflow STEP_05_ALIGNMENT {
             ch_m8 = DIAMOND.out.m8
             ch_diamond_v = DIAMOND.out.v_diamond
         }
-        ch_software_versions = ch_bwa_mem_v.first().mix(ch_minimap2_v.first(),
-                                                       ch_samtools_v.first(),
-                                                       ch_diamond_v.first())
     emit:
-        bam = ch_bam
+        // bam = ch_bam
         m8 = ch_m8
-        sam_coverage = ch_sam_coverage
-        software_versions = ch_software_versions
-        sam_flagstat = ch_sam_flagstat
+        // sam_coverage = ch_sam_coverage
+        software_versions = ch_diamond_v.first()
+        // sam_flagstat = ch_sam_flagstat
     }
-- 
GitLab


From 86f50821dec927f08e3829563e6bf0e4a3168ee1 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:39:33 +0200
Subject: [PATCH 061/194] reorganise 02_assembly.nf

---
 modules/read_alignment_metrics.nf |  4 +++-
 subworkflows/02_assembly.nf       | 20 +++++++++-----------
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/modules/read_alignment_metrics.nf b/modules/read_alignment_metrics.nf
index e23dc78..ee1bd54 100644
--- a/modules/read_alignment_metrics.nf
+++ b/modules/read_alignment_metrics.nf
@@ -11,12 +11,14 @@ process SAMTOOLS {
       tuple val(meta), path("${meta.id}.idxstats"), emit: sam_idxstat
       path "${meta.id}.flagstat", emit: sam_flagstat
       path "${meta.id}*"
-
+      path "v_samtools.txt", emit: v_samtools
 
    script:
       """
       samtools flagstat -@ ${task.cpus}  ${bam} > ${meta.id}.flagstat
       samtools coverage  ${bam} > ${meta.id}.coverage.tsv
       samtools idxstats ${bam} > ${meta.id}.idxstats
+
+      samtools --version &> v_samtools.txt
       """
 }
\ No newline at end of file
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 819c674..ee5a207 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -64,12 +64,7 @@ workflow STEP_02_ASSEMBLY {
       ch_reads = READS_DEDUPLICATION.out.dedup_reads
       ch_bam = READS_DEDUPLICATION.out.bam
 
-      SAMTOOLS(ch_bam, "02_assembly")
-      ch_idxstats = SAMTOOLS.out.sam_idxstat
-      ch_flagstat = SAMTOOLS.out.sam_flagstat
-
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
-      ch_samtools_v = READS_DEDUPLICATION.out.v_samtools
       
     } else {
 
@@ -77,16 +72,18 @@ workflow STEP_02_ASSEMBLY {
         MINIMAP2(ch_contigs_and_reads,"02_assembly")
         ch_bam = MINIMAP2.out.bam
 
-        SAMTOOLS(ch_bam, "02_assembly")
-        ch_idxstats  = SAMTOOLS.out.sam_idxstat
-        ch_flagstat =  SAMTOOLS.out.sam_flagstat
-
         ch_minimap2_v = MINIMAP2.out.v_minimap2
-        ch_samtools_v = MINIMAP2.out.v_samtools
+        
       }
-      
     }
 
+    SAMTOOLS(ch_bam, "02_assembly")
+
+    ch_idxstats  = SAMTOOLS.out.sam_idxstat
+    ch_flagstat =  SAMTOOLS.out.sam_flagstat
+    ch_coverage =  SAMTOOLS.out.sam_coverage
+    ch_samtools_v = SAMTOOLS.out.v_samtools
+
     ch_software_versions = ch_assembler_v.first().mix( ch_quast_v.first(),
                                                        ch_bwa_mem_v.first(),
                                                        ch_minimap2_v.first(),
@@ -99,6 +96,7 @@ workflow STEP_02_ASSEMBLY {
     bam = ch_bam
     idxstats = ch_idxstats
     flagstat = ch_flagstat
+    coverage = ch_coverage
     assembly_report = ch_assembly_report
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From bdebbf18cb3f6e8e326d2d5e3e6f91d275b25672 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:59:42 +0200
Subject: [PATCH 062/194] rename diamond result channel for better clarity

---
 main.nf | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/main.nf b/main.nf
index 5604044..173bf84 100644
--- a/main.nf
+++ b/main.nf
@@ -434,7 +434,7 @@ workflow {
     )
     ch_assembly = S03_FILTERING.out.selected
     ch_bam =  S03_FILTERING.out.bam
-    ch_sam_coverage = S02_ASSEMBLY.out.coverage
+    ch_sam_coverage = S03_FILTERING.out.coverage
     ch_quast_after_filter_report = S03_FILTERING.out.report
     ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
@@ -458,13 +458,13 @@ workflow {
 	}
 
   // ch_bam = Channel.empty()
-  ch_m8 = Channel.empty()
+  ch_diamond_result = Channel.empty()
   // ch_sam_coverage = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot ) {
     S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
     // ch_bam = S05_ALIGNMENT.out.bam
-    ch_m8 = S05_ALIGNMENT.out.m8
+    ch_diamond_result = S05_ALIGNMENT.out.m8
     // ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
 
     // if (!params.skip_filtering){
@@ -477,14 +477,14 @@ workflow {
   ch_quant_report = Channel.empty()
   ch_v_eggnogmapper = Channel.empty()
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot ) {
-      S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_m8, ch_eggnog_db )
+      S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_diamond_result, ch_eggnog_db )
       ch_quant_report = S06_FUNC_ANNOT.out.quant_report
 
       ch_software_versions_S06 = S06_FUNC_ANNOT.out.software_versions
   }
 
 	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi ) {
-		S07_TAXO_AFFI ( ch_taxonomy, ch_m8, ch_sam_coverage)
+		S07_TAXO_AFFI ( ch_taxonomy, ch_diamond_result, ch_sam_coverage)
 
     ch_software_versions_S07 = S07_TAXO_AFFI.out.software_versions
 	}
-- 
GitLab


From 0cc6fa08c68ca56a56b9baa91c67eb7095314a4d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 16:00:02 +0200
Subject: [PATCH 063/194] rm graph as expected output

---
 modules/assign_taxonomy.nf | 1 -
 1 file changed, 1 deletion(-)

diff --git a/modules/assign_taxonomy.nf b/modules/assign_taxonomy.nf
index 5b03ec4..559c06c 100644
--- a/modules/assign_taxonomy.nf
+++ b/modules/assign_taxonomy.nf
@@ -11,7 +11,6 @@ process ASSIGN_TAXONOMY {
     tuple val(meta.id), path("${meta.id}.percontig.tsv"), emit: t_percontig
     tuple val(meta.id), path("${meta.id}.pergene.tsv"), emit: t_pergene
     tuple val(meta.id), path("${meta.id}.warn.tsv"), emit: t_warn
-    tuple val(meta.id), path("graphs"), emit: t_graphs
     path "${meta.id}_quantif_percontig.tsv", emit: q_all
     path "${meta.id}_quantif_percontig_by_superkingdom.tsv", emit: q_superkingdom
     path "${meta.id}_quantif_percontig_by_phylum.tsv", emit: q_phylum
-- 
GitLab


From 3a3302317ed10342b431b6b83f9bfc1d53690f92 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 16:53:27 +0200
Subject: [PATCH 064/194] refactoring of filter_contig_per_cpm.py using pyfastx
 #203

---
 bin/Filter_contig_per_cpm.py |  95 --------------------------------
 bin/filter_contig_per_cpm.py | 103 +++++++++++++++++++++++++++++++++++
 conf/base.config             |   4 +-
 conf/test.config             |   2 +-
 main.nf                      |  23 +++-----
 modules/filtering_cpm.nf     |   2 +-
 subworkflows/03_filtering.nf |  20 +++++--
 7 files changed, 131 insertions(+), 118 deletions(-)
 delete mode 100755 bin/Filter_contig_per_cpm.py
 create mode 100755 bin/filter_contig_per_cpm.py

diff --git a/bin/Filter_contig_per_cpm.py b/bin/Filter_contig_per_cpm.py
deleted file mode 100755
index 9127e57..0000000
--- a/bin/Filter_contig_per_cpm.py
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/usr/bin/env python
-
-"""----------------------------------------------------------------------------
-  Script Name: Filter_contig_per_cpm.py
-  Description: Calculates the CPM normalization of mapped reads for each \
-               contig and returns contigs which have a CPM > cutoff in .fa.
-  Input files: Samtools idxstats output file, .fasta file of contigs.
-  Created By:  Joanna Fourquet
-  Date:        2020-04-01
--------------------------------------------------------------------------------
-"""
-
-# Metadata
-__author__ = 'Joanna Fourquet \
-- GenPhySE - Team NED'
-__copyright__ = 'Copyright (C) 2020 INRA'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-# Status: dev
-
-# Modules importation
-
-try:
-    import argparse
-    import sys
-    import pandas as p
-    import numpy as np
-    from Bio.Seq import Seq
-    from Bio.SeqRecord import SeqRecord
-    import pprint
-    from Bio import SeqIO
-except ImportError as error:
-    print(error)
-    exit(1)
-
-################################################
-# Function
-################################################
-
-def cpm(counts):
-    N = np.sum(counts.iloc[:,2], axis=0)
-    C = counts.iloc[:,2]
-    cpm_values = 1e6 * C / N
-    return(cpm_values)
-
-def main(argv):
-    parser = argparse.ArgumentParser()
-    parser.add_argument("-i", "--samtools_idxstats", \
-    required = True, help = "samtools idxstats file containing contig id, \
-    sequence length, number of mapped reads or fragments, \
-    number of unmapped reads or fragments")
-    parser.add_argument('-f', '--fasta_file', required = True, help = \
-    'fasta file containing sequences of contigs.')
-    parser.add_argument("-c", "--cutoff_cpm", required = True, \
-    help = "Minimum number of reads in a contig")
-    parser.add_argument("-s", "--select", \
-    help = "Name of outpout .fa file containing contigs which passed cpm cutoff")
-    parser.add_argument("-d", "--discard", \
-    help = "Name of outpout .fa file containing contigs which don't passed cpm cutoff")
-    args = parser.parse_args()
-
-    # Read input table
-    raw_counts = p.read_table(args.samtools_idxstats,sep ='\t',header = None, comment="*")
-
-    # Calculates cpm for each contig
-    res_cpm = cpm(raw_counts)
-
-    cutoff = float(args.cutoff_cpm)
-    # Contigs with nb reads > cutoff
-    kept_contigs = raw_counts.iloc[np.where(res_cpm >= cutoff)[0],0]
-
-    # Contigs with nb reads < cutoff
-    unkept_contigs = raw_counts.iloc[np.where(res_cpm < cutoff)[0],0]
-
-    # Write new fasta files with kept and unkept contigs
-    with open(args.fasta_file, "rU") as fasta_file,\
-        open(args.select, "w") as out_select_handle,\
-        open(args.discard, "w") as out_discard_handle:
-        for record in SeqIO.parse(fasta_file, "fasta"):
-            try :
-                contig_id = record.id
-                if(contig_id in list(kept_contigs)):
-                    SeqIO.write(record, out_select_handle, "fasta")
-                else:
-                    if(contig_id in list(unkept_contigs)):
-                        SeqIO.write(record, out_discard_handle, "fasta")
-            except :
-                print ("Warning input fasta file: contig " + record.id + " issue")
-                pass
-
-if __name__ == "__main__":
-    main(sys.argv[1:])
diff --git a/bin/filter_contig_per_cpm.py b/bin/filter_contig_per_cpm.py
new file mode 100755
index 0000000..ba563ec
--- /dev/null
+++ b/bin/filter_contig_per_cpm.py
@@ -0,0 +1,103 @@
+#!/usr/bin/env python
+
+"""----------------------------------------------------------------------------
+  Script Name: Filter_contig_per_cpm.py
+  Description: Calculates the CPM normalization of mapped reads for each \
+               contig and returns contigs which have a CPM > cutoff in .fa.
+  Input files: Samtools idxstats output file, .fasta file of contigs.
+  Created By:  Joanna Fourquet
+  Date:        2020-04-01
+-------------------------------------------------------------------------------
+"""
+
+# Metadata
+__author__ = 'Joanna Fourquet \
+- GenPhySE - Team NED'
+__copyright__ = 'Copyright (C) 2020 INRA'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+# Status: dev
+
+# Modules importation
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
+import sys
+import pandas as pd
+import numpy as np
+import logging
+from Bio import SeqIO
+import pyfastx
+
+################################################
+# Function
+################################################
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument("-i", "--samtools_idxstats", required = True, 
+    help = "samtools idxstats file containing contig id, \
+    sequence length, number of mapped reads or fragments, \
+    number of unmapped reads or fragments")
+
+    parser.add_argument('-f', '--fasta_file', required = True, 
+                        help = 'fasta file containing sequences of contigs.')
+    parser.add_argument("-c", "--cutoff_cpm", required = True,
+                       help = "Minimum number of reads in a contig")
+    parser.add_argument("-s", "--select",
+                       help = "Name of outpout .fa file containing contigs which passed cpm cutoff")
+    parser.add_argument("-d", "--discard", 
+                       help = "Name of outpout .fa file containing contigs which don't passed cpm cutoff")
+
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+def cpm(counts):
+    N = np.sum(counts.iloc[:,2], axis=0)
+    C = counts.iloc[:,2]
+    cpm_values = 1e6 * C / N
+    return(cpm_values)
+
+def main(argv):
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+
+    # Read input table
+    raw_counts = pd.read_table(args.samtools_idxstats,sep ='\t',header = None, comment="*")
+
+    # Calculates cpm for each contig
+    res_cpm = cpm(raw_counts)
+
+    cutoff = float(args.cutoff_cpm)
+    # Contigs with nb reads > cutoff
+    kept_contigs = raw_counts.iloc[np.where(res_cpm >= cutoff)[0],0]
+
+
+    # Write new fasta files with kept and unkept contigs
+    with open(args.select, "w") as out_select_handle, open(args.discard, "w") as out_discard_handle:
+        
+        for contig, seq in pyfastx.Fasta(args.fasta_file, build_index=False):
+            if contig in kept_contigs:
+                out_select_handle.write(f'>{contig}\n{seq}\n')
+            else:
+                out_discard_handle.write(f'>{contig}\n{seq}\n')
+
+if __name__ == "__main__":
+    main(sys.argv[1:])
diff --git a/conf/base.config b/conf/base.config
index a94490b..c5de8a3 100644
--- a/conf/base.config
+++ b/conf/base.config
@@ -55,8 +55,8 @@ process {
         memory = { 32.GB * task.attempt }
     }
     withLabel: ASSEMBLY_FILTER {
-        memory = { 8.GB * task.attempt }
-        cpus = 4
+        memory = { 2.GB * task.attempt }
+        cpus = 1
     }
     withLabel: CD_HIT {
         memory = { 50.GB * task.attempt }
diff --git a/conf/test.config b/conf/test.config
index ae50b57..8b437cd 100644
--- a/conf/test.config
+++ b/conf/test.config
@@ -47,7 +47,7 @@ process {
     }
     withLabel: ASSEMBLY_FILTER {
         memory = { 1.GB * task.attempt }
-        cpus = 2
+        cpus = 1
     }
     withLabel: CD_HIT {
         memory = { 16.GB * task.attempt }
diff --git a/main.nf b/main.nf
index 173bf84..2c53770 100644
--- a/main.nf
+++ b/main.nf
@@ -418,28 +418,23 @@ workflow {
   }
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.skip_filtering ) {
+    print("IN FILTERING")
     ch_min_contigs_cpm = Channel.value(params.min_contigs_cpm)
 
-    ch_assembly
-        .splitFasta(by: 100000, file: true)
-        .set{ch_chunk_assembly_for_filter}
 
-    ch_chunk_assembly_for_filter
-        .combine(ch_idxstats, by:0)
-        .set{ch_assembly_and_idxstats}
 
     S03_FILTERING (
-        ch_assembly_and_idxstats,
+        ch_assembly,
+        ch_idxstats,
+        ch_bam,
         ch_min_contigs_cpm
     )
-    ch_assembly = S03_FILTERING.out.selected
+    
+    ch_assembly = S03_FILTERING.out.selected_contigs
     ch_bam =  S03_FILTERING.out.bam
-    ch_sam_coverage = S03_FILTERING.out.coverage
-    ch_quast_after_filter_report = S03_FILTERING.out.report
-    ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
-
-
-
+    // ch_sam_coverage = S03_FILTERING.out.coverage
+    ch_quast_after_filter_report = S03_FILTERING.out.quast_report
+    // ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
   }
 
diff --git a/modules/filtering_cpm.nf b/modules/filtering_cpm.nf
index 951a201..0155034 100644
--- a/modules/filtering_cpm.nf
+++ b/modules/filtering_cpm.nf
@@ -12,7 +12,7 @@ process CHUNK_ASSEMBLY_FILTER {
   script:
     chunk_name = assembly_file.baseName
     """
-    Filter_contig_per_cpm.py -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
+    filter_contig_per_cpm.py -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
     """
 }
 
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index b13e490..488a576 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -3,12 +3,21 @@ include { QUAST as FILTERED_QUAST } from '../modules/metaquast'
 
 workflow STEP_03_ASSEMBLY_FILTER {
   take:
-    assembly_and_idxstats
+    assemblies
+    idxstats
+    bam
     min_cpm
 
   main:
+    ch_chunk_assembly_for_filter = assemblies
+                                  .splitFasta(by: 100000, file: true)
+  
+
+    ch_assembly_and_idxstats = ch_chunk_assembly_for_filter
+                                .combine(idxstats, by:0)
+
     CHUNK_ASSEMBLY_FILTER (
-      assembly_and_idxstats,
+      ch_assembly_and_idxstats,
       min_cpm
     )
     ch_chunk_selected =  CHUNK_ASSEMBLY_FILTER.out.chunk_selected
@@ -30,10 +39,11 @@ workflow STEP_03_ASSEMBLY_FILTER {
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
 
     FILTERED_QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
-    ch_filtered_report = FILTERED_QUAST.out.report
+    ch_quast_report = FILTERED_QUAST.out.report
 
 
   emit:
-    selected = ch_merged_selected
-    report = ch_filtered_report
+    selected_contigs = ch_merged_selected
+    quast_report = ch_quast_report
+    bam = bam
 }
\ No newline at end of file
-- 
GitLab


From 60296922bd85c849aaacab08b48218934db8af9f Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 18:20:34 +0200
Subject: [PATCH 065/194] compelete refactoring of filter_contig_per_cpm.py

---
 bin/filter_contig_per_cpm.py | 42 +++++++++++++++++++-----------------
 1 file changed, 22 insertions(+), 20 deletions(-)

diff --git a/bin/filter_contig_per_cpm.py b/bin/filter_contig_per_cpm.py
index ba563ec..8f01cec 100755
--- a/bin/filter_contig_per_cpm.py
+++ b/bin/filter_contig_per_cpm.py
@@ -2,18 +2,17 @@
 
 """----------------------------------------------------------------------------
   Script Name: Filter_contig_per_cpm.py
-  Description: Calculates the CPM normalization of mapped reads for each \
+  Description: Calculates the CPM normalization of mapped reads for each 
                contig and returns contigs which have a CPM > cutoff in .fa.
   Input files: Samtools idxstats output file, .fasta file of contigs.
-  Created By:  Joanna Fourquet
-  Date:        2020-04-01
+  Created By:  Jean Mainguy
+  Date:        2022-24-10
 -------------------------------------------------------------------------------
 """
 
 # Metadata
-__author__ = 'Joanna Fourquet \
-- GenPhySE - Team NED'
-__copyright__ = 'Copyright (C) 2020 INRA'
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2022 INRAE'
 __license__ = 'GNU General Public License'
 __version__ = '0.1'
 __email__ = 'support.bioinfo.genotoul@inra.fr'
@@ -25,11 +24,9 @@ __status__ = 'dev'
 
 
 from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import sys
 import pandas as pd
 import numpy as np
 import logging
-from Bio import SeqIO
 import pyfastx
 
 ################################################
@@ -62,13 +59,8 @@ def parse_arguments():
     args = parser.parse_args()
     return args
 
-def cpm(counts):
-    N = np.sum(counts.iloc[:,2], axis=0)
-    C = counts.iloc[:,2]
-    cpm_values = 1e6 * C / N
-    return(cpm_values)
 
-def main(argv):
+def main():
     args = parse_arguments()
 
     if args.verbose:
@@ -78,18 +70,28 @@ def main(argv):
     else:
         logging.basicConfig(format="%(levelname)s: %(message)s")
 
+    cpm_cutoff = float(args.cutoff_cpm)
 
     # Read input table
-    raw_counts = pd.read_table(args.samtools_idxstats,sep ='\t',header = None, comment="*")
+    idxstat_df = pd.read_csv(args.samtools_idxstats,
+                           sep ='\t',
+                           names = ['reference_sequence_name', 
+                                     'sequence_length',
+                                     '# mapped_read-segments', 
+                                     '#_unmapped_read-segments'], 
+                        comment="*")
 
     # Calculates cpm for each contig
-    res_cpm = cpm(raw_counts)
+    sum_reads = idxstat_df['# mapped_read-segments'].sum()
 
-    cutoff = float(args.cutoff_cpm)
-    # Contigs with nb reads > cutoff
-    kept_contigs = raw_counts.iloc[np.where(res_cpm >= cutoff)[0],0]
+    logging.info(f'With a cpm cutoff of {args.cutoff_cpm}, contigs with less than {(sum_reads*cpm_cutoff)/1e6} reads are removed.')
+    idxstat_df['cpm_count'] = 1e6 * idxstat_df['# mapped_read-segments']/sum_reads
 
+    
+    # Contigs with nb reads > cutoff
+    kept_contigs = idxstat_df.loc[idxstat_df["cpm_count"] >= cpm_cutoff, "reference_sequence_name"].to_list()
 
+    logging.info(f'{len(kept_contigs)}/{len(idxstat_df)} contigs are kept with a cpm cutoff of {cpm_cutoff}.')
     # Write new fasta files with kept and unkept contigs
     with open(args.select, "w") as out_select_handle, open(args.discard, "w") as out_discard_handle:
         
@@ -100,4 +102,4 @@ def main(argv):
                 out_discard_handle.write(f'>{contig}\n{seq}\n')
 
 if __name__ == "__main__":
-    main(sys.argv[1:])
+    main()
-- 
GitLab


From cdd78ec8ec3809914c294356cd1213fcac9aaff3 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 19:00:10 +0200
Subject: [PATCH 066/194] add possibility to process multiple idxstat in
 filter_contig_per_cpm.py

---
 bin/filter_contig_per_cpm.py | 53 ++++++++++++++++++++++++++----------
 1 file changed, 39 insertions(+), 14 deletions(-)

diff --git a/bin/filter_contig_per_cpm.py b/bin/filter_contig_per_cpm.py
index 8f01cec..fdea68d 100755
--- a/bin/filter_contig_per_cpm.py
+++ b/bin/filter_contig_per_cpm.py
@@ -38,16 +38,16 @@ def parse_arguments():
     parser = ArgumentParser(description="...",
                             formatter_class=ArgumentDefaultsHelpFormatter)
 
-    parser.add_argument("-i", "--samtools_idxstats", required = True, 
+    parser.add_argument("-i", "--samtools_idxstats", nargs='+',  required = True, 
     help = "samtools idxstats file containing contig id, \
     sequence length, number of mapped reads or fragments, \
     number of unmapped reads or fragments")
 
-    parser.add_argument('-f', '--fasta_file', required = True, 
+    parser.add_argument('-f', '--fasta_file',  required = True, 
                         help = 'fasta file containing sequences of contigs.')
     parser.add_argument("-c", "--cutoff_cpm", required = True,
                        help = "Minimum number of reads in a contig")
-    parser.add_argument("-s", "--select",
+    parser.add_argument("-s", "--select", 
                        help = "Name of outpout .fa file containing contigs which passed cpm cutoff")
     parser.add_argument("-d", "--discard", 
                        help = "Name of outpout .fa file containing contigs which don't passed cpm cutoff")
@@ -59,6 +59,36 @@ def parse_arguments():
     args = parser.parse_args()
     return args
 
+def combine_idxstat_files(idxstat_files):
+    """
+    Combine multiple idxstat files that have the same contigs.
+
+    Sum the #_mapped_read_segments column over multiple idxstat files that have the same reference sequences.
+    """
+    columns_names = ['reference_sequence_name', 
+                    'sequence_length',
+                    '#_mapped_read_segments',
+                    '#_unmapped_read-segments']
+
+    idxstat_df = pd.read_csv(idxstat_files[0],
+                            sep ='\t',
+                            names = columns_names, 
+                            usecols = ['reference_sequence_name', 
+                                        'sequence_length',
+                                        '#_mapped_read_segments',],
+                            comment="*").set_index('reference_sequence_name')
+                            
+    for idxstat_file in idxstat_files[1:]:
+        other_idxstat_df = pd.read_csv(idxstat_file,
+                            sep ='\t',
+                            names = columns_names, 
+                            usecols = ['reference_sequence_name',
+                                        '#_mapped_read_segments',],
+                            comment="*").set_index('reference_sequence_name')
+            
+        idxstat_df['#_mapped_read_segments'] += other_idxstat_df['#_mapped_read_segments']
+
+    return idxstat_df
 
 def main():
     args = parse_arguments()
@@ -72,24 +102,19 @@ def main():
 
     cpm_cutoff = float(args.cutoff_cpm)
 
-    # Read input table
-    idxstat_df = pd.read_csv(args.samtools_idxstats,
-                           sep ='\t',
-                           names = ['reference_sequence_name', 
-                                     'sequence_length',
-                                     '# mapped_read-segments', 
-                                     '#_unmapped_read-segments'], 
-                        comment="*")
+    # Read input tables 
+    idxstat_df = combine_idxstat_files(args.samtools_idxstats)
 
     # Calculates cpm for each contig
-    sum_reads = idxstat_df['# mapped_read-segments'].sum()
+    sum_reads = idxstat_df['#_mapped_read_segments'].sum()
+    logging.info(f'Total number of mapped reads {sum_reads}')
 
     logging.info(f'With a cpm cutoff of {args.cutoff_cpm}, contigs with less than {(sum_reads*cpm_cutoff)/1e6} reads are removed.')
-    idxstat_df['cpm_count'] = 1e6 * idxstat_df['# mapped_read-segments']/sum_reads
+    idxstat_df['cpm_count'] = 1e6 * idxstat_df['#_mapped_read_segments']/sum_reads
 
     
     # Contigs with nb reads > cutoff
-    kept_contigs = idxstat_df.loc[idxstat_df["cpm_count"] >= cpm_cutoff, "reference_sequence_name"].to_list()
+    kept_contigs = idxstat_df.loc[idxstat_df["cpm_count"] >= cpm_cutoff].index
 
     logging.info(f'{len(kept_contigs)}/{len(idxstat_df)} contigs are kept with a cpm cutoff of {cpm_cutoff}.')
     # Write new fasta files with kept and unkept contigs
-- 
GitLab


From aebc8ad4d19434aedf1d864f6c54e83087c3c2ac Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 12:01:03 +0200
Subject: [PATCH 067/194] add structure and process to rescue reads in
 discarded contigs

---
 subworkflows/03_filtering.nf | 125 +++++++++++++++++++++++++++++++++--
 1 file changed, 120 insertions(+), 5 deletions(-)

diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index 488a576..dab2324 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -1,5 +1,7 @@
 include { CHUNK_ASSEMBLY_FILTER; MERGE_ASSEMBLY_FILTER} from '../modules/filtering_cpm.nf'
-include { QUAST as FILTERED_QUAST } from '../modules/metaquast'
+include { QUAST } from '../modules/metaquast'
+include { MINIMAP2; BWA_MEM } from '../modules/read_alignment'
+include { SAMTOOLS } from '../modules/read_alignment_metrics'
 
 workflow STEP_03_ASSEMBLY_FILTER {
   take:
@@ -37,13 +39,126 @@ workflow STEP_03_ASSEMBLY_FILTER {
       min_cpm
     )
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
+    discarded_contigs = MERGE_ASSEMBLY_FILTER.out.merged_discarded
 
-    FILTERED_QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
-    ch_quast_report = FILTERED_QUAST.out.report
+   discarded_contigs_category = discarded_contigs.branch{
+                              without: it[1].isEmpty() 
+                              with: !it[1].isEmpty() 
+                              }
 
+   // discarded_contigs_category.view()
+   samples_with_discarded_contigs = discarded_contigs_category.with
+   samples_without_discarded_contigs = discarded_contigs_category.without
+
+   discarded_contigs_category.without.view { "WITHOUT::::::::: > $it" }
+   discarded_contigs_category.with.view { "WITH::::::::: > $it" }
+   
+  ch_discarded_contigs_and_bam = samples_with_discarded_contigs.join(bam)
+  ch_discarded_contigs_and_bam.view()
+
+  FILTER_BAM(ch_discarded_contigs_and_bam)
+
+  ch_discarded_bam = FILTER_BAM.out.discarded_contigs_bam
+  ch_selected_bam = FILTER_BAM.out.selected_contigs_bam 
+
+  if ( params.type.toUpperCase() == "SR" ) {
+        
+        ch_discarded_reads = EXTRACT_PAIRED_READS(ch_discarded_bam)
+
+        ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
+
+        BWA_MEM(ch_contigs_and_discarded_reads, "03_filtering")
+        ch_bam_with_discarded_reads = BWA_MEM.out.bam
+
+  } else {
+        ch_discarded_reads = EXTRACT_SINGLE_READS(ch_discarded_bam)
+        ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
+        MINIMAP2(ch_contigs_and_reads, "03_filtering")
+        ch_bam_with_discarded_reads = MINIMAP2.out.bam
+  
+  }
+
+
+  // ch_merged_bam = MERGE_BAM_FILES(ch_filtered_bam, ch_bam_with_discarded_reads)
+  // SAMTOOLS(ch_merged_bam, '03_filtering/')
+
+
+  ch_merged_bam = Channel.empty()
+  ch_coverage  = Channel.empty()
+
+  ch_flagstat= Channel.empty()
+
+  // ch_flagstat =  SAMTOOLS.out.sam_flagstat
+  // ch_coverage =  SAMTOOLS.out.sam_coverage
+
+  QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
+  ch_quast_report = QUAST.out.report
 
   emit:
     selected_contigs = ch_merged_selected
     quast_report = ch_quast_report
-    bam = bam
-}
\ No newline at end of file
+    bam = ch_merged_bam
+    sam_coverage = ch_coverage
+    sam_flagstat = ch_flagstat
+
+}
+
+
+process FILTER_BAM {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(discarded_contigs), path(bam), path(bai)
+
+   output:
+      tuple val(meta), path("selected_contigs.bam"), emit: selected_contigs_bam
+      tuple val(meta), path("discarded_contigs.bam"), emit: discarded_contigs_bam
+
+
+   script:
+      """
+      
+      samtools faidx $discarded_contigs 
+      awk 'BEGIN {FS="\\t"}; {print \$1 FS "0" FS \$2}' ${discarded_contigs}.fai > discarded_contigs.bed
+
+
+      samtools view -@ ${task.cpus}  -bL discarded_contigs.bed -U selected_contigs.bam  $bam  -o discarded_contigs.bam
+
+
+      """
+}
+
+process EXTRACT_PAIRED_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam) //, path(bai)
+
+   output:
+      tuple val(meta), path("reads*.fastq.gz"), emit: reads
+
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus}  -N  -1 reads_R1.fastq.gz -2 reads_R2.fastq.gz $bam
+
+      """
+}
+
+process EXTRACT_SINGLE_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam), path(bai)
+
+   output:
+      tuple val(meta), path("reads.fastq.gz"), emit: reads
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus}  -N -1 reads.fastq.gz $bam
+
+      """
+}
-- 
GitLab


From d7cc93b0cb63bfce85f2d95077cf04bf8b8a9b9d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:28:37 +0200
Subject: [PATCH 068/194] finish rescuing reads mapping to discareded contigs

---
 subworkflows/03_filtering.nf | 54 +++++++++++++++++++++++++++---------
 1 file changed, 41 insertions(+), 13 deletions(-)

diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index dab2324..97399ef 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -46,14 +46,16 @@ workflow STEP_03_ASSEMBLY_FILTER {
                               with: !it[1].isEmpty() 
                               }
 
-   // discarded_contigs_category.view()
-   samples_with_discarded_contigs = discarded_contigs_category.with
-   samples_without_discarded_contigs = discarded_contigs_category.without
+
+   samples_without_discarded_contigs = discarded_contigs_category.without.map{ it -> it[0]}
+   samples_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS: $it"}
+   ch_bam_of_sample_without_discarded_contigs = samples_without_discarded_contigs.join(bam)
+   ch_bam_of_sample_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS AND bam: $it"}
 
    discarded_contigs_category.without.view { "WITHOUT::::::::: > $it" }
    discarded_contigs_category.with.view { "WITH::::::::: > $it" }
    
-  ch_discarded_contigs_and_bam = samples_with_discarded_contigs.join(bam)
+  ch_discarded_contigs_and_bam = discarded_contigs_category.with.join(bam)
   ch_discarded_contigs_and_bam.view()
 
   FILTER_BAM(ch_discarded_contigs_and_bam)
@@ -79,17 +81,24 @@ workflow STEP_03_ASSEMBLY_FILTER {
   }
 
 
-  // ch_merged_bam = MERGE_BAM_FILES(ch_filtered_bam, ch_bam_with_discarded_reads)
-  // SAMTOOLS(ch_merged_bam, '03_filtering/')
+   // remove bai from ch_bam_with_discarded_reads
+  ch_bam_to_merge = ch_bam_with_discarded_reads.map{ it -> [it[0], it[1]]}.join(ch_selected_bam)
+
+
+
+
+
+  ch_merged_bam = MERGE_BAM_FILES(ch_bam_to_merge)
 
+   ch_final_bam = ch_bam_of_sample_without_discarded_contigs.mix(ch_merged_bam)
 
-  ch_merged_bam = Channel.empty()
-  ch_coverage  = Channel.empty()
 
-  ch_flagstat= Channel.empty()
+   ch_final_bam.view { "FINAL BAMMMM::::::::: > $it" }
 
-  // ch_flagstat =  SAMTOOLS.out.sam_flagstat
-  // ch_coverage =  SAMTOOLS.out.sam_coverage
+  SAMTOOLS(ch_final_bam, '03_filtering/')
+
+  ch_flagstat =  SAMTOOLS.out.sam_flagstat
+  ch_coverage =  SAMTOOLS.out.sam_coverage
 
   QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
   ch_quast_report = QUAST.out.report
@@ -97,7 +106,7 @@ workflow STEP_03_ASSEMBLY_FILTER {
   emit:
     selected_contigs = ch_merged_selected
     quast_report = ch_quast_report
-    bam = ch_merged_bam
+    bam = ch_final_bam
     sam_coverage = ch_coverage
     sam_flagstat = ch_flagstat
 
@@ -158,7 +167,26 @@ process EXTRACT_SINGLE_READS {
    script:
       """
       
-      samtools fastq -@ ${task.cpus}  -N -1 reads.fastq.gz $bam
+      samtools fastq -@ ${task.cpus} -o reads.fastq.gz $bam
+
+      """
+}
+
+
+
+process MERGE_BAM_FILES {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam1), path(bam2)
+
+   output:
+      tuple val(meta), path("${meta.id}.filtered.bam"), path("${meta.id}.filtered.bam.bai") , emit: bam
+
+   script:
+      """
+      samtools merge -@ ${task.cpus} -o ${meta.id}.filtered.bam  $bam1 $bam2
+      samtools index -@ ${task.cpus} ${meta.id}.filtered.bam
 
       """
 }
-- 
GitLab


From 0ea7819f47e0789e865304d0f9e40d967e90df81 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:29:17 +0200
Subject: [PATCH 069/194] change name of input as it can colapse with output
 name

---
 modules/assembly.nf | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/modules/assembly.nf b/modules/assembly.nf
index 41db2c5..9155270 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -113,14 +113,14 @@ process RENAME_CONTIGS {
   label 'PYTHON'
 
   input:
-    tuple val(meta), path(assembly)
+    tuple val(meta), path("${meta.id}.raw.fna")
 
   output:
     tuple val(meta), path("${meta.id}.fna"), emit: fna
 
   script:
   """
-    rename_contigs.py --sample ${meta.id}  --fna_file $assembly --out_fna ${meta.id}.fna -v
+    rename_contigs.py --sample ${meta.id}  --fna_file ${meta.id}.raw.fna --out_fna ${meta.id}.fna -v
 
   """
 }
\ No newline at end of file
-- 
GitLab


From cc57f76ff9254f3ea5c1181a126168bfc2fe540f Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:34:26 +0200
Subject: [PATCH 070/194] add verbose parameter to filter_contig_per_cpm.py
 script

---
 modules/filtering_cpm.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/filtering_cpm.nf b/modules/filtering_cpm.nf
index 0155034..cdfe8e5 100644
--- a/modules/filtering_cpm.nf
+++ b/modules/filtering_cpm.nf
@@ -12,7 +12,7 @@ process CHUNK_ASSEMBLY_FILTER {
   script:
     chunk_name = assembly_file.baseName
     """
-    filter_contig_per_cpm.py -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
+    filter_contig_per_cpm.py -v -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
     """
 }
 
-- 
GitLab


From 23f06b36a8a347e73d718d4b8a5d03169d65358d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:35:20 +0200
Subject: [PATCH 071/194] publish bam in reads deduplication

---
 modules/reads_deduplication.nf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/modules/reads_deduplication.nf b/modules/reads_deduplication.nf
index 4731f9b..bce077d 100644
--- a/modules/reads_deduplication.nf
+++ b/modules/reads_deduplication.nf
@@ -2,6 +2,7 @@ process READS_DEDUPLICATION {
   tag "${meta.id}"
   publishDir "${params.outdir}/02_assembly/deduplicated_reads/", mode: 'copy', pattern: '*.fastq.gz'
   publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.fastq.gz'
+  publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.bam*'
   
   input:
   tuple val(meta), path(assembly), path(reads)
-- 
GitLab


From 289b3098bbe3f45b56e1d04dbb623ffbc073fdff Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:41:10 +0200
Subject: [PATCH 072/194] adjust output of  S03_FILTERING

---
 main.nf | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/main.nf b/main.nf
index 2c53770..48338b6 100644
--- a/main.nf
+++ b/main.nf
@@ -418,7 +418,7 @@ workflow {
   }
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.skip_filtering ) {
-    print("IN FILTERING")
+
     ch_min_contigs_cpm = Channel.value(params.min_contigs_cpm)
 
 
@@ -432,9 +432,10 @@ workflow {
     
     ch_assembly = S03_FILTERING.out.selected_contigs
     ch_bam =  S03_FILTERING.out.bam
-    // ch_sam_coverage = S03_FILTERING.out.coverage
+
+    ch_sam_coverage = S03_FILTERING.out.sam_coverage
     ch_quast_after_filter_report = S03_FILTERING.out.quast_report
-    // ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
+    ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
   }
 
-- 
GitLab


From b3968a1ee55a30cf4b5209eab3538fc9b6286806 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 17:33:14 +0200
Subject: [PATCH 073/194] cleaning and restructuration of samtools process

---
 main.nf                                |  11 +--
 modules/read_alignment_manipulation.nf | 104 ++++++++++++++++++++++++
 modules/read_alignment_metrics.nf      |  24 ------
 subworkflows/02_assembly.nf            |  15 ++--
 subworkflows/03_filtering.nf           | 105 +++----------------------
 subworkflows/05_alignment.nf           |  27 -------
 subworkflows/08_binning.nf             |   8 +-
 7 files changed, 125 insertions(+), 169 deletions(-)
 create mode 100644 modules/read_alignment_manipulation.nf
 delete mode 100644 modules/read_alignment_metrics.nf

diff --git a/main.nf b/main.nf
index 48338b6..cdd2d19 100644
--- a/main.nf
+++ b/main.nf
@@ -453,20 +453,13 @@ workflow {
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
 	}
 
-  // ch_bam = Channel.empty()
   ch_diamond_result = Channel.empty()
-  // ch_sam_coverage = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot ) {
     S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
-    // ch_bam = S05_ALIGNMENT.out.bam
+
     ch_diamond_result = S05_ALIGNMENT.out.m8
-    // ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
 
-    // if (!params.skip_filtering){
-    //   // when filtering is skip reads vs assembly remain unchanged so no need to send it to multiqc
-    //   // ch_final_assembly_flagstat_report = S05_ALIGNMENT.out.sam_flagstat
-    // }
     ch_software_versions_S05 = S05_ALIGNMENT.out.software_versions
   }
 
@@ -486,7 +479,7 @@ workflow {
 	}
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_binning ) {
-    S08_BINNING( ch_reads, ch_annotation_fna, ch_bam, ch_gtbdtk_db, ch_quast )
+    S08_BINNING( ch_reads, ch_assembly, ch_bam, ch_gtbdtk_db, ch_quast )
     ch_bins_abundances_report = S08_BINNING.out.bins_abundances_report
     ch_bins_stats_report = S08_BINNING.out.bins_stats_report
 
diff --git a/modules/read_alignment_manipulation.nf b/modules/read_alignment_manipulation.nf
new file mode 100644
index 0000000..ca0fe5d
--- /dev/null
+++ b/modules/read_alignment_manipulation.nf
@@ -0,0 +1,104 @@
+process GET_ALIGNMENT_METRICS {
+   tag "${meta.id}"
+   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy'
+
+   input:
+      tuple val(meta), path(bam), path(bai)
+      val(publishDir_path)
+
+   output:
+      tuple val(meta), path("${meta.id}.coverage.tsv"), emit: sam_coverage
+      tuple val(meta), path("${meta.id}.idxstats"), emit: sam_idxstat
+      path "${meta.id}.flagstat", emit: sam_flagstat
+      path "${meta.id}*"
+      path "v_samtools.txt", emit: v_samtools
+
+   script:
+      """
+      samtools flagstat -@ ${task.cpus}  ${bam} > ${meta.id}.flagstat
+      samtools coverage  ${bam} > ${meta.id}.coverage.tsv
+      samtools idxstats ${bam} > ${meta.id}.idxstats
+
+      samtools --version &> v_samtools.txt
+      """
+}
+
+
+process FILTER_BAM {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(discarded_contigs), path(bam), path(bai)
+
+   output:
+      tuple val(meta), path("selected_contigs.bam"), emit: selected_contigs_bam
+      tuple val(meta), path("discarded_contigs.bam"), emit: discarded_contigs_bam
+
+
+   script:
+      """
+      
+      samtools faidx $discarded_contigs 
+      awk 'BEGIN {FS="\\t"}; {print \$1 FS "0" FS \$2}' ${discarded_contigs}.fai > discarded_contigs.bed
+
+
+      samtools view -@ ${task.cpus}  -bL discarded_contigs.bed -U selected_contigs.bam  $bam  -o discarded_contigs.bam
+
+
+      """
+}
+
+process EXTRACT_PAIRED_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam)
+
+   output:
+      tuple val(meta), path("reads*.fastq.gz"), emit: reads
+
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus}  -N  -1 reads_R1.fastq.gz -2 reads_R2.fastq.gz $bam
+
+      """
+}
+
+process EXTRACT_SINGLE_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam)
+
+   output:
+      tuple val(meta), path("reads.fastq.gz"), emit: reads
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus} -o reads.fastq.gz $bam
+
+      """
+}
+
+
+
+process MERGE_BAM_FILES {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam1), path(bam2)
+
+   output:
+      tuple val(meta), path("${meta.id}.filtered.bam"), path("${meta.id}.filtered.bam.bai") , emit: bam
+
+   script:
+      """
+      samtools merge -@ ${task.cpus} -o ${meta.id}.filtered.bam  $bam1 $bam2
+      samtools index -@ ${task.cpus} ${meta.id}.filtered.bam
+
+      """
+}
+
diff --git a/modules/read_alignment_metrics.nf b/modules/read_alignment_metrics.nf
deleted file mode 100644
index ee1bd54..0000000
--- a/modules/read_alignment_metrics.nf
+++ /dev/null
@@ -1,24 +0,0 @@
-process SAMTOOLS {
-   tag "${meta.id}"
-   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy'
-
-   input:
-      tuple val(meta), path(bam), path(bai)
-      val(publishDir_path)
-
-   output:
-      tuple val(meta), path("${meta.id}.coverage.tsv"), emit: sam_coverage
-      tuple val(meta), path("${meta.id}.idxstats"), emit: sam_idxstat
-      path "${meta.id}.flagstat", emit: sam_flagstat
-      path "${meta.id}*"
-      path "v_samtools.txt", emit: v_samtools
-
-   script:
-      """
-      samtools flagstat -@ ${task.cpus}  ${bam} > ${meta.id}.flagstat
-      samtools coverage  ${bam} > ${meta.id}.coverage.tsv
-      samtools idxstats ${bam} > ${meta.id}.idxstats
-
-      samtools --version &> v_samtools.txt
-      """
-}
\ No newline at end of file
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index ee5a207..fe90d44 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -2,7 +2,7 @@ include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; RENAME_CONTIGS } from '..
 include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
+include { GET_ALIGNMENT_METRICS } from '../modules/read_alignment_manipulation'
 
 workflow STEP_02_ASSEMBLY {
   take: 
@@ -67,22 +67,19 @@ workflow STEP_02_ASSEMBLY {
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
       
     } else {
-
-      if (!params.skip_filtering) { 
         MINIMAP2(ch_contigs_and_reads,"02_assembly")
         ch_bam = MINIMAP2.out.bam
 
         ch_minimap2_v = MINIMAP2.out.v_minimap2
         
-      }
     }
 
-    SAMTOOLS(ch_bam, "02_assembly")
+    GET_ALIGNMENT_METRICS(ch_bam, "02_assembly")
 
-    ch_idxstats  = SAMTOOLS.out.sam_idxstat
-    ch_flagstat =  SAMTOOLS.out.sam_flagstat
-    ch_coverage =  SAMTOOLS.out.sam_coverage
-    ch_samtools_v = SAMTOOLS.out.v_samtools
+    ch_idxstats  = GET_ALIGNMENT_METRICS.out.sam_idxstat
+    ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
+    ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
+    ch_samtools_v = GET_ALIGNMENT_METRICS.out.v_samtools
 
     ch_software_versions = ch_assembler_v.first().mix( ch_quast_v.first(),
                                                        ch_bwa_mem_v.first(),
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index 97399ef..be38cd6 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -1,7 +1,7 @@
 include { CHUNK_ASSEMBLY_FILTER; MERGE_ASSEMBLY_FILTER} from '../modules/filtering_cpm.nf'
 include { QUAST } from '../modules/metaquast'
 include { MINIMAP2; BWA_MEM } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
+include { GET_ALIGNMENT_METRICS; FILTER_BAM; EXTRACT_SINGLE_READS; EXTRACT_PAIRED_READS; MERGE_BAM_FILES} from '../modules/read_alignment_manipulation'
 
 workflow STEP_03_ASSEMBLY_FILTER {
   take:
@@ -41,6 +41,9 @@ workflow STEP_03_ASSEMBLY_FILTER {
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
     discarded_contigs = MERGE_ASSEMBLY_FILTER.out.merged_discarded
 
+
+   // Differentiate sample with and without discarded_contigs 
+   // samples with no discarded_contigs are not going to be processed to process 
    discarded_contigs_category = discarded_contigs.branch{
                               without: it[1].isEmpty() 
                               with: !it[1].isEmpty() 
@@ -48,15 +51,9 @@ workflow STEP_03_ASSEMBLY_FILTER {
 
 
    samples_without_discarded_contigs = discarded_contigs_category.without.map{ it -> it[0]}
-   samples_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS: $it"}
    ch_bam_of_sample_without_discarded_contigs = samples_without_discarded_contigs.join(bam)
-   ch_bam_of_sample_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS AND bam: $it"}
-
-   discarded_contigs_category.without.view { "WITHOUT::::::::: > $it" }
-   discarded_contigs_category.with.view { "WITH::::::::: > $it" }
    
   ch_discarded_contigs_and_bam = discarded_contigs_category.with.join(bam)
-  ch_discarded_contigs_and_bam.view()
 
   FILTER_BAM(ch_discarded_contigs_and_bam)
 
@@ -75,30 +72,24 @@ workflow STEP_03_ASSEMBLY_FILTER {
   } else {
         ch_discarded_reads = EXTRACT_SINGLE_READS(ch_discarded_bam)
         ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
-        MINIMAP2(ch_contigs_and_reads, "03_filtering")
+        MINIMAP2(ch_contigs_and_discarded_reads, "03_filtering")
         ch_bam_with_discarded_reads = MINIMAP2.out.bam
   
   }
 
 
-   // remove bai from ch_bam_with_discarded_reads
+   // remove bai from ch_bam_with_discarded_reads and add bam of selected contigs
   ch_bam_to_merge = ch_bam_with_discarded_reads.map{ it -> [it[0], it[1]]}.join(ch_selected_bam)
 
-
-
-
-
   ch_merged_bam = MERGE_BAM_FILES(ch_bam_to_merge)
 
    ch_final_bam = ch_bam_of_sample_without_discarded_contigs.mix(ch_merged_bam)
 
 
-   ch_final_bam.view { "FINAL BAMMMM::::::::: > $it" }
-
-  SAMTOOLS(ch_final_bam, '03_filtering/')
+  GET_ALIGNMENT_METRICS(ch_final_bam, '03_filtering/')
 
-  ch_flagstat =  SAMTOOLS.out.sam_flagstat
-  ch_coverage =  SAMTOOLS.out.sam_coverage
+  ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
+  ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
 
   QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
   ch_quast_report = QUAST.out.report
@@ -112,81 +103,3 @@ workflow STEP_03_ASSEMBLY_FILTER {
 
 }
 
-
-process FILTER_BAM {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(discarded_contigs), path(bam), path(bai)
-
-   output:
-      tuple val(meta), path("selected_contigs.bam"), emit: selected_contigs_bam
-      tuple val(meta), path("discarded_contigs.bam"), emit: discarded_contigs_bam
-
-
-   script:
-      """
-      
-      samtools faidx $discarded_contigs 
-      awk 'BEGIN {FS="\\t"}; {print \$1 FS "0" FS \$2}' ${discarded_contigs}.fai > discarded_contigs.bed
-
-
-      samtools view -@ ${task.cpus}  -bL discarded_contigs.bed -U selected_contigs.bam  $bam  -o discarded_contigs.bam
-
-
-      """
-}
-
-process EXTRACT_PAIRED_READS {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam) //, path(bai)
-
-   output:
-      tuple val(meta), path("reads*.fastq.gz"), emit: reads
-
-
-   script:
-      """
-      
-      samtools fastq -@ ${task.cpus}  -N  -1 reads_R1.fastq.gz -2 reads_R2.fastq.gz $bam
-
-      """
-}
-
-process EXTRACT_SINGLE_READS {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam), path(bai)
-
-   output:
-      tuple val(meta), path("reads.fastq.gz"), emit: reads
-
-   script:
-      """
-      
-      samtools fastq -@ ${task.cpus} -o reads.fastq.gz $bam
-
-      """
-}
-
-
-
-process MERGE_BAM_FILES {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam1), path(bam2)
-
-   output:
-      tuple val(meta), path("${meta.id}.filtered.bam"), path("${meta.id}.filtered.bam.bai") , emit: bam
-
-   script:
-      """
-      samtools merge -@ ${task.cpus} -o ${meta.id}.filtered.bam  $bam1 $bam2
-      samtools index -@ ${task.cpus} ${meta.id}.filtered.bam
-
-      """
-}
diff --git a/subworkflows/05_alignment.nf b/subworkflows/05_alignment.nf
index 191d20f..9902230 100644
--- a/subworkflows/05_alignment.nf
+++ b/subworkflows/05_alignment.nf
@@ -1,37 +1,13 @@
-include { MINIMAP2; BWA_MEM } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
 include { DIAMOND } from '../modules/diamond'
 
 workflow STEP_05_ALIGNMENT {
     take:
-        // contigs_and_reads
         prokka_faa
         diamond
 
 	main:
-        // ch_bwa_mem_v = Channel.empty()
-        // ch_minimap2_v = Channel.empty()
-        // ch_samtools_v = Channel.empty()
         ch_diamond_v = Channel.empty()
 
-        // publishDir = "05_alignment/05_1_reads_alignment_on_contigs"
-        // if (params.type == 'SR') {
-        //     BWA_MEM(contigs_and_reads, publishDir)
-        //     ch_bam = BWA_MEM.out.bam
-
-        //     ch_bwa_mem_v = BWA_MEM.out.v_bwa_mem2
-        //     ch_samtools_v = BWA_MEM.out.v_samtools
-        // } else {
-        //     MINIMAP2(contigs_and_reads, publishDir)
-        //     ch_bam = MINIMAP2.out.bam
-
-        //     ch_minimap2_v = MINIMAP2.out.v_minimap2
-        //     ch_samtools_v = MINIMAP2.out.v_samtools
-        // }
-        
-        // SAMTOOLS(ch_bam, publishDir)
-        // ch_sam_coverage = SAMTOOLS.out.sam_coverage
-        // ch_sam_flagstat = SAMTOOLS.out.sam_flagstat
 
         ch_m8 =Channel.empty()
         if (!params.skip_func_annot || !params.skip_taxo_affi){
@@ -43,9 +19,6 @@ workflow STEP_05_ALIGNMENT {
             ch_diamond_v = DIAMOND.out.v_diamond
         }
     emit:
-        // bam = ch_bam
         m8 = ch_m8
-        // sam_coverage = ch_sam_coverage
         software_versions = ch_diamond_v.first()
-        // sam_flagstat = ch_sam_flagstat
     }
diff --git a/subworkflows/08_binning.nf b/subworkflows/08_binning.nf
index 97df1a6..59b9c7b 100644
--- a/subworkflows/08_binning.nf
+++ b/subworkflows/08_binning.nf
@@ -2,7 +2,7 @@ include { GENERATE_DEPTH_FILES; METABAT2; MAXBIN2; CONCOCT; METAWRAP_REFINMENT;
 include { CHECKM2 } from '../modules/checkm2'
 include { DREP } from '../modules/drep'
 include { BWA_MEM;BWA_MEM as BWA_MEM_CROSS_ALIGNMENT; MINIMAP2; MINIMAP2 as MINIMAP2_CROSS_ALIGNMENT } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
+include { GET_ALIGNMENT_METRICS } from '../modules/read_alignment_manipulation'
 include { GTDBTK } from '../modules/gtdbtk'
 include { GENOMES_ABUNDANCES_PER_SAMPLE; ADD_QUAST_INFO_TO_BINS; BINS_STATS_TO_MUTLIQC_FORMAT} from '../modules/sum_up_bins_informations'
 
@@ -213,11 +213,11 @@ workflow STEP_08_BINNING {
 
   ch_collect_coverages = Channel.empty()
   ch_collect_flagstats = Channel.empty()
-  SAMTOOLS(ch_bam, "08_binning/08_4_mapping_on_final_bins/stats")
+  GET_ALIGNMENT_METRICS(ch_bam, "08_binning/08_4_mapping_on_final_bins/stats")
 
-  ch_collect_coverages = SAMTOOLS.out.sam_coverage.map {id, file -> file}
+  ch_collect_coverages = GET_ALIGNMENT_METRICS.out.sam_coverage.map {id, file -> file}
               .collect()
-  ch_collect_flagstats = SAMTOOLS.out.sam_flagstat.collect()
+  ch_collect_flagstats = GET_ALIGNMENT_METRICS.out.sam_flagstat.collect()
 
   GENOMES_ABUNDANCES_PER_SAMPLE(ch_collect_coverages, ch_collect_flagstats, \
    ch_bins_drep, DREP.out.output_drep_stats, GTDBTK.out.gtdbtk_affiliations_predictions,
-- 
GitLab


From 734ac13e66692f25d221fb22bd2204737a2875f1 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 17:33:49 +0200
Subject: [PATCH 074/194] comment prokka warning

---
 docs/usage.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/usage.md b/docs/usage.md
index 672fa3a..d0b1a4c 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -300,7 +300,7 @@ No parameter available for this substep.
 No parameters.
 
 **WARNING 6:** `S04_STRUCTURAL_ANNOT` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY` and `S03_FILTERING` steps (if you use it). You need to use the mandatory files of these four steps to run `S04_STRUCTURAL_ANNOT`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 6**.
-
+<!-- 
 **WARNING 7:** if you haven't previously done `S03_FILTERING`, calculation time of `S04_STRUCTURAL_ANNOT` can be important. Some cluster queues have defined calculation time, you need to adapt the queue you use to your data.
 > For example, if you are on [genologin cluster](http://bioinfo.genotoul.fr/) and you haven't done the `S03_FILTERING` step, you can write a `nextflow.config` file in your working directory containing these lines:
 > ```bash
@@ -308,7 +308,7 @@ No parameters.
 >  queue = 'unlimitq'
 > }
 > ```
-> This will launch the `Prokka` command line of step `04_STRUCTURAL_ANNOT` on a calculation queue (`unlimitq`) where the job can last more than 4 days (which is not the case for the usual `workq` queue).
+> This will launch the `Prokka` command line of step `04_STRUCTURAL_ANNOT` on a calculation queue (`unlimitq`) where the job can last more than 4 days (which is not the case for the usual `workq` queue). -->
 
 #### **`S05_ALIGNMENT` step:**
 
-- 
GitLab


From 0f0894ddcef63ed233ef17e4c388f8b3076bd389 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 14:57:10 +0200
Subject: [PATCH 075/194] Add prodigal  module #163

---
 modules/prodigal.nf | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 modules/prodigal.nf

diff --git a/modules/prodigal.nf b/modules/prodigal.nf
new file mode 100644
index 0000000..1a9946c
--- /dev/null
+++ b/modules/prodigal.nf
@@ -0,0 +1,18 @@
+process PRODIGAL {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
+    path "v_prodigal.txt", emit: v_prokka
+
+  script:
+  """
+  prodigal -i ${assembly_file} -c -p meta -f gff -a prodigal.faa -o prodigal.gff 
+  
+  prodigal -v 2> v_prodigal.txt
+
+  """
+}
\ No newline at end of file
-- 
GitLab


From e9b67fa90000c14292be17b9437b4e7abefd5797 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:51:34 +0200
Subject: [PATCH 076/194] Add barrnap module see issue #163

---
 modules/barnap.nf | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 modules/barnap.nf

diff --git a/modules/barnap.nf b/modules/barnap.nf
new file mode 100644
index 0000000..0b88b76
--- /dev/null
+++ b/modules/barnap.nf
@@ -0,0 +1,18 @@
+process PRODIGAL {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
+    path "v_barrnap.txt", emit: v_barrnap
+
+  script:
+  """
+    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
+
+    barrnap --version  2> v_barrnap.txt
+
+  """
+}
-- 
GitLab


From e6c304f263259e16c61d742afbe29b5ee44ef229 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:52:13 +0200
Subject: [PATCH 077/194] Fix typo in prodigal module see issue #163

---
 modules/prodigal.nf | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/modules/prodigal.nf b/modules/prodigal.nf
index 1a9946c..be69d07 100644
--- a/modules/prodigal.nf
+++ b/modules/prodigal.nf
@@ -5,8 +5,9 @@ process PRODIGAL {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
-    path "v_prodigal.txt", emit: v_prokka
+    tuple val(meta), path("prodigal.gff"), emit: prodigal_gff
+    tuple val(meta), path("prodigal.faa"), emit: prodigal_faa
+    path "v_prodigal.txt", emit: v_prodigal
 
   script:
   """
-- 
GitLab


From a1f559dcf8023cd15652f02045037f54cfbc425d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:55:34 +0200
Subject: [PATCH 078/194] fix module name

---
 modules/barnap.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/barnap.nf b/modules/barnap.nf
index 0b88b76..302ab6d 100644
--- a/modules/barnap.nf
+++ b/modules/barnap.nf
@@ -1,4 +1,4 @@
-process PRODIGAL {
+process BARRNAP {
   tag "${meta.id}"
 
   input:
-- 
GitLab


From bc84d7ad3886d50ebeddb10f215399832c7efc6d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 16:18:15 +0200
Subject: [PATCH 079/194] fix typo in barrnap name module

---
 modules/{barnap.nf => barrnap.nf} | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 rename modules/{barnap.nf => barrnap.nf} (100%)

diff --git a/modules/barnap.nf b/modules/barrnap.nf
similarity index 100%
rename from modules/barnap.nf
rename to modules/barrnap.nf
-- 
GitLab


From c3e4e1e3c4ffa69484d74f4f6f4f495795012417 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 17:10:09 +0200
Subject: [PATCH 080/194] structuring step 04 with prodigal + barrnap approach

---
 main.nf                             | 17 +++++++++--------
 subworkflows/04_structural_annot.nf | 26 ++++++++++++++++----------
 2 files changed, 25 insertions(+), 18 deletions(-)

diff --git a/main.nf b/main.nf
index 229345d..cde0ad1 100644
--- a/main.nf
+++ b/main.nf
@@ -443,17 +443,18 @@ workflow {
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
-    ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
-    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    // ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    // ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
+    // ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
+    // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
+    // ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
-    ch_contigs_and_reads = ch_prokka_fna
-        .join(ch_reads, remainder: true)
-    ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
+    // ch_contigs_and_reads = ch_prokka_fna
+    //     .join(ch_reads, remainder: true)
+    // ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
 
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
+    // exit 0, 'Exit now... S04_STRUCTURAL_ANNOT being constructed ' 
 	}
 
   ch_bam = Channel.empty()
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 61bff36..ba3d4fe 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,19 +1,25 @@
-include { PROKKA; RENAME_CONTIGS_AND_GENES } from '../modules/prokka'
+include { PRODIGAL } from '../modules/prodigal'
+include { BARRNAP } from '../modules/barrnap'
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
 
   main:
-    PROKKA( assembly )
-    ch_software_versions = PROKKA.out.v_prokka.first()
-    RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
+    PRODIGAL( assembly )
+    BARRNAP( assembly )
+    ch_software_versions = PRODIGAL.out.v_prodigal.first()
+
+
+    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first())
+
+    // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
 
   emit:
-    report = PROKKA.out.report
-    fna = RENAME_CONTIGS_AND_GENES.out.fna
-    ffn = RENAME_CONTIGS_AND_GENES.out.ffn
-    gff = RENAME_CONTIGS_AND_GENES.out.gff
-    faa = RENAME_CONTIGS_AND_GENES.out.faa 
-    prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
+    // report = PROKKA.out.report
+    // fna = RENAME_CONTIGS_AND_GENES.out.fna
+    // ffn = RENAME_CONTIGS_AND_GENES.out.ffn
+    // gff = RENAME_CONTIGS_AND_GENES.out.gff
+    // faa = RENAME_CONTIGS_AND_GENES.out.faa 
+    // prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From 6bd03a28668b74fe8ba946c9dc577966efb273cc Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 17:10:43 +0200
Subject: [PATCH 081/194] fix barnnap output

---
 modules/barrnap.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/barrnap.nf b/modules/barrnap.nf
index 302ab6d..44cbd5e 100644
--- a/modules/barrnap.nf
+++ b/modules/barrnap.nf
@@ -10,7 +10,7 @@ process BARRNAP {
 
   script:
   """
-    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
+    barrnap --threads ${task.cpus} ${assembly_file} > barrnap.gff
 
     barrnap --version  2> v_barrnap.txt
 
-- 
GitLab


From bcc03469e7b55eb316b78af8e40ba591361a42ab Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 10:35:40 +0200
Subject: [PATCH 082/194] Add trnascan and pyfastx in conda recipe

issue #163
---
 env/metagWGS.yml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/env/metagWGS.yml b/env/metagWGS.yml
index 8a0cc9e..6a0b710 100644
--- a/env/metagWGS.yml
+++ b/env/metagWGS.yml
@@ -28,5 +28,5 @@ dependencies:
   - flye=2.9.1
   - hifiasm_meta=hamtv0.3
   - plotly
+  - trnascan-se=2.0.11
   - pyfastx
-
-- 
GitLab


From 72e5196a0616b0f6373941b2e4a81cfe4ddcff25 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 11:45:15 +0200
Subject: [PATCH 083/194] Add trnascan_se module issue #163

---
 modules/trnascan_se.nf              | 19 +++++++++++++++++++
 subworkflows/04_structural_annot.nf |  6 +++++-
 2 files changed, 24 insertions(+), 1 deletion(-)
 create mode 100644 modules/trnascan_se.nf

diff --git a/modules/trnascan_se.nf b/modules/trnascan_se.nf
new file mode 100644
index 0000000..e292e3e
--- /dev/null
+++ b/modules/trnascan_se.nf
@@ -0,0 +1,19 @@
+process TRNASCAN_SE {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("trnascan_se.gff"), emit: trnascan_gff
+    path "v_tRNAscan.txt", emit: v_tRNAscan
+
+  script:
+  """
+    tRNAscan-SE -B --gff trnascan_se.gff  --thread ${task.cpus} --stats trnascan_se.log  ${assembly_file}
+
+    tRNAscan-SE -h 2> v_tRNAscan.txt
+
+
+  """
+}
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index ba3d4fe..4e6687b 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,5 +1,6 @@
 include { PRODIGAL } from '../modules/prodigal'
 include { BARRNAP } from '../modules/barrnap'
+include { TRNASCAN_SE } from '../modules/trnascan_se'
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
@@ -7,10 +8,13 @@ workflow STEP_04_STRUCTURAL_ANNOT {
   main:
     PRODIGAL( assembly )
     BARRNAP( assembly )
+    TRNASCAN_SE( assembly )
+
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
 
-    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first())
+    ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
+                                                                TRNASCAN_SE.out.v_tRNAscan.first())
 
     // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
 
-- 
GitLab


From 1c41a2fb681c8fe4f875b98c748d2fa182bc2a26 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 17:48:21 +0200
Subject: [PATCH 084/194] simplify channel name

---
 modules/barrnap.nf     | 2 +-
 modules/prodigal.nf    | 4 ++--
 modules/trnascan_se.nf | 2 +-
 3 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/modules/barrnap.nf b/modules/barrnap.nf
index 44cbd5e..16013a0 100644
--- a/modules/barrnap.nf
+++ b/modules/barrnap.nf
@@ -5,7 +5,7 @@ process BARRNAP {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
+    tuple val(meta), path("barrnap.gff"), emit: gff
     path "v_barrnap.txt", emit: v_barrnap
 
   script:
diff --git a/modules/prodigal.nf b/modules/prodigal.nf
index be69d07..63bde69 100644
--- a/modules/prodigal.nf
+++ b/modules/prodigal.nf
@@ -5,8 +5,8 @@ process PRODIGAL {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("prodigal.gff"), emit: prodigal_gff
-    tuple val(meta), path("prodigal.faa"), emit: prodigal_faa
+    tuple val(meta), path("prodigal.gff"), emit: gff
+    tuple val(meta), path("prodigal.faa"), emit: faa
     path "v_prodigal.txt", emit: v_prodigal
 
   script:
diff --git a/modules/trnascan_se.nf b/modules/trnascan_se.nf
index e292e3e..b690c7c 100644
--- a/modules/trnascan_se.nf
+++ b/modules/trnascan_se.nf
@@ -5,7 +5,7 @@ process TRNASCAN_SE {
     tuple val(meta), file(assembly_file)
 
   output:
-    tuple val(meta), path("trnascan_se.gff"), emit: trnascan_gff
+    tuple val(meta), path("trnascan_se.gff"), emit: gff
     path "v_tRNAscan.txt", emit: v_tRNAscan
 
   script:
-- 
GitLab


From 12c13d247568517f985d346ce0ba8a4a0d705b71 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 18:03:14 +0200
Subject: [PATCH 085/194] Add process and script to merge gff annotations issue
 #163

---
 bin/merge_annotations.py            | 178 ++++++++++++++++++++++++++++
 subworkflows/04_structural_annot.nf |  12 ++
 2 files changed, 190 insertions(+)
 create mode 100755 bin/merge_annotations.py

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
new file mode 100755
index 0000000..8d3b4fa
--- /dev/null
+++ b/bin/merge_annotations.py
@@ -0,0 +1,178 @@
+#!/usr/bin/env python3
+
+"""
+Combine structural annotations made from different gff. 
+
+In case of collapsing annotations RNA annotation are prefered to CDS annotations.
+
+:Example:
+python template.py -v
+"""
+
+# Metadata
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2020 INRAE'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, FileType
+import logging
+import gzip
+import csv
+from collections import defaultdict
+
+def read_file_and_ignore_hashtag(file_path):
+    proper_open = gzip.open if file_path.endswith('.gz') else open
+    with proper_open(file_path, 'rt') as fl:
+        for line in fl:
+            if line.startswith('#'):
+                continue
+            yield line
+
+def group_annotations_by_contigs(*gff_annotations):
+
+    contig2annotations = defaultdict(list) 
+    for annotations in gff_annotations:
+        for annotation in annotations:
+            contig2annotations[annotation['seqname']].append(annotation)
+
+    return contig2annotations
+
+        
+def parse_gff_file(gff_file, feature_to_keep=False):
+
+    gff_headers = ("seqname", "_3", "feature", "start", "end", "_2", "strand", "_1", "attribute")
+
+    gff_annotations = csv.DictReader(read_file_and_ignore_hashtag(gff_file), 
+                                                                        delimiter='\t',
+                                                                        fieldnames=gff_headers)
+
+    if feature_to_keep:
+        logging.info(f'Keeping only {feature_to_keep} feature from {gff_file}')
+        gff_annotations = (annotation for annotation in gff_annotations if annotation['feature'] == feature_to_keep)
+        
+    return gff_annotations
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
+
+    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
+
+    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+
+    parser.add_argument('-o', '--gff_output', help='final gff file with merged annotations.', required=True)
+
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+def remove_overlapping_cds(cds_file, contig2rnas):
+
+    contig_annotations = []
+    current_contig = None
+
+    for cds in parse_gff_file(cds_file, 'CDS'):
+        
+        reading_next_contig = cds['seqname'] != current_contig
+        
+        if contig_annotations and reading_next_contig:
+
+            yield current_contig, contig_annotations
+            contig_annotations = []
+
+        current_contig = cds['seqname']
+
+        is_overlapping = False
+        for rna in contig2rnas[current_contig]:
+                if (int(rna['end']) < int(cds['start']) or int(rna['start']) > int(cds['end'])):
+                    continue
+                
+                else:  # overlap -> remove cds
+                    is_overlapping = True
+                    overlap = f"[{max(rna['start'], cds['start'])},{min(rna['end'], cds['end'])}]"
+                    rna_info = f"{rna['feature']} [{rna['start']}, {rna['end']}]"
+                    cds_info = f"CDS [{cds['start']}, {cds['end']}]"
+                    logging.info(f"overlap: {cds_info} overlapping with {rna_info} at {overlap} on contig={current_contig}")
+
+        if not is_overlapping:
+            contig_annotations.append(cds)
+
+    yield current_contig, contig_annotations
+
+def merging_cds_and_rna(cds_per_contig, contig2rnas):
+    contig_processed = []
+    for contig, cds_features in cds_per_contig:
+        contig_processed.append(contig)
+        rna_features = contig2rnas[contig]
+        yield contig, rna_features + cds_features
+    
+    # check that all rrna contigs have been processed if not processe them
+    for contig, rnas in  contig2rnas.items():
+        if contig not in contig_processed:
+            logging.info(f'{contig} has only rna annotation')
+            yield contig, rnas
+
+def writing_features_to_gff(annotations_per_contig, out_gff):
+    
+    with open(out_gff, 'w') as fl:
+
+        fl.write("##gff-version  3\n")
+        for contig, features in annotations_per_contig:
+            logging.info(f"writing {contig} annotations to gff file")
+            fl.write(f"##sequence-region {contig}\n")
+
+            for feature in sorted(features, key=lambda x: int(x['start'])):
+                fl.write('\t'.join(feature.values())+"\n")
+
+def main():
+
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+
+    trna_file  = args.trna 
+    rrna_file  = args.rrna
+    cds_file = args.cds
+
+    output_gff = args.gff_output
+
+    logging.info('Parsing rRNA annoations.')
+    rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
+
+    logging.info('Parsing tRNA annoations.')
+    trna_annotations = parse_gff_file(trna_file, 'tRNA')
+
+    logging.info('Grouping RNA annoations by contig.')
+    contig2rnas = group_annotations_by_contigs(trna_annotations, rrna_annotations)
+    
+    logging.info('Removing CDS annoations overlapping a RNA annotations.')
+    unoverlapping_cds_per_contig = remove_overlapping_cds(cds_file, contig2rnas)
+
+    logging.info('Merge CDS and RNA annotations by contig.')
+    annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
+
+    logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
+    writing_features_to_gff(annotation_per_contigs, output_gff)
+    
+
+
+
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 4e6687b..a70b215 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -1,6 +1,8 @@
 include { PRODIGAL } from '../modules/prodigal'
 include { BARRNAP } from '../modules/barrnap'
 include { TRNASCAN_SE } from '../modules/trnascan_se'
+include { MERGE_ANNOTATIONS } from '../modules/merge_annotations'
+
 
 workflow STEP_04_STRUCTURAL_ANNOT {
   take: assembly
@@ -10,6 +12,16 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     BARRNAP( assembly )
     TRNASCAN_SE( assembly )
 
+
+    annotations_ch = PRODIGAL.out.gff.join(BARRNAP.out.gff)
+                                              .join(TRNASCAN_SE.out.gff)
+    annotations_ch.view()
+
+
+
+    MERGE_ANNOTATIONS(annotations_ch)
+
+
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
 
-- 
GitLab


From 382a5e373a8cd4b8c0b2776596b8b58a6e755e90 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 19:01:45 +0200
Subject: [PATCH 086/194] add ffn output on top of gff output

---
 bin/merge_annotations.py            | 51 +++++++++++++++++++++++++----
 subworkflows/04_structural_annot.nf |  2 +-
 2 files changed, 45 insertions(+), 8 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 8d3b4fa..91ebdb0 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -23,6 +23,8 @@ import logging
 import gzip
 import csv
 from collections import defaultdict
+import pyfastx
+
 
 def read_file_and_ignore_hashtag(file_path):
     proper_open = gzip.open if file_path.endswith('.gz') else open
@@ -67,7 +69,11 @@ def parse_arguments():
 
     parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
 
-    parser.add_argument('-o', '--gff_output', help='final gff file with merged annotations.', required=True)
+    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
+    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
 
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
@@ -122,17 +128,44 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
             logging.info(f'{contig} has only rna annotation')
             yield contig, rnas
 
-def writing_features_to_gff(annotations_per_contig, out_gff):
+def add_new_ID_tag(gff_attributes, new_id):
+    gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] != 'ID'])
+    return f"ID={new_id};{gff_attributes_no_id}"
+
+def get_Name_tag(gff_attributes):
+    for attr in gff_attributes.split(';'):
+        if attr.split('=')[0] == "Name":
+            return attr.split('=')[1]
+    return ''
+
+
+def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
     
-    with open(out_gff, 'w') as fl:
+    contig_fa = pyfastx.Fasta(fna_file)
+
+
+    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
 
-        fl.write("##gff-version  3\n")
+        fh_gff.write("##gff-version  3\n")
         for contig, features in annotations_per_contig:
+            gene_count = defaultdict(int)
             logging.info(f"writing {contig} annotations to gff file")
-            fl.write(f"##sequence-region {contig}\n")
+            fh_gff.write(f"##sequence-region {contig}\n")
 
             for feature in sorted(features, key=lambda x: int(x['start'])):
-                fl.write('\t'.join(feature.values())+"\n")
+                gene_count[feature['feature']] += 1 
+                new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+
+                feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
+
+                tag_name = get_Name_tag(feature['attribute'])
+                fh_gff.write('\t'.join(feature.values())+"\n")
+
+                feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
+                fh_ffn.write(f">{new_id} {tag_name}\n")
+                fh_ffn.write(f"{feature_seq}\n")
+
+
 
 def main():
 
@@ -152,6 +185,9 @@ def main():
 
     output_gff = args.gff_output
 
+    fna_file = args.contig_seq
+    out_ffn = args.ffn_output
+
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
 
@@ -168,11 +204,12 @@ def main():
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
     logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
-    writing_features_to_gff(annotation_per_contigs, output_gff)
+    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn)
     
 
 
 
 
+
 if __name__ == '__main__':
     main()
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index a70b215..e420d55 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -13,7 +13,7 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     TRNASCAN_SE( assembly )
 
 
-    annotations_ch = PRODIGAL.out.gff.join(BARRNAP.out.gff)
+    annotations_ch = assembly.join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
     annotations_ch.view()
 
-- 
GitLab


From 4cfbd05d10dda1be0fe1d2c3114d87e37e494782 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 09:31:10 +0200
Subject: [PATCH 087/194] process to launch python script to merge gff files

---
 modules/merge_annotations.nf | 15 +++++++++++++++
 1 file changed, 15 insertions(+)
 create mode 100644 modules/merge_annotations.nf

diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
new file mode 100644
index 0000000..4cbbd82
--- /dev/null
+++ b/modules/merge_annotations.nf
@@ -0,0 +1,15 @@
+process MERGE_ANNOTATIONS {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file), file(cds_gff), file(rrna_gff), file(trna_gff)
+
+  output:
+
+
+  script:
+  """
+    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  --contig_seq $assembly_file \
+                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff 
+  """
+}
\ No newline at end of file
-- 
GitLab


From ed9bd2fe5525554124aada4033dbd2b187655976 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 13:37:32 +0200
Subject: [PATCH 088/194] fix strand and zero base position when extracting seq

---
 bin/merge_annotations.py | 112 +++++++++++++++++++++++++--------------
 1 file changed, 73 insertions(+), 39 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 91ebdb0..5434cdb 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -24,9 +24,36 @@ import gzip
 import csv
 from collections import defaultdict
 import pyfastx
+from Bio.Seq import Seq
 
 
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
+
+    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
+
+    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+
+    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
+
+    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
+
+    parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
 def read_file_and_ignore_hashtag(file_path):
+
     proper_open = gzip.open if file_path.endswith('.gz') else open
     with proper_open(file_path, 'rt') as fl:
         for line in fl:
@@ -58,30 +85,6 @@ def parse_gff_file(gff_file, feature_to_keep=False):
         
     return gff_annotations
 
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(description="...",
-                            formatter_class=ArgumentDefaultsHelpFormatter)
-
-    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
-
-    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
-
-    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
-
-    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
-    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
-    
-    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
-
-
-
-    parser.add_argument("-v", "--verbose", help="increase output verbosity",
-                        action="store_true")
-
-    args = parser.parse_args()
-    return args
-
 def remove_overlapping_cds(cds_file, contig2rnas):
 
     contig_annotations = []
@@ -116,6 +119,7 @@ def remove_overlapping_cds(cds_file, contig2rnas):
     yield current_contig, contig_annotations
 
 def merging_cds_and_rna(cds_per_contig, contig2rnas):
+
     contig_processed = []
     for contig, cds_features in cds_per_contig:
         contig_processed.append(contig)
@@ -129,21 +133,22 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
             yield contig, rnas
 
 def add_new_ID_tag(gff_attributes, new_id):
+
     gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] != 'ID'])
     return f"ID={new_id};{gff_attributes_no_id}"
 
-def get_Name_tag(gff_attributes):
-    for attr in gff_attributes.split(';'):
-        if attr.split('=')[0] == "Name":
+
+def get_tag_value(gff_attribute, tag):
+
+    for attr in gff_attribute.split(';'):
+        if attr.split('=')[0] == tag:
             return attr.split('=')[1]
     return ''
 
-
 def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
     
     contig_fa = pyfastx.Fasta(fna_file)
 
-
     with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
 
         fh_gff.write("##gff-version  3\n")
@@ -158,13 +163,41 @@ def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, o
 
                 feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
 
-                tag_name = get_Name_tag(feature['attribute'])
+                tag_name = get_tag_value(feature['attribute'], 'Name')
                 fh_gff.write('\t'.join(feature.values())+"\n")
 
-                feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
-                fh_ffn.write(f">{new_id} {tag_name}\n")
-                fh_ffn.write(f"{feature_seq}\n")
+                # feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
+                #                 
+                
 
+                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
+                
+                if feature['strand'] == "+":
+                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                else:
+                    # reverse complement the sequence
+                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
+
+                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+
+
+                # if feature['feature'] == "CDS":
+
+                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
+                    
+                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
+
+
+# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+
+#     protein_fa = pyfastx.Fasta(faa_file)
+#     all_names = [set(protein_fa.keys().filter())]
+
+    
+#     for contig, features in annotation_per_contigs:
+        
+
+#     yield contig, features 
 
 
 def main():
@@ -187,6 +220,9 @@ def main():
 
     fna_file = args.contig_seq
     out_ffn = args.ffn_output
+    out_faa = args.faa_output
+
+    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
@@ -203,13 +239,11 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    logging.info(f'Writting CDS and RNA annotations to gff file {output_gff}.')
-    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn)
-    
-
-
-
+    # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
 
+    logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
+    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    
 
 if __name__ == '__main__':
     main()
\ No newline at end of file
-- 
GitLab


From b916348db7b64d2359353752bf2b5046608e4354 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:35:49 +0200
Subject: [PATCH 089/194] add faa file filtering from prodigal

---
 bin/merge_annotations.py | 69 +++++++++++++++++++++++++---------------
 1 file changed, 44 insertions(+), 25 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 5434cdb..e6a5c59 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -145,11 +145,13 @@ def get_tag_value(gff_attribute, tag):
             return attr.split('=')[1]
     return ''
 
-def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, out_ffn):
+def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, out_ffn, faa_file, out_faa):
     
     contig_fa = pyfastx.Fasta(fna_file)
+    protein_fa = pyfastx.Fasta(faa_file)
 
-    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn:
+
+    with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn, open(out_faa, 'w') as fh_faa:
 
         fh_gff.write("##gff-version  3\n")
         for contig, features in annotations_per_contig:
@@ -161,43 +163,60 @@ def writing_features_to_gff_and_ffn(annotations_per_contig, out_gff, fna_file, o
                 gene_count[feature['feature']] += 1 
                 new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
 
+                start, end = int(feature['start']), int(feature['end'])
+                
+                # write faa
+                if feature['feature'] == "CDS":
+                    gff_id = get_tag_value(feature['attribute'], 'ID')
+
+                    # ID in gff from prodigal is <contig_number>_<cds_number>
+                    # seq name in faa from prodigal is <contig_name>_<cds_number>
+                    cds_number = gff_id.split('_')[-1]
+                    cds_prodigal_id = f"{contig}_{cds_number}"
+                    fh_faa.write(f">{new_id} {start}-{end}\n{protein_fa[cds_prodigal_id]}\n")
+           
+                    
+                # Write gff and ffn 
                 feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
 
                 tag_name = get_tag_value(feature['attribute'], 'Name')
                 fh_gff.write('\t'.join(feature.values())+"\n")
-
-                # feature_seq = contig_fa.fetch(contig, [int(feature['start']), int(feature['end'])])
-                #                 
-                
-
-                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
                 
                 if feature['strand'] == "+":
-                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                    feature_seq = contig_fa[contig][start-1:end].seq
                 else:
-                    # reverse complement the sequence
-                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
+                    # minus strand: reverse complement the sequence
+                    feature_seq = contig_fa[contig][start-1:end].antisense
 
-                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+                fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
 
-                # if feature['feature'] == "CDS":
-
-                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
-                    
-                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
-
+                
+def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
 
-# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+    protein_fa = pyfastx.Fasta(faa_file)
 
-#     protein_fa = pyfastx.Fasta(faa_file)
-#     all_names = [set(protein_fa.keys().filter())]
+    for contig, features in annotation_per_contigs:
+        
+        for feature in features:
+            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+
+            gff_id = get_tag_value(feature['attribute'], 'ID')
+            # ID in gff from prodigal is <contig_number>_<cds_number>
+            # seq name from prodigal is <contig_name>_<cds_number>
+            cds_number = gff_id.split('_')[-1]
+            cds_prodigal_id = f"{contig}_{cds_number}"
+            print(cds_prodigal_id, new_id)
+            print(protein_fa[cds_prodigal_id])
+            
+
+            
+            
+            input()
 
-    
-#     for contig, features in annotation_per_contigs:
         
 
-#     yield contig, features 
+    yield contig, features 
 
 
 def main():
@@ -242,7 +261,7 @@ def main():
     # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
-    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
     
 
 if __name__ == '__main__':
-- 
GitLab


From a4466b1b9005e06dfcca963b3e21f87d2b6d5b2d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:37:34 +0200
Subject: [PATCH 090/194] improve presentation string

---
 bin/merge_annotations.py | 41 ++++++++--------------------------------
 1 file changed, 8 insertions(+), 33 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index e6a5c59..91af848 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -3,10 +3,11 @@
 """
 Combine structural annotations made from different gff. 
 
-In case of collapsing annotations RNA annotation are prefered to CDS annotations.
+In case of collapsing annotations, RNA annotation are prefered to CDS annotations.
+Faa file from prodigal is processed to filter out overlapping sequences. 
 
 :Example:
-python template.py -v
+merge_annotations.py -c prodigal.gff -r barrnap.gff -t trnascan_se.gff --contig_seq contigs.fasta --faa_file prodigal.faa
 """
 
 # Metadata
@@ -37,14 +38,17 @@ def parse_arguments():
     parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
 
     parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
+    
+    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene sequence', required=True)
+
+    parser.add_argument('--faa_file', help='fasta file of protein sequences generated by prodigal.', required=True)
 
     parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
 
     parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
 
     parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
-    
-    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene annotations', required=True)
+
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -191,33 +195,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                 fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
 
-                
-def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
-
-    protein_fa = pyfastx.Fasta(faa_file)
-
-    for contig, features in annotation_per_contigs:
-        
-        for feature in features:
-            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
-
-            gff_id = get_tag_value(feature['attribute'], 'ID')
-            # ID in gff from prodigal is <contig_number>_<cds_number>
-            # seq name from prodigal is <contig_name>_<cds_number>
-            cds_number = gff_id.split('_')[-1]
-            cds_prodigal_id = f"{contig}_{cds_number}"
-            print(cds_prodigal_id, new_id)
-            print(protein_fa[cds_prodigal_id])
-            
-
-            
-            
-            input()
-
-        
-
-    yield contig, features 
-
 
 def main():
 
@@ -258,8 +235,6 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    # annotation_per_contigs = filter_faa_file(annotation_per_contigs, faa_file, out_faa)
-
     logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
     writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
     
-- 
GitLab


From 234a73a8e2552ad85539b385136cfda8c7f74971 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:40:52 +0200
Subject: [PATCH 091/194] clean script

---
 bin/merge_annotations.py | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 91af848..ac098de 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -212,13 +212,14 @@ def main():
     rrna_file  = args.rrna
     cds_file = args.cds
 
-    output_gff = args.gff_output
 
     fna_file = args.contig_seq
+    faa_file = args.faa_file
+
+    out_gff = args.gff_output
     out_ffn = args.ffn_output
     out_faa = args.faa_output
 
-    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
@@ -235,8 +236,8 @@ def main():
     logging.info('Merge CDS and RNA annotations by contig.')
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
-    logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
-    writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
+    logging.info(f'Writting CDS and RNA annotations to gff file: {out_gff}.')
+    writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
     
 
 if __name__ == '__main__':
-- 
GitLab


From 489a89f2689f5b32d181383aafca4b2e0c984744 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:45:55 +0200
Subject: [PATCH 092/194] add faa files into merging process

---
 modules/merge_annotations.nf        | 8 +++++---
 subworkflows/04_structural_annot.nf | 2 +-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
index 4cbbd82..12f37e8 100644
--- a/modules/merge_annotations.nf
+++ b/modules/merge_annotations.nf
@@ -2,14 +2,16 @@ process MERGE_ANNOTATIONS {
   tag "${meta.id}"
 
   input:
-    tuple val(meta), file(assembly_file), file(cds_gff), file(rrna_gff), file(trna_gff)
+    tuple val(meta), file(assembly_file), file(faa_file), file(cds_gff), file(rrna_gff), file(trna_gff)
 
   output:
+    
 
 
   script:
   """
-    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  --contig_seq $assembly_file \
-                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff 
+    merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  \
+                         --contig_seq $assembly_file --faa_file $faa_file \
+                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff --faa_output ${meta.sample}.faa 
   """
 }
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index e420d55..7ce7d5e 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -13,7 +13,7 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     TRNASCAN_SE( assembly )
 
 
-    annotations_ch = assembly.join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
+    annotations_ch = assembly.join(PRODIGAL.out.faa).join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
     annotations_ch.view()
 
-- 
GitLab


From 6c3fd0302ad08a7593e8bb9dd6252d0e9601d3cb Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 17:38:04 +0200
Subject: [PATCH 093/194] Generate report to plot stat in multiqc

---
 bin/merge_annotations.py            | 21 +++++++++++++++++++--
 main.nf                             |  8 ++++----
 modules/merge_annotations.nf        | 10 +++++++---
 subworkflows/04_structural_annot.nf | 11 ++++-------
 4 files changed, 34 insertions(+), 16 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index ac098de..d18ebd0 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -49,6 +49,9 @@ def parse_arguments():
 
     parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
 
+    parser.add_argument('--report_output', help='Prokka report like to be able to show annotations in multiqc.', default="annotation_report.txt")
+
+
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -154,7 +157,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
     contig_fa = pyfastx.Fasta(fna_file)
     protein_fa = pyfastx.Fasta(faa_file)
 
-
     with open(out_gff, 'w') as fh_gff, open(out_ffn, 'w') as fh_ffn, open(out_faa, 'w') as fh_faa:
 
         fh_gff.write("##gff-version  3\n")
@@ -194,6 +196,16 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
 
                 fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
+    # building prokka like report for multiqc
+    report = {"organism": "NA",
+            "contigs": len(contig_fa),
+            "bases": contig_fa.size }
+    report.update(gene_count)
+
+    return report
+
+
+
 
 
 def main():
@@ -219,6 +231,7 @@ def main():
     out_gff = args.gff_output
     out_ffn = args.ffn_output
     out_faa = args.faa_output
+    out_report = args.report_output
 
 
     logging.info('Parsing rRNA annoations.')
@@ -237,7 +250,11 @@ def main():
     annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {out_gff}.')
-    writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
+    report = writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
+    
+    with open(out_report, "w") as fl:
+        fl.write(''.join(f"{k}: {v}\n" for k,v in report.items()))
+
     
 
 if __name__ == '__main__':
diff --git a/main.nf b/main.nf
index cde0ad1..5184c2b 100644
--- a/main.nf
+++ b/main.nf
@@ -443,11 +443,11 @@ workflow {
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    // ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    // ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    // ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
+    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
+    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
     // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
-    // ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
     // ch_contigs_and_reads = ch_prokka_fna
     //     .join(ch_reads, remainder: true)
diff --git a/modules/merge_annotations.nf b/modules/merge_annotations.nf
index 12f37e8..c6481f6 100644
--- a/modules/merge_annotations.nf
+++ b/modules/merge_annotations.nf
@@ -1,17 +1,21 @@
 process MERGE_ANNOTATIONS {
+  publishDir "${params.outdir}/04_structural_annot/${meta.id}/", mode: 'copy'
   tag "${meta.id}"
 
   input:
     tuple val(meta), file(assembly_file), file(faa_file), file(cds_gff), file(rrna_gff), file(trna_gff)
 
   output:
-    
-
+    tuple val(meta), file("${meta.id}.gff"), emit: gff
+    tuple val(meta), file("${meta.id}.ffn"), emit: ffn
+    tuple val(meta), file("${meta.id}.faa"), emit: faa
+    path "${meta.id}.txt", emit: report
 
   script:
   """
     merge_annotations.py -c $cds_gff -r $rrna_gff -t $trna_gff -v  \
                          --contig_seq $assembly_file --faa_file $faa_file \
-                         --ffn_output ${meta.sample}.ffn  --gff_output ${meta.sample}.gff --faa_output ${meta.sample}.faa 
+                         --ffn_output ${meta.id}.ffn  --gff_output ${meta.id}.gff --faa_output ${meta.id}.faa \
+                         --report_output ${meta.id}.txt
   """
 }
\ No newline at end of file
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 7ce7d5e..e315dbd 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -28,14 +28,11 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
                                                                 TRNASCAN_SE.out.v_tRNAscan.first())
 
-    // RENAME_CONTIGS_AND_GENES(PROKKA.out.prokka_results)
-
   emit:
-    // report = PROKKA.out.report
-    // fna = RENAME_CONTIGS_AND_GENES.out.fna
-    // ffn = RENAME_CONTIGS_AND_GENES.out.ffn
-    // gff = RENAME_CONTIGS_AND_GENES.out.gff
-    // faa = RENAME_CONTIGS_AND_GENES.out.faa 
+    report = MERGE_ANNOTATIONS.out.report
+    ffn = MERGE_ANNOTATIONS.out.ffn
+    gff = MERGE_ANNOTATIONS.out.gff
+    faa = MERGE_ANNOTATIONS.out.faa
     // prot_length = RENAME_CONTIGS_AND_GENES.out.prot_length 
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From 268edc62bd1f29ee8cfdfb445dd10562c108fcb6 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 18:00:14 +0200
Subject: [PATCH 094/194] update multiqc config with new structural annotation
 method

---
 assets/hifi_multiqc_config.yaml | 92 +++++++++++++++++++++++++++++++++
 assets/multiqc_config.yaml      |  7 ++-
 2 files changed, 98 insertions(+), 1 deletion(-)
 create mode 100644 assets/hifi_multiqc_config.yaml

diff --git a/assets/hifi_multiqc_config.yaml b/assets/hifi_multiqc_config.yaml
new file mode 100644
index 0000000..c90beaa
--- /dev/null
+++ b/assets/hifi_multiqc_config.yaml
@@ -0,0 +1,92 @@
+report_comment: >
+    This report has been generated by the <a href="https://forgemia.inra.fr/genotoul-bioinfo/metagwgs" target="_blank">genotoul-bioinfo/metagwgs</a>
+    analysis pipeline. For information about how to interpret these results, please see the
+    <a href="https://forgemia.inra.fr/genotoul-bioinfo/metagwgs" target="_blank">documentation</a>.
+
+extra_fn_clean_trim:
+  - "hifi_"
+  - 'reads_'
+  - '.count_reads_on_contigs'
+  - '_scaffolds'
+  - '.txt'
+  - '.contigs'
+  - '.sort'
+  - "cleaned_"
+  - "raw_"
+  - '_kept_contigs'
+  - '.no_filter'
+  - '_kaiju_MEM_verbose'
+
+extra_fn_clean_exts:
+  - "_select_contigs_cpm"
+  - '.host_filter'
+
+module_order:
+    - fastqc:
+        name: 'FastQC (raw)'
+        path_filters_exclude:
+            - '*cleaned_*.zip'
+    - samtools:
+        name : 'Reads before host reads filter'
+        info: 'This section reports of the reads alignement against host genome.'
+        path_filters:
+            - '*.no_filter.flagstat'
+    - samtools:
+        name : 'Reads after host reads filter'
+        info: 'This section reports of the cleaned reads alignement against host genome.'
+        path_filters:
+            - '*.host_filter.flagstat'
+    - fastqc:
+        name: 'FastQC (cleaned)'
+        info: 'This section of the report shows FastQC after removing reads mapping the host genome.'
+        path_filters:
+            - '*cleaned_*.zip'
+    - kaiju
+    - quast:
+        name: 'Quast primary assembly'
+        info: 'This section of the report shows quast results after assembly.'
+        path_filters:
+            - '*quast_primary/*/report.tsv'
+    - quast:
+        name: 'Quast filtered assembly'
+        info: 'This section of the report shows quast results after assembly filtering.'
+        path_filters:
+            - '*quast_filtered/*/report.tsv'
+    - prokka:
+        name: 'Structural annotation'
+        info: 'This section of the report shows structural annotations results. CDS are predicted using Prodigal, rRNA using Barrnap and tRNA using tRNAscan-se.'
+    - featureCounts
+    - custom_content:
+        name: 'Binning results'
+        info: 'This section of the report shows quast results after binning the contigs into species genomes'
+        path_filters:
+            - '*mqc.tsv'
+
+report_section_order:
+  stats_table:
+    order: -1000
+  bins_quality:
+    order: -1010
+  bins_quality_count:
+    order: -1020
+  bins_quality_size:
+    order: -1030
+  binning_heatmap:
+    order: -1040
+  software_versions:
+    order: -1050
+    
+prokka_fn_snames: True
+prokka_table: True
+
+featurecounts:
+  fn: '*.summary'
+  shared: true
+
+table_columns_visible:
+  FastQC (raw):
+        percent_duplicates: False
+        percent_gc: False
+  Structural annotation:
+        organism: False
+
diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml
index fc5eb8e..06e9cdd 100644
--- a/assets/multiqc_config.yaml
+++ b/assets/multiqc_config.yaml
@@ -69,11 +69,14 @@ module_order:
         path_filters:
             - './final_assembly_flagstat/*'
     - prokka:
+        name: 'Structural annotation'
+        info: 'This section of the report shows structural annotations results. CDS are predicted using Prodigal, rRNA using Barrnap and tRNA using tRNAscan-se.'
         path_filters:
         - './prokka_report/*'
     - featureCounts:
         path_filters:
         - './featureCounts_report/*'
+            - '*.count_reads_on_contigs.flagstat'
     - custom_content:
         name: 'Binning results'
         info: 'This section of the report shows quast results after binning the contigs into species genomes'
@@ -106,11 +109,12 @@ featurecounts:
   fn: '*.summary'
   shared: true
 
+
 table_columns_visible:
   FastQC (raw):
         percent_duplicates: False
         percent_gc: False
-  prokka:
+  Structural annotation:
         organism: False
   Reads alignment on unfiltered assembly:
         mapped_passed_pct: True
@@ -141,3 +145,4 @@ table_columns_visible:
 #   - hide
 # show_hide_patterns:
 #   -  ["_R1", "_R2"]
+
-- 
GitLab


From 92f748f4d0398302cc4fc057552e409d29677847 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:16:21 +0200
Subject: [PATCH 095/194] rm prokka process and script

---
 bin/Rename_contigs_and_genes.py | 166 --------------------------------
 modules/prokka.nf               |  48 ---------
 2 files changed, 214 deletions(-)
 delete mode 100755 bin/Rename_contigs_and_genes.py
 delete mode 100644 modules/prokka.nf

diff --git a/bin/Rename_contigs_and_genes.py b/bin/Rename_contigs_and_genes.py
deleted file mode 100755
index 7d0e94d..0000000
--- a/bin/Rename_contigs_and_genes.py
+++ /dev/null
@@ -1,166 +0,0 @@
-#!/usr/bin/env python
-
-"""----------------------------------------------------------------------------------------------------------------------------------------------------------
-  Script Name: Rename_contigs_and_genes.py
-  Description: Rename contigs and genes in GFF, FAA and FFN
-               files generated by PROKKA.
-  Input files:
-               GFF, FAA and FFN files produced by PROKKA.
-  Created By:  Celine Noirot and Joanna Fourquet
-  Date:        2019-06-12
-----------------------------------------------------------------------------------------------------------------------------------------------------------
-"""
-
-# Metadata
-__author__ = 'Celine Noirot and Joanna Fourquet \
-- Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2019 INRA'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-# Status: dev
-
-# Modules importation
-try:
-    import argparse
-    from BCBio import GFF
-    from Bio.Seq import Seq
-    from Bio.SeqRecord import SeqRecord
-    from Bio.SeqFeature import SeqFeature, FeatureLocation
-    import pprint
-    from BCBio.GFF import GFFExaminer
-    from Bio import SeqIO
-except ImportError as error:
-    print(error)
-    exit(1)
-
-# Manage parameters
-parser = argparse.ArgumentParser(description = \
-'Script which rename contigs and genes in GFF, FAA and FFN files generated by PROKKA.')
-parser.add_argument('-f', '--file', required = True, help = \
-'GFF file generated by PROKKA.')
-parser.add_argument('-faa', '--fastaFile', required = True, \
-help = 'Fasta of predicted sequence (aa) generated by PROKKA (FAA).')
-parser.add_argument('-ffn', '--ffnFile', required = True, \
-help = 'Fasta of predicted sequence (nuc) generated by PROKKA (FFN).')
-parser.add_argument('-fna', '--fnaFile', required = True, \
-help = 'Fasta of contigs generated by PROKKA.')
-parser.add_argument('-p', '--prefix', required = True, \
-help = 'Contig name prefix.')
-parser.add_argument('-oGFF', '--outGFFFile', required = True, \
-help = 'Name of output GFF file.')
-parser.add_argument('-oFAA', '--outFAAFile', required = True, \
-help = 'Filename of renamed predicted fasta sequences (aa).')
-parser.add_argument('-oFFN', '--outFFNFile', required = True, \
-help = 'Filename of renamed predicted fasta sequences (nuc).')
-parser.add_argument('-oFNA', '--outFNAFile', required = True, \
-help = 'Filename of renamed contig sequences (nuc).')
-parser.add_argument('-oprottable', '--outProtein', default = "protein_table.csv", \
-help = 'Filename for protein names correspondance table.')
-parser.add_argument('-oconttable', '--outContig', default = "contig_table.csv", \
-help = 'Filename for contig names correspondance table.')
-args = parser.parse_args()
-
-
-# Variable names informations:
-# prot: corresponds to proteins
-# ctg: corresponds to contigs
-
-# Variables initialization.
-prot_names = {}
-contig_renames = {}
-ctg_prefix = args.prefix
-prot_prefix = "Prot_"
-to_write = []
-# lecture fna
-#remplissage 
-#contig_renames [ald_name]=newname
-#reecriture du fasta
-
-with open(args.fnaFile, "r") as fnaFile,\
-    open(args.outFNAFile, "w") as outFNA_handle:
-    for record in SeqIO.parse(fnaFile, "fasta"):
-        try :
-            old_ctg_name = record.id
-            new_ctg_name = ctg_prefix + "_c" + old_ctg_name.split("_")[-1]
-            contig_renames[old_ctg_name] = new_ctg_name
-            record.id = contig_renames[old_ctg_name]
-            record.description = record.description.replace(old_ctg_name,"")
-            SeqIO.write(record, outFNA_handle, "fasta")
-        except :
-            print ("Warning FNA file : contig " + record.id + " discarded, no new name defined")
-            pass
-    
-with open(args.file) as gffFile,\
-    open(args.outGFFFile, "w") as out_handle,\
-    open(args.outProtein, "w") as fh_prot_table,\
-    open(args.outContig, "w") as fh_cont_table,\
-    open(args.outContig + ".sed", "w") as fh_cont_sed:
-    for rec in GFF.parse(gffFile):
-        # Access to contig id
-        old_ctg_name = rec.id
-        new_ctg_name = contig_renames[old_ctg_name]
-        rec.id = new_ctg_name
-
-        fh_cont_table.write(old_ctg_name + "\t" + new_ctg_name + "\n")
-        fh_cont_sed.write("s/" + old_ctg_name + "/" + new_ctg_name + "/\n")
-        # Access to features
-        for f_index,feature in enumerate(rec.features):
-            if(not(feature.qualifiers['source'][0].startswith("minced"))):
-                #Generate correspondance
-                old_prot_name = feature.qualifiers['ID'][0].replace("_gene","")
-                prot_number =  old_prot_name.split("_")[-1]
-                
-                subfeat_types = {subfeat.type for subfeat in feature.sub_features}
-                assert len(subfeat_types) == 1, f'Subfeature have different types {subfeat_types}' 
-                subfeat_type = subfeat_types.pop()
-
-
-                new_prot_name = f"{new_ctg_name}.{subfeat_type}_{prot_number}"
-                prot_names[old_prot_name] = new_prot_name
-                fh_prot_table.write(old_prot_name + "\t" + new_prot_name + "\n")
-
-                #Initialize field of "gene" feature (the parent)
-                rec.features[f_index].qualifiers["ID"] = new_prot_name + "_gene"
-                rec.features[f_index].qualifiers["locus_tag"] = [new_prot_name]
-
-                #Annotations (not prokka lines) are in sub_features
-                for fsub_index,sub_feature in enumerate(feature.sub_features):
-                    # Update ID
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["ID"] = new_prot_name
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["Parent"] = []
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["locus_tag"] = [new_prot_name]
-                    rec.features[f_index].sub_features[fsub_index].qualifiers["protein_id"] = [new_prot_name]
-        to_write.append(rec)
-
-    #Write only one time
-    #print (to_write)
-    GFF.write(to_write, out_handle)
-
-
-with open(args.fastaFile, "r") as handle,\
-    open(args.outFAAFile, "w") as outFasta_handle:
-    for record in SeqIO.parse(handle, "fasta"):
-        try :
-            old = record.id
-            record.id = prot_names[record.id]
-            record.description = record.description.replace(old + " ","")
-            SeqIO.write(record, outFasta_handle, "fasta")
-        except :
-            print ("Warning FAA file : protein " + record.id + " discarded, no new name defined")
-            pass
-
-
-with open(args.ffnFile, "r") as handle,\
-    open(args.outFFNFile, "w") as outFFN_handle:
-    for record in SeqIO.parse(handle, "fasta"):
-        try :
-            old = record.id
-            record.id = prot_names[record.id]
-            record.description = record.description.replace(old + " ","")
-            SeqIO.write(record, outFFN_handle, "fasta")
-        except :
-            print ("Warning FFN file : protein " + record.id + " discarded, no new name defined")
-            pass
diff --git a/modules/prokka.nf b/modules/prokka.nf
deleted file mode 100644
index 6fbd538..0000000
--- a/modules/prokka.nf
+++ /dev/null
@@ -1,48 +0,0 @@
-process PROKKA {
-  tag "${meta.id}"
-
-  input:
-  tuple val(meta), file(assembly_file)
-
-   output:
-   tuple val(meta), path("PROKKA_${meta.id}"), emit: prokka_results
-   path "PROKKA_${meta.id}/${meta.id}.txt", emit: report
-   path "v_prokka.txt", emit: v_prokka
-
-  script:
-  """
-  prokka --metagenome --noanno --rawproduct --outdir PROKKA_${meta.id} --prefix ${meta.id} ${assembly_file} --centre X --compliant --cpus ${task.cpus}
-  rm PROKKA_${meta.id}/*.gbk
-  gt gff3validator PROKKA_${meta.id}/${meta.id}.gff 
-
-  prokka -v &> v_prokka.txt
-  """
-}
-
-process RENAME_CONTIGS_AND_GENES {
-  tag "${meta.id}"
-  publishDir "${params.outdir}/04_structural_annot", mode: 'copy'
-  label 'PYTHON'
-
-  input:
-    tuple val(meta), path(prokka_results)
-
-  output:
-    tuple val(meta), path("${meta.id}.annotated.fna"), emit: fna
-    tuple val(meta), path("${meta.id}.annotated.ffn"), emit: ffn
-    tuple val(meta), path("${meta.id}.annotated.faa"), emit: faa
-    tuple val(meta), path("${meta.id}.annotated.gff"), emit: gff
-    tuple val(meta), path("${meta.id}_prot.len"), emit: prot_length
-  
-  script:
-  """
-  grep "^gnl" ${prokka_results}/${meta.id}.gff > ${meta.id}_only_gnl.gff
-  
-  Rename_contigs_and_genes.py -f ${meta.id}_only_gnl.gff -faa ${prokka_results}/${meta.id}.faa \
-                              -ffn ${prokka_results}/${meta.id}.ffn -fna ${prokka_results}/${meta.id}.fna \
-                              -p ${meta.id} -oGFF ${meta.id}.annotated.gff -oFAA ${meta.id}.annotated.faa \
-                              -oFFN ${meta.id}.annotated.ffn -oFNA ${meta.id}.annotated.fna
-                              
-  samtools faidx ${meta.id}.annotated.faa; cut -f 1,2 ${meta.id}.annotated.faa.fai > ${meta.id}_prot.len
-  """
-}
-- 
GitLab


From a156b1efc0b9e7b0ccf39f0db3d18a388f69c18b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:18:32 +0200
Subject: [PATCH 096/194] rm conf of removed process

---
 conf/base.config | 7 -------
 conf/test.config | 7 -------
 2 files changed, 14 deletions(-)

diff --git a/conf/base.config b/conf/base.config
index 607ae05..dd61115 100644
--- a/conf/base.config
+++ b/conf/base.config
@@ -58,13 +58,6 @@ process {
         memory = { 8.GB * task.attempt }
         cpus = 4
     }
-    withName: PROKKA {
-        memory = { 45.GB * task.attempt }
-        cpus = 8
-    }
-    withName: RENAME_CONTIGS_AND_GENES {
-        memory = { 20.GB * task.attempt }
-    }
     withLabel: CD_HIT {
         memory = { 50.GB * task.attempt }
         cpus = 16
diff --git a/conf/test.config b/conf/test.config
index 710b959..ae50b57 100644
--- a/conf/test.config
+++ b/conf/test.config
@@ -49,13 +49,6 @@ process {
         memory = { 1.GB * task.attempt }
         cpus = 2
     }
-    withName: PROKKA {
-        memory = { 1.GB * task.attempt }
-        cpus = 1
-    }
-    withName: RENAME_CONTIGS_AND_GENES {
-        memory = { 1.GB * task.attempt }
-    }
     withLabel: CD_HIT {
         memory = { 16.GB * task.attempt }
         cpus = 2
-- 
GitLab


From 8ac5c403aab4dcf62e4736bcfc1fb95063ec5102 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:38:45 +0200
Subject: [PATCH 097/194] simple script to rename contigs with sample and
 contig number

---
 modules/rename_contigs.nf | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
new file mode 100644
index 0000000..e69de29
-- 
GitLab


From 358893f4035ed7f786f6e32aaea2c21fdb7d838b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:39:13 +0200
Subject: [PATCH 098/194] make script exec

---
 bin/rename_contigs.py | 71 +++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 71 insertions(+)
 create mode 100755 bin/rename_contigs.py

diff --git a/bin/rename_contigs.py b/bin/rename_contigs.py
new file mode 100755
index 0000000..0734c9c
--- /dev/null
+++ b/bin/rename_contigs.py
@@ -0,0 +1,71 @@
+#!/usr/bin/env python3
+
+"""
+Rename assembly contigs.
+
+Rename contig as <sample_name>_c<contig_number>
+
+:Example:
+rename_contigs.py -h
+"""
+
+# Metadata
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2020 INRAE'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter, FileType
+import logging
+import gzip
+import csv
+from collections import defaultdict
+import pyfastx
+from Bio.Seq import Seq
+
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument('-s', '--sample', help='Sample name used to rename contigs.', required=True)
+    
+    parser.add_argument('-i', '--fna_file', help='Original fasta file of contigs.', required=True)
+
+    parser.add_argument('-o', '--out_fna', help='Output fasta file with renamed contigs.', required=True)
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+
+
+def main():
+
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+    sample = args.sample    
+    fna_file = args.fna_file
+    out_fna = args.out_fna
+
+
+    logging.info(f'Writting renamed fasta file in {out_fna}')
+    with open(out_fna, "w") as fh_fna:
+        for i, (_, seq) in enumerate(pyfastx.Fasta(fna_file, build_index=False)):
+            fh_fna.write(f'>{sample}_c{i+1}\n{seq}\n')
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
-- 
GitLab


From 28d6f34f96d43ac42533df61fb6be28c7b281664 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:42:47 +0200
Subject: [PATCH 099/194] call RENAME_CONTIGS process

---
 modules/assembly.nf | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/modules/assembly.nf b/modules/assembly.nf
index b8f9d35..41db2c5 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -107,3 +107,20 @@ process METAFLYE {
   """
 }
 
+process RENAME_CONTIGS {
+  tag "${meta.id}"
+  publishDir "${params.outdir}/02_assembly/", mode: 'copy'
+  label 'PYTHON'
+
+  input:
+    tuple val(meta), path(assembly)
+
+  output:
+    tuple val(meta), path("${meta.id}.fna"), emit: fna
+
+  script:
+  """
+    rename_contigs.py --sample ${meta.id}  --fna_file $assembly --out_fna ${meta.id}.fna -v
+
+  """
+}
\ No newline at end of file
-- 
GitLab


From 752a97b7d82d56250603cb50e6b7c01e12cfc4cc Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:50:28 +0200
Subject: [PATCH 100/194] call RENAME_CONTIGS in 02_assembly

---
 modules/rename_contigs.nf   | 0
 subworkflows/02_assembly.nf | 9 +++++----
 2 files changed, 5 insertions(+), 4 deletions(-)
 delete mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
deleted file mode 100644
index e69de29..0000000
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 8411728..0101234 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -1,4 +1,4 @@
-include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE } from '../modules/assembly'
+include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; RENAME_CONTIGS } from '../modules/assembly'
 include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
@@ -47,7 +47,8 @@ workflow STEP_02_ASSEMBLY {
         }
     }
     
-    ASSEMBLY_QUAST( ch_assembly,"02_assembly/quast_primary")
+    ch_assembly_renamed = RENAME_CONTIGS(ch_assembly)
+    ASSEMBLY_QUAST( ch_assembly_renamed,"02_assembly/quast_primary")
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
 
@@ -57,7 +58,7 @@ workflow STEP_02_ASSEMBLY {
     ch_flagstat = Channel.empty()
     ch_reads = reads
 
-    ch_contigs_and_reads = ch_assembly.join(ch_reads, remainder: true)
+    ch_contigs_and_reads = ch_assembly_renamed.join(ch_reads, remainder: true)
     if ( params.type.toUpperCase() == "SR" ) {
       READS_DEDUPLICATION ( ch_contigs_and_reads )
       ch_dedup = READS_DEDUPLICATION.out.dedup
@@ -88,7 +89,7 @@ workflow STEP_02_ASSEMBLY {
 
 
   emit:
-    assembly = ch_assembly
+    assembly = ch_assembly_renamed
     dedup = ch_dedup
     idxstats = ch_idxstats
     flagstat = ch_flagstat
-- 
GitLab


From 477d5fac8ed6ce58102d0a40ceadd923c4a3c681 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 12:21:20 +0200
Subject: [PATCH 101/194] simplify quast report channel

---
 main.nf              | 13 ++++++++-----
 modules/metaquast.nf |  2 +-
 2 files changed, 9 insertions(+), 6 deletions(-)

diff --git a/main.nf b/main.nf
index 5184c2b..fd9fffe 100644
--- a/main.nf
+++ b/main.nf
@@ -404,12 +404,16 @@ workflow {
       /////////////////////
 
     S02_ASSEMBLY ( ch_preprocessed_reads, ch_assembly, has_assembly, assembly_tool )
+
     ch_assembly = S02_ASSEMBLY.out.assembly
-    ch_reads = S02_ASSEMBLY.out.dedup
+    ch_reads = S02_ASSEMBLY.out.reads
+
+
     ch_idxstats = S02_ASSEMBLY.out.idxstats
+    
     ch_unfilter_assembly_flagstat_report = S02_ASSEMBLY.out.flagstat
-    ch_quast = S02_ASSEMBLY.out.assembly_report
-    ch_quast_before_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+
+    ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
     ch_software_versions_S02 = S02_ASSEMBLY.out.software_versions
   }
 
@@ -429,8 +433,7 @@ workflow {
         ch_min_contigs_cpm
     )
     ch_assembly = S03_FILTERING.out.selected
-    ch_quast = S03_FILTERING.out.report
-    ch_quast_after_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+    ch_quast_after_filter_report = S03_FILTERING.out.report
     
   }
 
diff --git a/modules/metaquast.nf b/modules/metaquast.nf
index dbaa508..dee90d5 100644
--- a/modules/metaquast.nf
+++ b/modules/metaquast.nf
@@ -9,7 +9,7 @@ process QUAST {
 
     output:
         path "${outdir}/${meta.id}/*", emit: all
-        tuple val(meta), path ("${outdir}/${meta.id}/report.tsv"), emit: report
+        path "${outdir}/${meta.id}/report.tsv", emit: report
         path "v_quast.txt", emit: v_quast
 
     script:
-- 
GitLab


From 3be023ffc1214fd90b7ffb2bb188e8567d1cdb66 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:30:19 +0200
Subject: [PATCH 102/194] clean subworkflow STEP_04_STRUCTURAL_ANNOT

---
 subworkflows/04_structural_annot.nf | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index e315dbd..edac18e 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -12,19 +12,13 @@ workflow STEP_04_STRUCTURAL_ANNOT {
     BARRNAP( assembly )
     TRNASCAN_SE( assembly )
 
-
     annotations_ch = assembly.join(PRODIGAL.out.faa).join(PRODIGAL.out.gff).join(BARRNAP.out.gff)
                                               .join(TRNASCAN_SE.out.gff)
-    annotations_ch.view()
-
-
 
     MERGE_ANNOTATIONS(annotations_ch)
 
-
     ch_software_versions = PRODIGAL.out.v_prodigal.first()
 
-
     ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
                                                                 TRNASCAN_SE.out.v_tRNAscan.first())
 
-- 
GitLab


From 6b29a57c4bbf8e98756781291852450bcdf5e056 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:34:12 +0200
Subject: [PATCH 103/194] reorganise deduplication process

---
 main.nf                        |  2 +-
 modules/reads_deduplication.nf | 43 ++++++++++++++++++++--------------
 subworkflows/02_assembly.nf    | 20 ++++++++++------
 3 files changed, 39 insertions(+), 26 deletions(-)

diff --git a/main.nf b/main.nf
index fd9fffe..bba6ea7 100644
--- a/main.nf
+++ b/main.nf
@@ -407,7 +407,7 @@ workflow {
 
     ch_assembly = S02_ASSEMBLY.out.assembly
     ch_reads = S02_ASSEMBLY.out.reads
-
+    ch_bam = S02_ASSEMBLY.out.bam
 
     ch_idxstats = S02_ASSEMBLY.out.idxstats
     
diff --git a/modules/reads_deduplication.nf b/modules/reads_deduplication.nf
index b64df7c..4731f9b 100644
--- a/modules/reads_deduplication.nf
+++ b/modules/reads_deduplication.nf
@@ -1,38 +1,45 @@
 process READS_DEDUPLICATION {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly", mode: 'copy', pattern: '*.fastq.gz'
-  publishDir "${params.outdir}/02_assembly/logs", mode: 'copy', pattern: '*.idxstats'
-  publishDir "${params.outdir}/02_assembly/logs", mode: 'copy', pattern: '*.flagstat'
+  publishDir "${params.outdir}/02_assembly/deduplicated_reads/", mode: 'copy', pattern: '*.fastq.gz'
+  publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.fastq.gz'
   
   input:
   tuple val(meta), path(assembly), path(reads)
 
   output:
-  tuple val(meta), path("${meta.id}*_dedup.fastq.gz"), emit: dedup
-  tuple val(meta), path("${meta.id}.count_reads_on_contigs.idxstats"), emit: idxstats
+  tuple val(meta), path("${meta.id}*_dedup.fastq.gz"), emit: dedup_reads
+  tuple val(meta), path("${meta.id}.bam"), path("${meta.id}.bam.bai"), emit: bam
+  
   path "${meta.id}_singletons.fastq.gz", emit: singletons
-  path "${meta.id}.count_reads_on_contigs.flagstat", emit: flagstat
+
   path "v_bwa.txt", emit: v_bwa_mem2
   path "v_samtools.txt", emit: v_samtools
 
   script:
   """
-  mkdir logs
+  # Align reads against assembly
   bwa-mem2 index ${assembly} -p ${assembly}
-  bwa-mem2 mem ${assembly} ${reads[0]} ${reads[1]} | samtools view -bS - | samtools sort -n -o ${meta.id}.sort.bam -
-  samtools fixmate -m ${meta.id}.sort.bam ${meta.id}.fixmate.bam
-  samtools sort -o ${meta.id}.fixmate.positionsort.bam ${meta.id}.fixmate.bam
-  samtools markdup -r -S -s -f ${meta.id}.stats ${meta.id}.fixmate.positionsort.bam ${meta.id}.filtered.bam
-  samtools index ${meta.id}.filtered.bam 
-  samtools idxstats ${meta.id}.filtered.bam  > ${meta.id}.count_reads_on_contigs.idxstats
-  samtools flagstat ${meta.id}.filtered.bam  > ${meta.id}.count_reads_on_contigs.flagstat
-  samtools sort -n -o ${meta.id}.filtered.sort.bam ${meta.id}.filtered.bam 
-  samtools fastq -N -s ${meta.id}_singletons.fastq.gz -1 ${meta.id}_R1_dedup.fastq.gz -2 ${meta.id}_R2_dedup.fastq.gz ${meta.id}.filtered.sort.bam 
+  bwa-mem2 mem -t ${task.cpus}  ${assembly} ${reads[0]} ${reads[1]} | samtools view -@ ${task.cpus} -bS - | samtools sort -@ ${task.cpus} -n -o ${meta.id}.sort.bam -
+  
+  # Identify and removed duplicated reads from the bam file
+  samtools fixmate -@ ${task.cpus} -m ${meta.id}.sort.bam ${meta.id}.fixmate.bam
+  samtools sort -@ ${task.cpus} -o ${meta.id}.fixmate.positionsort.bam ${meta.id}.fixmate.bam
+  samtools markdup -@ ${task.cpus}  -r -S -s -f ${meta.id}.stats ${meta.id}.fixmate.positionsort.bam ${meta.id}.filtered.bam
+  
+  # final bam file without duplicated reads
+  samtools sort -@ ${task.cpus} -o ${meta.id}.bam ${meta.id}.filtered.bam
+  samtools index -@ ${task.cpus}  ${meta.id}.bam 
+
+  # Get deduplicated reads
+  samtools sort -@ ${task.cpus}  -n -o ${meta.id}.filtered.n_sorted.bam ${meta.id}.bam  
+  samtools fastq -@ ${task.cpus}  -N -s ${meta.id}_singletons.fastq.gz -1 ${meta.id}_R1_dedup.fastq.gz -2 ${meta.id}_R2_dedup.fastq.gz ${meta.id}.filtered.n_sorted.bam 
+  
+  # clean directory
   rm ${meta.id}.sort.bam
   rm ${meta.id}.fixmate.bam
   rm ${meta.id}.fixmate.positionsort.bam
-  rm ${meta.id}.filtered.bam 
-  rm ${meta.id}.filtered.sort.bam
+  rm ${meta.id}.filtered.n_sorted.bam
+  rm ${meta.id}.filtered.bam
 
 
   bwa-mem2 version > v_bwa.txt
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 0101234..6f6141e 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -52,26 +52,31 @@ workflow STEP_02_ASSEMBLY {
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
 
-    ch_dedup = Channel.empty() 
     ch_idxstats = Channel.empty()
-    ch_dedup_report = Channel.empty()
     ch_flagstat = Channel.empty()
     ch_reads = reads
 
     ch_contigs_and_reads = ch_assembly_renamed.join(ch_reads, remainder: true)
     if ( params.type.toUpperCase() == "SR" ) {
+
       READS_DEDUPLICATION ( ch_contigs_and_reads )
-      ch_dedup = READS_DEDUPLICATION.out.dedup
-      ch_idxstats = READS_DEDUPLICATION.out.idxstats
-      ch_flagstat = READS_DEDUPLICATION.out.flagstat
+      
+      ch_reads = READS_DEDUPLICATION.out.dedup_reads
+      ch_bam = READS_DEDUPLICATION.out.bam
+
+      SAMTOOLS(ch_bam, "02_assembly")
+      ch_idxstats = SAMTOOLS.out.sam_idxstat
+      ch_flagstat = SAMTOOLS.out.sam_flagstat
 
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
       ch_samtools_v = READS_DEDUPLICATION.out.v_samtools
+      
     } else {
-      ch_dedup = ch_reads
+
       if (!params.skip_filtering) { 
         MINIMAP2(ch_contigs_and_reads,"02_assembly")
         ch_bam = MINIMAP2.out.bam
+
         SAMTOOLS(ch_bam, "02_assembly")
         ch_idxstats  = SAMTOOLS.out.sam_idxstat
         ch_flagstat =  SAMTOOLS.out.sam_flagstat
@@ -90,7 +95,8 @@ workflow STEP_02_ASSEMBLY {
 
   emit:
     assembly = ch_assembly_renamed
-    dedup = ch_dedup
+    reads = ch_reads
+    bam = ch_bam
     idxstats = ch_idxstats
     flagstat = ch_flagstat
     assembly_report = ch_assembly_report
-- 
GitLab


From a24c26d4b4c18fcfc8c15451e05051c9c93eaf82 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:35:00 +0200
Subject: [PATCH 104/194] correct typo in multiqc_config

---
 assets/multiqc_config.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml
index 06e9cdd..c24c305 100644
--- a/assets/multiqc_config.yaml
+++ b/assets/multiqc_config.yaml
@@ -75,7 +75,7 @@ module_order:
         - './prokka_report/*'
     - featureCounts:
         path_filters:
-        - './featureCounts_report/*'
+            - './featureCounts_report/*'
             - '*.count_reads_on_contigs.flagstat'
     - custom_content:
         name: 'Binning results'
-- 
GitLab


From 6959b9bd702a1e6800ad2805ced05f36e83d72ec Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:37:21 +0200
Subject: [PATCH 105/194] rm tax plot made from prot length

---
 bin/aln2taxaffi.py                | 15 ++++++++-------
 main.nf                           |  4 +---
 subworkflows/07_taxonomic_affi.nf |  2 --
 3 files changed, 9 insertions(+), 12 deletions(-)

diff --git a/bin/aln2taxaffi.py b/bin/aln2taxaffi.py
index 5c85116..241d836 100755
--- a/bin/aln2taxaffi.py
+++ b/bin/aln2taxaffi.py
@@ -597,13 +597,14 @@ def main():
             logging.debug(contig_affi_line)
 
 
-
-    with open(query_length_file) as fl:
-        nb_total_prot = len([line for line in fl])
-
-    nb_prot_annotated = len(matches)
-    plot_taxonomic_assignment(
-          output_name, count_rank_affiliation_protein,  count_rank_affiliation_contig, nb_total_prot, nb_prot_annotated, nb_prot_assigned)
+    if query_length_file:
+        logging.debug("Plot taxonomic affiliation using protein lengths.")
+        with open(query_length_file) as fl:
+            nb_total_prot = len([line for line in fl])
+
+        nb_prot_annotated = len(matches)
+        plot_taxonomic_assignment(
+            output_name, count_rank_affiliation_protein,  count_rank_affiliation_contig, nb_total_prot, nb_prot_annotated, nb_prot_assigned)
 
     if args.write_top_taxons:
         top_taxon_columns = ['contig', ] + main_ranks
diff --git a/main.nf b/main.nf
index bba6ea7..75c9f7b 100644
--- a/main.nf
+++ b/main.nf
@@ -442,7 +442,6 @@ workflow {
   ch_prokka_faa = Channel.empty()
   ch_prokka_gff = Channel.empty()
   ch_prokka_fna = Channel.empty()
-  ch_prot_length = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
@@ -454,7 +453,6 @@ workflow {
 
     // ch_contigs_and_reads = ch_prokka_fna
     //     .join(ch_reads, remainder: true)
-    // ch_prot_length = S04_STRUCTURAL_ANNOT.out.prot_length
 
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
     // exit 0, 'Exit now... S04_STRUCTURAL_ANNOT being constructed ' 
@@ -487,7 +485,7 @@ workflow {
   }
 
 	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi ) {
-		S07_TAXO_AFFI ( ch_taxonomy, ch_m8, ch_sam_coverage, ch_prot_length)
+		S07_TAXO_AFFI ( ch_taxonomy, ch_m8, ch_sam_coverage)
 
     ch_software_versions_S07 = S07_TAXO_AFFI.out.software_versions
 	}
diff --git a/subworkflows/07_taxonomic_affi.nf b/subworkflows/07_taxonomic_affi.nf
index d1042c0..8eb2640 100644
--- a/subworkflows/07_taxonomic_affi.nf
+++ b/subworkflows/07_taxonomic_affi.nf
@@ -7,10 +7,8 @@ workflow STEP_07_TAXO_AFFI {
         taxonomy
         diamond_result // channel: [ val(meta), path(diamond_file) ]
         sam_coverage // channel: [ val(meta), path(samtools coverage) ]
-        prot_length  // channel: [ val(meta), path(prot_length) ]
     main:
         ch_assign_taxo_input = diamond_result.join(sam_coverage, remainder: true)
-                                             .join(prot_length, remainder: true)
 
         ASSIGN_TAXONOMY ( taxonomy, ch_assign_taxo_input )
 
-- 
GitLab


From ce2b34a68b8ad729937075c10b6f53eceb2fe8da Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:51:34 +0200
Subject: [PATCH 106/194] Add barrnap module see issue #163

---
 modules/barnap.nf | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 modules/barnap.nf

diff --git a/modules/barnap.nf b/modules/barnap.nf
new file mode 100644
index 0000000..0b88b76
--- /dev/null
+++ b/modules/barnap.nf
@@ -0,0 +1,18 @@
+process PRODIGAL {
+  tag "${meta.id}"
+
+  input:
+    tuple val(meta), file(assembly_file)
+
+  output:
+    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
+    path "v_barrnap.txt", emit: v_barrnap
+
+  script:
+  """
+    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
+
+    barrnap --version  2> v_barrnap.txt
+
+  """
+}
-- 
GitLab


From 1babda4552acea64b0bb7a5a65b205c03cd818fe Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 15:55:34 +0200
Subject: [PATCH 107/194] fix module name

---
 modules/barnap.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/barnap.nf b/modules/barnap.nf
index 0b88b76..302ab6d 100644
--- a/modules/barnap.nf
+++ b/modules/barnap.nf
@@ -1,4 +1,4 @@
-process PRODIGAL {
+process BARRNAP {
   tag "${meta.id}"
 
   input:
-- 
GitLab


From 151754bd209f6a99c0f6dbb359cc09e4f8ff8c32 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 17 Oct 2022 16:18:15 +0200
Subject: [PATCH 108/194] fix typo in barrnap name module

---
 modules/barnap.nf | 18 ------------------
 1 file changed, 18 deletions(-)
 delete mode 100644 modules/barnap.nf

diff --git a/modules/barnap.nf b/modules/barnap.nf
deleted file mode 100644
index 302ab6d..0000000
--- a/modules/barnap.nf
+++ /dev/null
@@ -1,18 +0,0 @@
-process BARRNAP {
-  tag "${meta.id}"
-
-  input:
-    tuple val(meta), file(assembly_file)
-
-  output:
-    tuple val(meta), path("barrnap.gff"), emit: barrnap_gff
-    path "v_barrnap.txt", emit: v_barrnap
-
-  script:
-  """
-    barrnap -o barrnap.gff --threads ${task.cpus} ${assembly_file} 
-
-    barrnap --version  2> v_barrnap.txt
-
-  """
-}
-- 
GitLab


From 8abe7cc667af0f1a18613c2abd22bbb59b47b080 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 18:03:14 +0200
Subject: [PATCH 109/194] Add process and script to merge gff annotations issue
 #163

---
 bin/merge_annotations.py | 1 -
 1 file changed, 1 deletion(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index d18ebd0..8c0b3c1 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -126,7 +126,6 @@ def remove_overlapping_cds(cds_file, contig2rnas):
     yield current_contig, contig_annotations
 
 def merging_cds_and_rna(cds_per_contig, contig2rnas):
-
     contig_processed = []
     for contig, cds_features in cds_per_contig:
         contig_processed.append(contig)
-- 
GitLab


From 98ce3bb83f1bef6ea86fe0bd686023c6ecb79cb0 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 19 Oct 2022 19:01:45 +0200
Subject: [PATCH 110/194] add ffn output on top of gff output

---
 bin/merge_annotations.py | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 8c0b3c1..07e262b 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -233,6 +233,9 @@ def main():
     out_report = args.report_output
 
 
+    fna_file = args.contig_seq
+    out_ffn = args.ffn_output
+
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
 
@@ -256,5 +259,6 @@ def main():
 
     
 
+
 if __name__ == '__main__':
     main()
\ No newline at end of file
-- 
GitLab


From f85abbb97106324d34a44a8c26b8d939b4ab6ee9 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 13:37:32 +0200
Subject: [PATCH 111/194] fix strand and zero base position when extracting seq

---
 bin/merge_annotations.py | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 07e262b..4353fa7 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -126,6 +126,7 @@ def remove_overlapping_cds(cds_file, contig2rnas):
     yield current_contig, contig_annotations
 
 def merging_cds_and_rna(cds_per_contig, contig2rnas):
+
     contig_processed = []
     for contig, cds_features in cds_per_contig:
         contig_processed.append(contig)
@@ -205,6 +206,34 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
 
 
 
+                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
+                
+                if feature['strand'] == "+":
+                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                else:
+                    # reverse complement the sequence
+                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
+
+                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+
+
+                # if feature['feature'] == "CDS":
+
+                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
+                    
+                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
+
+
+# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+
+#     protein_fa = pyfastx.Fasta(faa_file)
+#     all_names = [set(protein_fa.keys().filter())]
+
+    
+#     for contig, features in annotation_per_contigs:
+        
+
+#     yield contig, features 
 
 
 def main():
@@ -235,6 +264,9 @@ def main():
 
     fna_file = args.contig_seq
     out_ffn = args.ffn_output
+    out_faa = args.faa_output
+
+    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
@@ -259,6 +291,9 @@ def main():
 
     
 
+    logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
+    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    
 
 if __name__ == '__main__':
     main()
\ No newline at end of file
-- 
GitLab


From 6de5436e9abfe55f637fa11e0f49b60c42c4b5ac Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:35:49 +0200
Subject: [PATCH 112/194] add faa file filtering from prodigal

---
 bin/merge_annotations.py | 43 ++++++++++++++++++++++++----------------
 1 file changed, 26 insertions(+), 17 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 4353fa7..edc12b6 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -209,31 +209,40 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                 start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
                 
                 if feature['strand'] == "+":
-                    feature_seq = contig_fa[contig][start_zero:end_zero].seq
+                    feature_seq = contig_fa[contig][start-1:end].seq
                 else:
-                    # reverse complement the sequence
-                    feature_seq = contig_fa[contig][start_zero:end_zero].antisense
-
-                fh_ffn.write(f">{new_id} {tag_name}\n{feature_seq}\n")
+                    # minus strand: reverse complement the sequence
+                    feature_seq = contig_fa[contig][start-1:end].antisense
 
+                fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
-                # if feature['feature'] == "CDS":
-
-                #     aa_seq = Seq(feature_seq).translate(table=translation_table, cds=True)
-                    
-                #     fh_faa.write(f'>{new_id}\n{aa_seq}\n')
 
+                
+def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
 
-# def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
+    protein_fa = pyfastx.Fasta(faa_file)
 
-#     protein_fa = pyfastx.Fasta(faa_file)
-#     all_names = [set(protein_fa.keys().filter())]
+    for contig, features in annotation_per_contigs:
+        
+        for feature in features:
+            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+
+            gff_id = get_tag_value(feature['attribute'], 'ID')
+            # ID in gff from prodigal is <contig_number>_<cds_number>
+            # seq name from prodigal is <contig_name>_<cds_number>
+            cds_number = gff_id.split('_')[-1]
+            cds_prodigal_id = f"{contig}_{cds_number}"
+            print(cds_prodigal_id, new_id)
+            print(protein_fa[cds_prodigal_id])
+            
+
+            
+            
+            input()
 
-    
-#     for contig, features in annotation_per_contigs:
         
 
-#     yield contig, features 
+    yield contig, features 
 
 
 def main():
@@ -292,7 +301,7 @@ def main():
     
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {output_gff}.')
-    writing_features_to_gff_and_ffn(annotation_per_contigs, output_gff, fna_file, out_ffn) #, out_faa)
+    writing_features_to_gff_ffn_faa(annotation_per_contigs, output_gff, fna_file, out_ffn, faa_file, out_faa)
     
 
 if __name__ == '__main__':
-- 
GitLab


From 9826c73ba81e5c841028d7ad8904ae7ed89a4e17 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:37:34 +0200
Subject: [PATCH 113/194] improve presentation string

---
 bin/merge_annotations.py | 27 ---------------------------
 1 file changed, 27 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index edc12b6..2c4dbc9 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -217,33 +217,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                 fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
 
-                
-def filter_faa_file(annotation_per_contigs, faa_file, out_faa):
-
-    protein_fa = pyfastx.Fasta(faa_file)
-
-    for contig, features in annotation_per_contigs:
-        
-        for feature in features:
-            new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
-
-            gff_id = get_tag_value(feature['attribute'], 'ID')
-            # ID in gff from prodigal is <contig_number>_<cds_number>
-            # seq name from prodigal is <contig_name>_<cds_number>
-            cds_number = gff_id.split('_')[-1]
-            cds_prodigal_id = f"{contig}_{cds_number}"
-            print(cds_prodigal_id, new_id)
-            print(protein_fa[cds_prodigal_id])
-            
-
-            
-            
-            input()
-
-        
-
-    yield contig, features 
-
 
 def main():
 
-- 
GitLab


From 7017a0ea818753dadc3a02a083b7dc20153d682b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 14:40:52 +0200
Subject: [PATCH 114/194] clean script

---
 bin/merge_annotations.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 2c4dbc9..dbf58db 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -245,10 +245,12 @@ def main():
 
 
     fna_file = args.contig_seq
+    faa_file = args.faa_file
+
+    out_gff = args.gff_output
     out_ffn = args.ffn_output
     out_faa = args.faa_output
 
-    faa_file = "prodigal.faa"
 
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
-- 
GitLab


From 9fd2ebcc134a7ce104f6da570becfdbadbaa898c Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 18:00:14 +0200
Subject: [PATCH 115/194] update multiqc config with new structural annotation
 method

---
 assets/sr_multiqc_config.yaml | 107 ++++++++++++++++++++++++++++++++++
 1 file changed, 107 insertions(+)
 create mode 100644 assets/sr_multiqc_config.yaml

diff --git a/assets/sr_multiqc_config.yaml b/assets/sr_multiqc_config.yaml
new file mode 100644
index 0000000..18076ef
--- /dev/null
+++ b/assets/sr_multiqc_config.yaml
@@ -0,0 +1,107 @@
+report_comment: >
+    This report has been generated by the <a href="https://forgemia.inra.fr/genotoul-bioinfo/metagwgs" target="_blank">genotoul-bioinfo/metagwgs</a>
+    analysis pipeline. For information about how to interpret these results, please see the
+    <a href="https://forgemia.inra.fr/genotoul-bioinfo/metagwgs" target="_blank">documentation</a>.
+
+extra_fn_clean_trim:
+  - "cleaned_"
+  - "raw_"
+  - '_kept_contigs'
+  - '.count_reads_on_contigs'
+  - '.no_filter'
+  - '.host_filter'
+  - '_scaffolds'
+  - '.txt'
+  - '.contigs'
+  - '.sort'
+  - '_kaiju_MEM_verbose'
+  - '_sickle'
+  - '_cutadapt'
+  
+extra_fn_clean_exts:
+  - "_select_contigs_cpm"
+
+use_filename_as_sample_name:
+  - cutadapt
+
+module_order:
+    - fastqc:
+        name: 'FastQC (raw)'
+        path_filters_exclude:
+            - '*cleaned_*.zip'
+    - cutadapt
+    - sickle:
+        path_filters:
+            - '*_sickle.log'
+    - samtools:
+        name : 'Reads before host reads filter'
+        info: 'This section reports of the reads alignement against host genome with bwa.'
+        path_filters:
+            - '*.no_filter.flagstat'
+    - samtools:
+        name : 'Reads after host reads filter'
+        info: 'This section reports of the cleaned reads alignement against host genome with bwa.'
+        path_filters:
+            - '*.host_filter.flagstat'
+    - fastqc:
+        name: 'FastQC (cleaned)'
+        info: 'This section of the report shows FastQC results after adapter trimming and cleaning.'
+        path_filters:
+            - '*cleaned_*.zip'
+    - kaiju
+    - quast:
+        name: 'Quast primary assembly'
+        info: 'This section of the report shows quast results after assembly'
+        path_filters:
+            - '*quast_primary/*/report.tsv'
+    - quast:
+        name: 'Quast filtered assembly'
+        info: 'This section of the report shows quast results after filtering of assembly'
+        path_filters:
+            - '*quast_filtered/*/report.tsv'
+    - samtools:
+        name : 'Reads after deduplication'
+        info: 'This section reports of deduplicated reads alignement against contigs with bwa.'
+        path_filters:
+            - '*.count_reads_on_contigs.flagstat'
+    - prokka:
+        name: 'Structural annotation'
+        info: 'This section of the report shows structural annotations results. CDS are predicted using Prodigal, rRNA using Barrnap and tRNA using tRNAscan-se.'
+    - featureCounts
+    - featureCounts
+    - custom_content:
+        name: 'Binning results'
+        info: 'This section of the report shows quast results after binning the contigs into species genomes'
+        path_filters:
+            - '*mqc.tsv'
+
+report_section_order:
+  stats_table:
+    order: -1000
+  bins_quality:
+    order: -1010
+  bins_quality_count:
+    order: -1020
+  bins_quality_size:
+    order: -1030
+  binning_heatmap:
+    order: -1040
+  software_versions:
+    order: -1050
+
+
+
+prokka_fn_snames: True
+prokka_table: True
+
+featurecounts:
+  fn: '*.summary'
+  shared: true
+
+
+table_columns_visible:
+  FastQC (raw):
+        percent_duplicates: False
+        percent_gc: False
+  Structural annotation:
+        organism: False
-- 
GitLab


From 5875de80a9ded1aa47b790afe034debc67820b64 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:38:45 +0200
Subject: [PATCH 116/194] simple script to rename contigs with sample and
 contig number

---
 modules/rename_contigs.nf | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 create mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
new file mode 100644
index 0000000..e69de29
-- 
GitLab


From bf698c082238cd9a1181768bab31d33158e12020 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 20 Oct 2022 23:50:28 +0200
Subject: [PATCH 117/194] call RENAME_CONTIGS in 02_assembly

---
 modules/rename_contigs.nf | 0
 1 file changed, 0 insertions(+), 0 deletions(-)
 delete mode 100644 modules/rename_contigs.nf

diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
deleted file mode 100644
index e69de29..0000000
-- 
GitLab


From 7356a8f7f9f34b21079f67712091fb88eef0fc40 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 14:57:00 +0200
Subject: [PATCH 118/194] add new tools in scrape_software_versions used
 instead of prokka

---
 bin/scrape_software_versions.py | 9 +++++++--
 1 file changed, 7 insertions(+), 2 deletions(-)

diff --git a/bin/scrape_software_versions.py b/bin/scrape_software_versions.py
index e04c4d3..4279474 100755
--- a/bin/scrape_software_versions.py
+++ b/bin/scrape_software_versions.py
@@ -23,7 +23,6 @@ regexes = {
     'Hifiasm': ['v_hifiasm_meta.txt', r"ha base version: (\S+)"],
     'MetaFlye': ['v_metaflye.txt', r"v(\S+)"],
     'Quast': ['v_quast.txt', r"QUAST v(\S+)"],
-    'Prokka': ['v_prokka.txt', r"prokka (\S+)"],
     'Kaiju': ['v_kaiju.txt', r"Kaiju (\S+)"],
     'Samtools': ['v_samtools.txt', r"samtools (\S+)"],
     'Eggnog-Mapper': ['v_eggnogmapper.txt', r"emapper-(\S+)"],
@@ -33,7 +32,10 @@ regexes = {
     'CheckM2': ['v_checkm2.txt', r"(\S+)"],
     'Metawrap': ['v_metawrap.txt', r"metawrap (\S+)"],
     'GTDBTK': ['v_gtdbtk.txt', r"...::: GTDB-Tk v(\S+)"],
-    'dRep': ['v_dRep.txt', r"version (\S+)"]
+    'dRep': ['v_dRep.txt', r"version (\S+)"],
+    'tRNAscan-SE': ['v_tRNAscan.txt', r"tRNAscan-SE (\S+)"],
+    'Barrnap': ['v_barrnap.txt', r"barrnap (\S+)"],
+    'Prodigal': ['v_prodigal.txt', r"Prodigal (\S+):"],
 }
 results = OrderedDict()
 results['metagWGS'] = '<span style="color:#999999;\">N/A</span>'
@@ -65,6 +67,9 @@ results['Metawrap'] = '<span style="color:#999999;\">N/A</span>'
 results['dRep'] = '<span style="color:#999999;\">N/A</span>'
 results['GTDBTK'] = '<span style="color:#999999;\">N/A</span>'
 results['MultiQC'] = '<span style="color:#999999;\">N/A</span>'
+results['tRNAscan-SE'] = '<span style="color:#999999;\">N/A</span>'
+results['Barrnap'] = '<span style="color:#999999;\">N/A</span>'
+results['Prodigal'] = '<span style="color:#999999;\">N/A</span>'
 
 # Search each file using its regex
 for k, v in regexes.items():
-- 
GitLab


From 2bbf8450f0bfcc25e597c12309c6bcf59c827325 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:04:34 +0200
Subject: [PATCH 119/194] clean nf scripts

---
 main.nf                     | 5 -----
 subworkflows/02_assembly.nf | 8 ++++----
 2 files changed, 4 insertions(+), 9 deletions(-)

diff --git a/main.nf b/main.nf
index 75c9f7b..87a6bb4 100644
--- a/main.nf
+++ b/main.nf
@@ -448,14 +448,9 @@ workflow {
     ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
     ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
     ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
-    // ch_prokka_fna = S04_STRUCTURAL_ANNOT.out.fna
     ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
 
-    // ch_contigs_and_reads = ch_prokka_fna
-    //     .join(ch_reads, remainder: true)
-
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
-    // exit 0, 'Exit now... S04_STRUCTURAL_ANNOT being constructed ' 
 	}
 
   ch_bam = Channel.empty()
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 6f6141e..819c674 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -6,10 +6,10 @@ include { SAMTOOLS } from '../modules/read_alignment_metrics'
 
 workflow STEP_02_ASSEMBLY {
   take: 
-  reads
-  assembly
-  has_assembly
-  assembly_tool
+    reads
+    assembly
+    has_assembly
+    assembly_tool
 
   main:
     ch_assembler_v = Channel.empty() 
-- 
GitLab


From fed02af24a23a0f05fe2ec7e72de490fa3037794 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:38:20 +0200
Subject: [PATCH 120/194] remove read aln in step 05

---
 main.nf                      | 56 +++++++++++++++++++-----------------
 subworkflows/05_alignment.nf | 49 +++++++++++++++----------------
 2 files changed, 53 insertions(+), 52 deletions(-)

diff --git a/main.nf b/main.nf
index 87a6bb4..5604044 100644
--- a/main.nf
+++ b/main.nf
@@ -287,7 +287,7 @@ workflow {
   ch_kaiju_db = Channel.empty()
   ch_eggnog_db = Channel.empty()
   ch_taxonomy = Channel.empty()
-  ch_diamond = Channel.empty()
+  ch_diamon_db = Channel.empty()
   ch_gtbdtk_db = Channel.empty()
 
 
@@ -297,7 +297,7 @@ workflow {
   ch_kaiju_db = DATABASES.out.kaiju_db
   ch_eggnog_db = DATABASES.out.eggnog
   ch_taxonomy = DATABASES.out.taxonomy
-  ch_diamond = DATABASES.out.diamond
+  ch_diamon_db = DATABASES.out.diamond
   ch_gtbdtk_db = DATABASES.out.gtdbtk
 
   ch_multiqc_config = Channel.empty()
@@ -317,7 +317,7 @@ workflow {
   ch_final_assembly_flagstat_report = Channel.empty()
   ch_assembly_report = Channel.empty()
   ch_filtered_report = Channel.empty()
-  ch_prokka_report = Channel.empty()
+  ch_annotation_report = Channel.empty()
   ch_bins_abundances_report = Channel.empty()
   ch_bins_stats_report = Channel.empty()
   ch_quast = Channel.empty()
@@ -409,8 +409,8 @@ workflow {
     ch_reads = S02_ASSEMBLY.out.reads
     ch_bam = S02_ASSEMBLY.out.bam
 
+    ch_sam_coverage = S02_ASSEMBLY.out.coverage
     ch_idxstats = S02_ASSEMBLY.out.idxstats
-    
     ch_unfilter_assembly_flagstat_report = S02_ASSEMBLY.out.flagstat
 
     ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
@@ -433,47 +433,51 @@ workflow {
         ch_min_contigs_cpm
     )
     ch_assembly = S03_FILTERING.out.selected
+    ch_bam =  S03_FILTERING.out.bam
+    ch_sam_coverage = S02_ASSEMBLY.out.coverage
     ch_quast_after_filter_report = S03_FILTERING.out.report
-    
+    ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
+
+
+
+
   }
 
-  ch_contigs_and_reads = Channel.empty()
-  ch_prokka_ffn = Channel.empty()
-  ch_prokka_faa = Channel.empty()
-  ch_prokka_gff = Channel.empty()
-  ch_prokka_fna = Channel.empty()
+  ch_annotation_ffn = Channel.empty()
+  ch_annotation_faa = Channel.empty()
+  ch_annotation_gff = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering ) {
     S04_STRUCTURAL_ANNOT ( ch_assembly )
-    ch_prokka_ffn = S04_STRUCTURAL_ANNOT.out.ffn
-    ch_prokka_faa = S04_STRUCTURAL_ANNOT.out.faa
-    ch_prokka_gff = S04_STRUCTURAL_ANNOT.out.gff
-    ch_prokka_report = S04_STRUCTURAL_ANNOT.out.report
+    ch_annotation_ffn = S04_STRUCTURAL_ANNOT.out.ffn
+    ch_annotation_faa = S04_STRUCTURAL_ANNOT.out.faa
+    ch_annotation_gff = S04_STRUCTURAL_ANNOT.out.gff
+    ch_annotation_report = S04_STRUCTURAL_ANNOT.out.report
 
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
 	}
 
-  ch_bam = Channel.empty()
+  // ch_bam = Channel.empty()
   ch_m8 = Channel.empty()
-  ch_sam_coverage = Channel.empty()
+  // ch_sam_coverage = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot ) {
-    S05_ALIGNMENT ( ch_contigs_and_reads, ch_prokka_faa, ch_diamond)
-    ch_bam = S05_ALIGNMENT.out.bam
+    S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
+    // ch_bam = S05_ALIGNMENT.out.bam
     ch_m8 = S05_ALIGNMENT.out.m8
-    ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
+    // ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
 
-    if (!params.skip_filtering){
-      // when filtering is skip reads vs assembly remain unchanged so no need to send it to multiqc
-      ch_final_assembly_flagstat_report = S05_ALIGNMENT.out.sam_flagstat
-    }
+    // if (!params.skip_filtering){
+    //   // when filtering is skip reads vs assembly remain unchanged so no need to send it to multiqc
+    //   // ch_final_assembly_flagstat_report = S05_ALIGNMENT.out.sam_flagstat
+    // }
     ch_software_versions_S05 = S05_ALIGNMENT.out.software_versions
   }
 
   ch_quant_report = Channel.empty()
   ch_v_eggnogmapper = Channel.empty()
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot ) {
-      S06_FUNC_ANNOT ( ch_prokka_ffn, ch_prokka_faa, ch_prokka_gff, ch_bam, ch_m8, ch_eggnog_db )
+      S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_m8, ch_eggnog_db )
       ch_quant_report = S06_FUNC_ANNOT.out.quant_report
 
       ch_software_versions_S06 = S06_FUNC_ANNOT.out.software_versions
@@ -486,7 +490,7 @@ workflow {
 	}
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_binning ) {
-    S08_BINNING( ch_reads, ch_prokka_fna, ch_bam, ch_gtbdtk_db, ch_quast )
+    S08_BINNING( ch_reads, ch_annotation_fna, ch_bam, ch_gtbdtk_db, ch_quast )
     ch_bins_abundances_report = S08_BINNING.out.bins_abundances_report
     ch_bins_stats_report = S08_BINNING.out.bins_stats_report
 
@@ -515,7 +519,7 @@ workflow {
     ch_quast_before_filter_report.collect().ifEmpty([]),
     ch_quast_after_filter_report.collect().ifEmpty([]),
     ch_final_assembly_flagstat_report.collect().ifEmpty([]),
-    ch_prokka_report.collect().ifEmpty([]),
+    ch_annotation_report.collect().ifEmpty([]),
     ch_quant_report.collect().ifEmpty([]),
     ch_bins_abundances_report.collect().ifEmpty([]),
     ch_bins_stats_report.collect().ifEmpty([])
diff --git a/subworkflows/05_alignment.nf b/subworkflows/05_alignment.nf
index 1d7c543..191d20f 100644
--- a/subworkflows/05_alignment.nf
+++ b/subworkflows/05_alignment.nf
@@ -4,34 +4,34 @@ include { DIAMOND } from '../modules/diamond'
 
 workflow STEP_05_ALIGNMENT {
     take:
-        contigs_and_reads
+        // contigs_and_reads
         prokka_faa
         diamond
 
 	main:
-        ch_bwa_mem_v = Channel.empty()
-        ch_minimap2_v = Channel.empty()
-        ch_samtools_v = Channel.empty()
+        // ch_bwa_mem_v = Channel.empty()
+        // ch_minimap2_v = Channel.empty()
+        // ch_samtools_v = Channel.empty()
         ch_diamond_v = Channel.empty()
 
-        publishDir = "05_alignment/05_1_reads_alignment_on_contigs"
-        if (params.type == 'SR') {
-            BWA_MEM(contigs_and_reads, publishDir)
-            ch_bam = BWA_MEM.out.bam
+        // publishDir = "05_alignment/05_1_reads_alignment_on_contigs"
+        // if (params.type == 'SR') {
+        //     BWA_MEM(contigs_and_reads, publishDir)
+        //     ch_bam = BWA_MEM.out.bam
 
-            ch_bwa_mem_v = BWA_MEM.out.v_bwa_mem2
-            ch_samtools_v = BWA_MEM.out.v_samtools
-        } else {
-            MINIMAP2(contigs_and_reads, publishDir)
-            ch_bam = MINIMAP2.out.bam
+        //     ch_bwa_mem_v = BWA_MEM.out.v_bwa_mem2
+        //     ch_samtools_v = BWA_MEM.out.v_samtools
+        // } else {
+        //     MINIMAP2(contigs_and_reads, publishDir)
+        //     ch_bam = MINIMAP2.out.bam
 
-            ch_minimap2_v = MINIMAP2.out.v_minimap2
-            ch_samtools_v = MINIMAP2.out.v_samtools
-        }
+        //     ch_minimap2_v = MINIMAP2.out.v_minimap2
+        //     ch_samtools_v = MINIMAP2.out.v_samtools
+        // }
         
-        SAMTOOLS(ch_bam, publishDir)
-        ch_sam_coverage = SAMTOOLS.out.sam_coverage
-        ch_sam_flagstat = SAMTOOLS.out.sam_flagstat
+        // SAMTOOLS(ch_bam, publishDir)
+        // ch_sam_coverage = SAMTOOLS.out.sam_coverage
+        // ch_sam_flagstat = SAMTOOLS.out.sam_flagstat
 
         ch_m8 =Channel.empty()
         if (!params.skip_func_annot || !params.skip_taxo_affi){
@@ -42,13 +42,10 @@ workflow STEP_05_ALIGNMENT {
             ch_m8 = DIAMOND.out.m8
             ch_diamond_v = DIAMOND.out.v_diamond
         }
-        ch_software_versions = ch_bwa_mem_v.first().mix(ch_minimap2_v.first(),
-                                                       ch_samtools_v.first(),
-                                                       ch_diamond_v.first())
     emit:
-        bam = ch_bam
+        // bam = ch_bam
         m8 = ch_m8
-        sam_coverage = ch_sam_coverage
-        software_versions = ch_software_versions
-        sam_flagstat = ch_sam_flagstat
+        // sam_coverage = ch_sam_coverage
+        software_versions = ch_diamond_v.first()
+        // sam_flagstat = ch_sam_flagstat
     }
-- 
GitLab


From 9da2e4500118060d6fc822cf98ff464366138f59 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:39:33 +0200
Subject: [PATCH 121/194] reorganise 02_assembly.nf

---
 modules/read_alignment_metrics.nf |  4 +++-
 subworkflows/02_assembly.nf       | 20 +++++++++-----------
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/modules/read_alignment_metrics.nf b/modules/read_alignment_metrics.nf
index e23dc78..ee1bd54 100644
--- a/modules/read_alignment_metrics.nf
+++ b/modules/read_alignment_metrics.nf
@@ -11,12 +11,14 @@ process SAMTOOLS {
       tuple val(meta), path("${meta.id}.idxstats"), emit: sam_idxstat
       path "${meta.id}.flagstat", emit: sam_flagstat
       path "${meta.id}*"
-
+      path "v_samtools.txt", emit: v_samtools
 
    script:
       """
       samtools flagstat -@ ${task.cpus}  ${bam} > ${meta.id}.flagstat
       samtools coverage  ${bam} > ${meta.id}.coverage.tsv
       samtools idxstats ${bam} > ${meta.id}.idxstats
+
+      samtools --version &> v_samtools.txt
       """
 }
\ No newline at end of file
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 819c674..ee5a207 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -64,12 +64,7 @@ workflow STEP_02_ASSEMBLY {
       ch_reads = READS_DEDUPLICATION.out.dedup_reads
       ch_bam = READS_DEDUPLICATION.out.bam
 
-      SAMTOOLS(ch_bam, "02_assembly")
-      ch_idxstats = SAMTOOLS.out.sam_idxstat
-      ch_flagstat = SAMTOOLS.out.sam_flagstat
-
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
-      ch_samtools_v = READS_DEDUPLICATION.out.v_samtools
       
     } else {
 
@@ -77,16 +72,18 @@ workflow STEP_02_ASSEMBLY {
         MINIMAP2(ch_contigs_and_reads,"02_assembly")
         ch_bam = MINIMAP2.out.bam
 
-        SAMTOOLS(ch_bam, "02_assembly")
-        ch_idxstats  = SAMTOOLS.out.sam_idxstat
-        ch_flagstat =  SAMTOOLS.out.sam_flagstat
-
         ch_minimap2_v = MINIMAP2.out.v_minimap2
-        ch_samtools_v = MINIMAP2.out.v_samtools
+        
       }
-      
     }
 
+    SAMTOOLS(ch_bam, "02_assembly")
+
+    ch_idxstats  = SAMTOOLS.out.sam_idxstat
+    ch_flagstat =  SAMTOOLS.out.sam_flagstat
+    ch_coverage =  SAMTOOLS.out.sam_coverage
+    ch_samtools_v = SAMTOOLS.out.v_samtools
+
     ch_software_versions = ch_assembler_v.first().mix( ch_quast_v.first(),
                                                        ch_bwa_mem_v.first(),
                                                        ch_minimap2_v.first(),
@@ -99,6 +96,7 @@ workflow STEP_02_ASSEMBLY {
     bam = ch_bam
     idxstats = ch_idxstats
     flagstat = ch_flagstat
+    coverage = ch_coverage
     assembly_report = ch_assembly_report
     software_versions = ch_software_versions
 }
\ No newline at end of file
-- 
GitLab


From e25e010be22c682fdd05e0e95c814b00aafd3f36 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 15:59:42 +0200
Subject: [PATCH 122/194] rename diamond result channel for better clarity

---
 main.nf | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/main.nf b/main.nf
index 5604044..173bf84 100644
--- a/main.nf
+++ b/main.nf
@@ -434,7 +434,7 @@ workflow {
     )
     ch_assembly = S03_FILTERING.out.selected
     ch_bam =  S03_FILTERING.out.bam
-    ch_sam_coverage = S02_ASSEMBLY.out.coverage
+    ch_sam_coverage = S03_FILTERING.out.coverage
     ch_quast_after_filter_report = S03_FILTERING.out.report
     ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
@@ -458,13 +458,13 @@ workflow {
 	}
 
   // ch_bam = Channel.empty()
-  ch_m8 = Channel.empty()
+  ch_diamond_result = Channel.empty()
   // ch_sam_coverage = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot ) {
     S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
     // ch_bam = S05_ALIGNMENT.out.bam
-    ch_m8 = S05_ALIGNMENT.out.m8
+    ch_diamond_result = S05_ALIGNMENT.out.m8
     // ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
 
     // if (!params.skip_filtering){
@@ -477,14 +477,14 @@ workflow {
   ch_quant_report = Channel.empty()
   ch_v_eggnogmapper = Channel.empty()
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot ) {
-      S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_m8, ch_eggnog_db )
+      S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_diamond_result, ch_eggnog_db )
       ch_quant_report = S06_FUNC_ANNOT.out.quant_report
 
       ch_software_versions_S06 = S06_FUNC_ANNOT.out.software_versions
   }
 
 	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi ) {
-		S07_TAXO_AFFI ( ch_taxonomy, ch_m8, ch_sam_coverage)
+		S07_TAXO_AFFI ( ch_taxonomy, ch_diamond_result, ch_sam_coverage)
 
     ch_software_versions_S07 = S07_TAXO_AFFI.out.software_versions
 	}
-- 
GitLab


From b9a51f32ce0e39928a6a5b3d8b6984cc25721602 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 16:00:02 +0200
Subject: [PATCH 123/194] rm graph as expected output

---
 modules/assign_taxonomy.nf | 1 -
 1 file changed, 1 deletion(-)

diff --git a/modules/assign_taxonomy.nf b/modules/assign_taxonomy.nf
index 9d765ad..7fd509d 100644
--- a/modules/assign_taxonomy.nf
+++ b/modules/assign_taxonomy.nf
@@ -11,7 +11,6 @@ process ASSIGN_TAXONOMY {
     tuple val(meta.id), path("${meta.id}.percontig.tsv"), emit: t_percontig
     tuple val(meta.id), path("${meta.id}.pergene.tsv"), emit: t_pergene
     tuple val(meta.id), path("${meta.id}.warn.tsv"), emit: t_warn
-    tuple val(meta.id), path("graphs"), emit: t_graphs
     path "${meta.id}_quantif_percontig.tsv", emit: q_all
     path "${meta.id}_quantif_percontig_by_superkingdom.tsv", emit: q_superkingdom
     path "${meta.id}_quantif_percontig_by_phylum.tsv", emit: q_phylum
-- 
GitLab


From d1be56c6a1c705a06ade856b91dd59e593e93928 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 16:53:27 +0200
Subject: [PATCH 124/194] refactoring of filter_contig_per_cpm.py using pyfastx
 #203

---
 bin/Filter_contig_per_cpm.py |  95 --------------------------------
 bin/filter_contig_per_cpm.py | 103 +++++++++++++++++++++++++++++++++++
 conf/base.config             |   4 +-
 conf/test.config             |   2 +-
 main.nf                      |  23 +++-----
 modules/filtering_cpm.nf     |   2 +-
 subworkflows/03_filtering.nf |  20 +++++--
 7 files changed, 131 insertions(+), 118 deletions(-)
 delete mode 100755 bin/Filter_contig_per_cpm.py
 create mode 100755 bin/filter_contig_per_cpm.py

diff --git a/bin/Filter_contig_per_cpm.py b/bin/Filter_contig_per_cpm.py
deleted file mode 100755
index 9127e57..0000000
--- a/bin/Filter_contig_per_cpm.py
+++ /dev/null
@@ -1,95 +0,0 @@
-#!/usr/bin/env python
-
-"""----------------------------------------------------------------------------
-  Script Name: Filter_contig_per_cpm.py
-  Description: Calculates the CPM normalization of mapped reads for each \
-               contig and returns contigs which have a CPM > cutoff in .fa.
-  Input files: Samtools idxstats output file, .fasta file of contigs.
-  Created By:  Joanna Fourquet
-  Date:        2020-04-01
--------------------------------------------------------------------------------
-"""
-
-# Metadata
-__author__ = 'Joanna Fourquet \
-- GenPhySE - Team NED'
-__copyright__ = 'Copyright (C) 2020 INRA'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-# Status: dev
-
-# Modules importation
-
-try:
-    import argparse
-    import sys
-    import pandas as p
-    import numpy as np
-    from Bio.Seq import Seq
-    from Bio.SeqRecord import SeqRecord
-    import pprint
-    from Bio import SeqIO
-except ImportError as error:
-    print(error)
-    exit(1)
-
-################################################
-# Function
-################################################
-
-def cpm(counts):
-    N = np.sum(counts.iloc[:,2], axis=0)
-    C = counts.iloc[:,2]
-    cpm_values = 1e6 * C / N
-    return(cpm_values)
-
-def main(argv):
-    parser = argparse.ArgumentParser()
-    parser.add_argument("-i", "--samtools_idxstats", \
-    required = True, help = "samtools idxstats file containing contig id, \
-    sequence length, number of mapped reads or fragments, \
-    number of unmapped reads or fragments")
-    parser.add_argument('-f', '--fasta_file', required = True, help = \
-    'fasta file containing sequences of contigs.')
-    parser.add_argument("-c", "--cutoff_cpm", required = True, \
-    help = "Minimum number of reads in a contig")
-    parser.add_argument("-s", "--select", \
-    help = "Name of outpout .fa file containing contigs which passed cpm cutoff")
-    parser.add_argument("-d", "--discard", \
-    help = "Name of outpout .fa file containing contigs which don't passed cpm cutoff")
-    args = parser.parse_args()
-
-    # Read input table
-    raw_counts = p.read_table(args.samtools_idxstats,sep ='\t',header = None, comment="*")
-
-    # Calculates cpm for each contig
-    res_cpm = cpm(raw_counts)
-
-    cutoff = float(args.cutoff_cpm)
-    # Contigs with nb reads > cutoff
-    kept_contigs = raw_counts.iloc[np.where(res_cpm >= cutoff)[0],0]
-
-    # Contigs with nb reads < cutoff
-    unkept_contigs = raw_counts.iloc[np.where(res_cpm < cutoff)[0],0]
-
-    # Write new fasta files with kept and unkept contigs
-    with open(args.fasta_file, "rU") as fasta_file,\
-        open(args.select, "w") as out_select_handle,\
-        open(args.discard, "w") as out_discard_handle:
-        for record in SeqIO.parse(fasta_file, "fasta"):
-            try :
-                contig_id = record.id
-                if(contig_id in list(kept_contigs)):
-                    SeqIO.write(record, out_select_handle, "fasta")
-                else:
-                    if(contig_id in list(unkept_contigs)):
-                        SeqIO.write(record, out_discard_handle, "fasta")
-            except :
-                print ("Warning input fasta file: contig " + record.id + " issue")
-                pass
-
-if __name__ == "__main__":
-    main(sys.argv[1:])
diff --git a/bin/filter_contig_per_cpm.py b/bin/filter_contig_per_cpm.py
new file mode 100755
index 0000000..ba563ec
--- /dev/null
+++ b/bin/filter_contig_per_cpm.py
@@ -0,0 +1,103 @@
+#!/usr/bin/env python
+
+"""----------------------------------------------------------------------------
+  Script Name: Filter_contig_per_cpm.py
+  Description: Calculates the CPM normalization of mapped reads for each \
+               contig and returns contigs which have a CPM > cutoff in .fa.
+  Input files: Samtools idxstats output file, .fasta file of contigs.
+  Created By:  Joanna Fourquet
+  Date:        2020-04-01
+-------------------------------------------------------------------------------
+"""
+
+# Metadata
+__author__ = 'Joanna Fourquet \
+- GenPhySE - Team NED'
+__copyright__ = 'Copyright (C) 2020 INRA'
+__license__ = 'GNU General Public License'
+__version__ = '0.1'
+__email__ = 'support.bioinfo.genotoul@inra.fr'
+__status__ = 'dev'
+
+# Status: dev
+
+# Modules importation
+
+
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
+import sys
+import pandas as pd
+import numpy as np
+import logging
+from Bio import SeqIO
+import pyfastx
+
+################################################
+# Function
+################################################
+
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+
+    parser.add_argument("-i", "--samtools_idxstats", required = True, 
+    help = "samtools idxstats file containing contig id, \
+    sequence length, number of mapped reads or fragments, \
+    number of unmapped reads or fragments")
+
+    parser.add_argument('-f', '--fasta_file', required = True, 
+                        help = 'fasta file containing sequences of contigs.')
+    parser.add_argument("-c", "--cutoff_cpm", required = True,
+                       help = "Minimum number of reads in a contig")
+    parser.add_argument("-s", "--select",
+                       help = "Name of outpout .fa file containing contigs which passed cpm cutoff")
+    parser.add_argument("-d", "--discard", 
+                       help = "Name of outpout .fa file containing contigs which don't passed cpm cutoff")
+
+
+    parser.add_argument("-v", "--verbose", help="increase output verbosity",
+                        action="store_true")
+
+    args = parser.parse_args()
+    return args
+
+def cpm(counts):
+    N = np.sum(counts.iloc[:,2], axis=0)
+    C = counts.iloc[:,2]
+    cpm_values = 1e6 * C / N
+    return(cpm_values)
+
+def main(argv):
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+
+    # Read input table
+    raw_counts = pd.read_table(args.samtools_idxstats,sep ='\t',header = None, comment="*")
+
+    # Calculates cpm for each contig
+    res_cpm = cpm(raw_counts)
+
+    cutoff = float(args.cutoff_cpm)
+    # Contigs with nb reads > cutoff
+    kept_contigs = raw_counts.iloc[np.where(res_cpm >= cutoff)[0],0]
+
+
+    # Write new fasta files with kept and unkept contigs
+    with open(args.select, "w") as out_select_handle, open(args.discard, "w") as out_discard_handle:
+        
+        for contig, seq in pyfastx.Fasta(args.fasta_file, build_index=False):
+            if contig in kept_contigs:
+                out_select_handle.write(f'>{contig}\n{seq}\n')
+            else:
+                out_discard_handle.write(f'>{contig}\n{seq}\n')
+
+if __name__ == "__main__":
+    main(sys.argv[1:])
diff --git a/conf/base.config b/conf/base.config
index dd61115..721713b 100644
--- a/conf/base.config
+++ b/conf/base.config
@@ -55,8 +55,8 @@ process {
         memory = { 32.GB * task.attempt }
     }
     withLabel: ASSEMBLY_FILTER {
-        memory = { 8.GB * task.attempt }
-        cpus = 4
+        memory = { 2.GB * task.attempt }
+        cpus = 1
     }
     withLabel: CD_HIT {
         memory = { 50.GB * task.attempt }
diff --git a/conf/test.config b/conf/test.config
index ae50b57..8b437cd 100644
--- a/conf/test.config
+++ b/conf/test.config
@@ -47,7 +47,7 @@ process {
     }
     withLabel: ASSEMBLY_FILTER {
         memory = { 1.GB * task.attempt }
-        cpus = 2
+        cpus = 1
     }
     withLabel: CD_HIT {
         memory = { 16.GB * task.attempt }
diff --git a/main.nf b/main.nf
index 173bf84..2c53770 100644
--- a/main.nf
+++ b/main.nf
@@ -418,28 +418,23 @@ workflow {
   }
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.skip_filtering ) {
+    print("IN FILTERING")
     ch_min_contigs_cpm = Channel.value(params.min_contigs_cpm)
 
-    ch_assembly
-        .splitFasta(by: 100000, file: true)
-        .set{ch_chunk_assembly_for_filter}
 
-    ch_chunk_assembly_for_filter
-        .combine(ch_idxstats, by:0)
-        .set{ch_assembly_and_idxstats}
 
     S03_FILTERING (
-        ch_assembly_and_idxstats,
+        ch_assembly,
+        ch_idxstats,
+        ch_bam,
         ch_min_contigs_cpm
     )
-    ch_assembly = S03_FILTERING.out.selected
+    
+    ch_assembly = S03_FILTERING.out.selected_contigs
     ch_bam =  S03_FILTERING.out.bam
-    ch_sam_coverage = S03_FILTERING.out.coverage
-    ch_quast_after_filter_report = S03_FILTERING.out.report
-    ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
-
-
-
+    // ch_sam_coverage = S03_FILTERING.out.coverage
+    ch_quast_after_filter_report = S03_FILTERING.out.quast_report
+    // ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
   }
 
diff --git a/modules/filtering_cpm.nf b/modules/filtering_cpm.nf
index 951a201..0155034 100644
--- a/modules/filtering_cpm.nf
+++ b/modules/filtering_cpm.nf
@@ -12,7 +12,7 @@ process CHUNK_ASSEMBLY_FILTER {
   script:
     chunk_name = assembly_file.baseName
     """
-    Filter_contig_per_cpm.py -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
+    filter_contig_per_cpm.py -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
     """
 }
 
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index b13e490..488a576 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -3,12 +3,21 @@ include { QUAST as FILTERED_QUAST } from '../modules/metaquast'
 
 workflow STEP_03_ASSEMBLY_FILTER {
   take:
-    assembly_and_idxstats
+    assemblies
+    idxstats
+    bam
     min_cpm
 
   main:
+    ch_chunk_assembly_for_filter = assemblies
+                                  .splitFasta(by: 100000, file: true)
+  
+
+    ch_assembly_and_idxstats = ch_chunk_assembly_for_filter
+                                .combine(idxstats, by:0)
+
     CHUNK_ASSEMBLY_FILTER (
-      assembly_and_idxstats,
+      ch_assembly_and_idxstats,
       min_cpm
     )
     ch_chunk_selected =  CHUNK_ASSEMBLY_FILTER.out.chunk_selected
@@ -30,10 +39,11 @@ workflow STEP_03_ASSEMBLY_FILTER {
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
 
     FILTERED_QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
-    ch_filtered_report = FILTERED_QUAST.out.report
+    ch_quast_report = FILTERED_QUAST.out.report
 
 
   emit:
-    selected = ch_merged_selected
-    report = ch_filtered_report
+    selected_contigs = ch_merged_selected
+    quast_report = ch_quast_report
+    bam = bam
 }
\ No newline at end of file
-- 
GitLab


From 6d8e3b2eeb2cf070fd09693379d03910ff5a2f8e Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 18:20:34 +0200
Subject: [PATCH 125/194] compelete refactoring of filter_contig_per_cpm.py

---
 bin/filter_contig_per_cpm.py | 42 +++++++++++++++++++-----------------
 1 file changed, 22 insertions(+), 20 deletions(-)

diff --git a/bin/filter_contig_per_cpm.py b/bin/filter_contig_per_cpm.py
index ba563ec..8f01cec 100755
--- a/bin/filter_contig_per_cpm.py
+++ b/bin/filter_contig_per_cpm.py
@@ -2,18 +2,17 @@
 
 """----------------------------------------------------------------------------
   Script Name: Filter_contig_per_cpm.py
-  Description: Calculates the CPM normalization of mapped reads for each \
+  Description: Calculates the CPM normalization of mapped reads for each 
                contig and returns contigs which have a CPM > cutoff in .fa.
   Input files: Samtools idxstats output file, .fasta file of contigs.
-  Created By:  Joanna Fourquet
-  Date:        2020-04-01
+  Created By:  Jean Mainguy
+  Date:        2022-24-10
 -------------------------------------------------------------------------------
 """
 
 # Metadata
-__author__ = 'Joanna Fourquet \
-- GenPhySE - Team NED'
-__copyright__ = 'Copyright (C) 2020 INRA'
+__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
+__copyright__ = 'Copyright (C) 2022 INRAE'
 __license__ = 'GNU General Public License'
 __version__ = '0.1'
 __email__ = 'support.bioinfo.genotoul@inra.fr'
@@ -25,11 +24,9 @@ __status__ = 'dev'
 
 
 from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import sys
 import pandas as pd
 import numpy as np
 import logging
-from Bio import SeqIO
 import pyfastx
 
 ################################################
@@ -62,13 +59,8 @@ def parse_arguments():
     args = parser.parse_args()
     return args
 
-def cpm(counts):
-    N = np.sum(counts.iloc[:,2], axis=0)
-    C = counts.iloc[:,2]
-    cpm_values = 1e6 * C / N
-    return(cpm_values)
 
-def main(argv):
+def main():
     args = parse_arguments()
 
     if args.verbose:
@@ -78,18 +70,28 @@ def main(argv):
     else:
         logging.basicConfig(format="%(levelname)s: %(message)s")
 
+    cpm_cutoff = float(args.cutoff_cpm)
 
     # Read input table
-    raw_counts = pd.read_table(args.samtools_idxstats,sep ='\t',header = None, comment="*")
+    idxstat_df = pd.read_csv(args.samtools_idxstats,
+                           sep ='\t',
+                           names = ['reference_sequence_name', 
+                                     'sequence_length',
+                                     '# mapped_read-segments', 
+                                     '#_unmapped_read-segments'], 
+                        comment="*")
 
     # Calculates cpm for each contig
-    res_cpm = cpm(raw_counts)
+    sum_reads = idxstat_df['# mapped_read-segments'].sum()
 
-    cutoff = float(args.cutoff_cpm)
-    # Contigs with nb reads > cutoff
-    kept_contigs = raw_counts.iloc[np.where(res_cpm >= cutoff)[0],0]
+    logging.info(f'With a cpm cutoff of {args.cutoff_cpm}, contigs with less than {(sum_reads*cpm_cutoff)/1e6} reads are removed.')
+    idxstat_df['cpm_count'] = 1e6 * idxstat_df['# mapped_read-segments']/sum_reads
 
+    
+    # Contigs with nb reads > cutoff
+    kept_contigs = idxstat_df.loc[idxstat_df["cpm_count"] >= cpm_cutoff, "reference_sequence_name"].to_list()
 
+    logging.info(f'{len(kept_contigs)}/{len(idxstat_df)} contigs are kept with a cpm cutoff of {cpm_cutoff}.')
     # Write new fasta files with kept and unkept contigs
     with open(args.select, "w") as out_select_handle, open(args.discard, "w") as out_discard_handle:
         
@@ -100,4 +102,4 @@ def main(argv):
                 out_discard_handle.write(f'>{contig}\n{seq}\n')
 
 if __name__ == "__main__":
-    main(sys.argv[1:])
+    main()
-- 
GitLab


From 57a6984067a434b3a3babb1bd6d0bb3c60b59e36 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 24 Oct 2022 19:00:10 +0200
Subject: [PATCH 126/194] add possibility to process multiple idxstat in
 filter_contig_per_cpm.py

---
 bin/filter_contig_per_cpm.py | 53 ++++++++++++++++++++++++++----------
 1 file changed, 39 insertions(+), 14 deletions(-)

diff --git a/bin/filter_contig_per_cpm.py b/bin/filter_contig_per_cpm.py
index 8f01cec..fdea68d 100755
--- a/bin/filter_contig_per_cpm.py
+++ b/bin/filter_contig_per_cpm.py
@@ -38,16 +38,16 @@ def parse_arguments():
     parser = ArgumentParser(description="...",
                             formatter_class=ArgumentDefaultsHelpFormatter)
 
-    parser.add_argument("-i", "--samtools_idxstats", required = True, 
+    parser.add_argument("-i", "--samtools_idxstats", nargs='+',  required = True, 
     help = "samtools idxstats file containing contig id, \
     sequence length, number of mapped reads or fragments, \
     number of unmapped reads or fragments")
 
-    parser.add_argument('-f', '--fasta_file', required = True, 
+    parser.add_argument('-f', '--fasta_file',  required = True, 
                         help = 'fasta file containing sequences of contigs.')
     parser.add_argument("-c", "--cutoff_cpm", required = True,
                        help = "Minimum number of reads in a contig")
-    parser.add_argument("-s", "--select",
+    parser.add_argument("-s", "--select", 
                        help = "Name of outpout .fa file containing contigs which passed cpm cutoff")
     parser.add_argument("-d", "--discard", 
                        help = "Name of outpout .fa file containing contigs which don't passed cpm cutoff")
@@ -59,6 +59,36 @@ def parse_arguments():
     args = parser.parse_args()
     return args
 
+def combine_idxstat_files(idxstat_files):
+    """
+    Combine multiple idxstat files that have the same contigs.
+
+    Sum the #_mapped_read_segments column over multiple idxstat files that have the same reference sequences.
+    """
+    columns_names = ['reference_sequence_name', 
+                    'sequence_length',
+                    '#_mapped_read_segments',
+                    '#_unmapped_read-segments']
+
+    idxstat_df = pd.read_csv(idxstat_files[0],
+                            sep ='\t',
+                            names = columns_names, 
+                            usecols = ['reference_sequence_name', 
+                                        'sequence_length',
+                                        '#_mapped_read_segments',],
+                            comment="*").set_index('reference_sequence_name')
+                            
+    for idxstat_file in idxstat_files[1:]:
+        other_idxstat_df = pd.read_csv(idxstat_file,
+                            sep ='\t',
+                            names = columns_names, 
+                            usecols = ['reference_sequence_name',
+                                        '#_mapped_read_segments',],
+                            comment="*").set_index('reference_sequence_name')
+            
+        idxstat_df['#_mapped_read_segments'] += other_idxstat_df['#_mapped_read_segments']
+
+    return idxstat_df
 
 def main():
     args = parse_arguments()
@@ -72,24 +102,19 @@ def main():
 
     cpm_cutoff = float(args.cutoff_cpm)
 
-    # Read input table
-    idxstat_df = pd.read_csv(args.samtools_idxstats,
-                           sep ='\t',
-                           names = ['reference_sequence_name', 
-                                     'sequence_length',
-                                     '# mapped_read-segments', 
-                                     '#_unmapped_read-segments'], 
-                        comment="*")
+    # Read input tables 
+    idxstat_df = combine_idxstat_files(args.samtools_idxstats)
 
     # Calculates cpm for each contig
-    sum_reads = idxstat_df['# mapped_read-segments'].sum()
+    sum_reads = idxstat_df['#_mapped_read_segments'].sum()
+    logging.info(f'Total number of mapped reads {sum_reads}')
 
     logging.info(f'With a cpm cutoff of {args.cutoff_cpm}, contigs with less than {(sum_reads*cpm_cutoff)/1e6} reads are removed.')
-    idxstat_df['cpm_count'] = 1e6 * idxstat_df['# mapped_read-segments']/sum_reads
+    idxstat_df['cpm_count'] = 1e6 * idxstat_df['#_mapped_read_segments']/sum_reads
 
     
     # Contigs with nb reads > cutoff
-    kept_contigs = idxstat_df.loc[idxstat_df["cpm_count"] >= cpm_cutoff, "reference_sequence_name"].to_list()
+    kept_contigs = idxstat_df.loc[idxstat_df["cpm_count"] >= cpm_cutoff].index
 
     logging.info(f'{len(kept_contigs)}/{len(idxstat_df)} contigs are kept with a cpm cutoff of {cpm_cutoff}.')
     # Write new fasta files with kept and unkept contigs
-- 
GitLab


From a0536948b421b872c9b413e517caac8681bca6f6 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 12:01:03 +0200
Subject: [PATCH 127/194] add structure and process to rescue reads in
 discarded contigs

---
 subworkflows/03_filtering.nf | 125 +++++++++++++++++++++++++++++++++--
 1 file changed, 120 insertions(+), 5 deletions(-)

diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index 488a576..dab2324 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -1,5 +1,7 @@
 include { CHUNK_ASSEMBLY_FILTER; MERGE_ASSEMBLY_FILTER} from '../modules/filtering_cpm.nf'
-include { QUAST as FILTERED_QUAST } from '../modules/metaquast'
+include { QUAST } from '../modules/metaquast'
+include { MINIMAP2; BWA_MEM } from '../modules/read_alignment'
+include { SAMTOOLS } from '../modules/read_alignment_metrics'
 
 workflow STEP_03_ASSEMBLY_FILTER {
   take:
@@ -37,13 +39,126 @@ workflow STEP_03_ASSEMBLY_FILTER {
       min_cpm
     )
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
+    discarded_contigs = MERGE_ASSEMBLY_FILTER.out.merged_discarded
 
-    FILTERED_QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
-    ch_quast_report = FILTERED_QUAST.out.report
+   discarded_contigs_category = discarded_contigs.branch{
+                              without: it[1].isEmpty() 
+                              with: !it[1].isEmpty() 
+                              }
 
+   // discarded_contigs_category.view()
+   samples_with_discarded_contigs = discarded_contigs_category.with
+   samples_without_discarded_contigs = discarded_contigs_category.without
+
+   discarded_contigs_category.without.view { "WITHOUT::::::::: > $it" }
+   discarded_contigs_category.with.view { "WITH::::::::: > $it" }
+   
+  ch_discarded_contigs_and_bam = samples_with_discarded_contigs.join(bam)
+  ch_discarded_contigs_and_bam.view()
+
+  FILTER_BAM(ch_discarded_contigs_and_bam)
+
+  ch_discarded_bam = FILTER_BAM.out.discarded_contigs_bam
+  ch_selected_bam = FILTER_BAM.out.selected_contigs_bam 
+
+  if ( params.type.toUpperCase() == "SR" ) {
+        
+        ch_discarded_reads = EXTRACT_PAIRED_READS(ch_discarded_bam)
+
+        ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
+
+        BWA_MEM(ch_contigs_and_discarded_reads, "03_filtering")
+        ch_bam_with_discarded_reads = BWA_MEM.out.bam
+
+  } else {
+        ch_discarded_reads = EXTRACT_SINGLE_READS(ch_discarded_bam)
+        ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
+        MINIMAP2(ch_contigs_and_reads, "03_filtering")
+        ch_bam_with_discarded_reads = MINIMAP2.out.bam
+  
+  }
+
+
+  // ch_merged_bam = MERGE_BAM_FILES(ch_filtered_bam, ch_bam_with_discarded_reads)
+  // SAMTOOLS(ch_merged_bam, '03_filtering/')
+
+
+  ch_merged_bam = Channel.empty()
+  ch_coverage  = Channel.empty()
+
+  ch_flagstat= Channel.empty()
+
+  // ch_flagstat =  SAMTOOLS.out.sam_flagstat
+  // ch_coverage =  SAMTOOLS.out.sam_coverage
+
+  QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
+  ch_quast_report = QUAST.out.report
 
   emit:
     selected_contigs = ch_merged_selected
     quast_report = ch_quast_report
-    bam = bam
-}
\ No newline at end of file
+    bam = ch_merged_bam
+    sam_coverage = ch_coverage
+    sam_flagstat = ch_flagstat
+
+}
+
+
+process FILTER_BAM {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(discarded_contigs), path(bam), path(bai)
+
+   output:
+      tuple val(meta), path("selected_contigs.bam"), emit: selected_contigs_bam
+      tuple val(meta), path("discarded_contigs.bam"), emit: discarded_contigs_bam
+
+
+   script:
+      """
+      
+      samtools faidx $discarded_contigs 
+      awk 'BEGIN {FS="\\t"}; {print \$1 FS "0" FS \$2}' ${discarded_contigs}.fai > discarded_contigs.bed
+
+
+      samtools view -@ ${task.cpus}  -bL discarded_contigs.bed -U selected_contigs.bam  $bam  -o discarded_contigs.bam
+
+
+      """
+}
+
+process EXTRACT_PAIRED_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam) //, path(bai)
+
+   output:
+      tuple val(meta), path("reads*.fastq.gz"), emit: reads
+
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus}  -N  -1 reads_R1.fastq.gz -2 reads_R2.fastq.gz $bam
+
+      """
+}
+
+process EXTRACT_SINGLE_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam), path(bai)
+
+   output:
+      tuple val(meta), path("reads.fastq.gz"), emit: reads
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus}  -N -1 reads.fastq.gz $bam
+
+      """
+}
-- 
GitLab


From 2850a2f933c36900a564e719f531edbad94bd267 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:28:37 +0200
Subject: [PATCH 128/194] finish rescuing reads mapping to discareded contigs

---
 subworkflows/03_filtering.nf | 54 +++++++++++++++++++++++++++---------
 1 file changed, 41 insertions(+), 13 deletions(-)

diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index dab2324..97399ef 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -46,14 +46,16 @@ workflow STEP_03_ASSEMBLY_FILTER {
                               with: !it[1].isEmpty() 
                               }
 
-   // discarded_contigs_category.view()
-   samples_with_discarded_contigs = discarded_contigs_category.with
-   samples_without_discarded_contigs = discarded_contigs_category.without
+
+   samples_without_discarded_contigs = discarded_contigs_category.without.map{ it -> it[0]}
+   samples_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS: $it"}
+   ch_bam_of_sample_without_discarded_contigs = samples_without_discarded_contigs.join(bam)
+   ch_bam_of_sample_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS AND bam: $it"}
 
    discarded_contigs_category.without.view { "WITHOUT::::::::: > $it" }
    discarded_contigs_category.with.view { "WITH::::::::: > $it" }
    
-  ch_discarded_contigs_and_bam = samples_with_discarded_contigs.join(bam)
+  ch_discarded_contigs_and_bam = discarded_contigs_category.with.join(bam)
   ch_discarded_contigs_and_bam.view()
 
   FILTER_BAM(ch_discarded_contigs_and_bam)
@@ -79,17 +81,24 @@ workflow STEP_03_ASSEMBLY_FILTER {
   }
 
 
-  // ch_merged_bam = MERGE_BAM_FILES(ch_filtered_bam, ch_bam_with_discarded_reads)
-  // SAMTOOLS(ch_merged_bam, '03_filtering/')
+   // remove bai from ch_bam_with_discarded_reads
+  ch_bam_to_merge = ch_bam_with_discarded_reads.map{ it -> [it[0], it[1]]}.join(ch_selected_bam)
+
+
+
+
+
+  ch_merged_bam = MERGE_BAM_FILES(ch_bam_to_merge)
 
+   ch_final_bam = ch_bam_of_sample_without_discarded_contigs.mix(ch_merged_bam)
 
-  ch_merged_bam = Channel.empty()
-  ch_coverage  = Channel.empty()
 
-  ch_flagstat= Channel.empty()
+   ch_final_bam.view { "FINAL BAMMMM::::::::: > $it" }
 
-  // ch_flagstat =  SAMTOOLS.out.sam_flagstat
-  // ch_coverage =  SAMTOOLS.out.sam_coverage
+  SAMTOOLS(ch_final_bam, '03_filtering/')
+
+  ch_flagstat =  SAMTOOLS.out.sam_flagstat
+  ch_coverage =  SAMTOOLS.out.sam_coverage
 
   QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
   ch_quast_report = QUAST.out.report
@@ -97,7 +106,7 @@ workflow STEP_03_ASSEMBLY_FILTER {
   emit:
     selected_contigs = ch_merged_selected
     quast_report = ch_quast_report
-    bam = ch_merged_bam
+    bam = ch_final_bam
     sam_coverage = ch_coverage
     sam_flagstat = ch_flagstat
 
@@ -158,7 +167,26 @@ process EXTRACT_SINGLE_READS {
    script:
       """
       
-      samtools fastq -@ ${task.cpus}  -N -1 reads.fastq.gz $bam
+      samtools fastq -@ ${task.cpus} -o reads.fastq.gz $bam
+
+      """
+}
+
+
+
+process MERGE_BAM_FILES {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam1), path(bam2)
+
+   output:
+      tuple val(meta), path("${meta.id}.filtered.bam"), path("${meta.id}.filtered.bam.bai") , emit: bam
+
+   script:
+      """
+      samtools merge -@ ${task.cpus} -o ${meta.id}.filtered.bam  $bam1 $bam2
+      samtools index -@ ${task.cpus} ${meta.id}.filtered.bam
 
       """
 }
-- 
GitLab


From d99f9e2510e7acee9c78c59e74e293058e48a0d7 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:29:17 +0200
Subject: [PATCH 129/194] change name of input as it can colapse with output
 name

---
 modules/assembly.nf | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/modules/assembly.nf b/modules/assembly.nf
index 41db2c5..9155270 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -113,14 +113,14 @@ process RENAME_CONTIGS {
   label 'PYTHON'
 
   input:
-    tuple val(meta), path(assembly)
+    tuple val(meta), path("${meta.id}.raw.fna")
 
   output:
     tuple val(meta), path("${meta.id}.fna"), emit: fna
 
   script:
   """
-    rename_contigs.py --sample ${meta.id}  --fna_file $assembly --out_fna ${meta.id}.fna -v
+    rename_contigs.py --sample ${meta.id}  --fna_file ${meta.id}.raw.fna --out_fna ${meta.id}.fna -v
 
   """
 }
\ No newline at end of file
-- 
GitLab


From 46c31f5f9af868c710df31b46106747c66658915 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:34:26 +0200
Subject: [PATCH 130/194] add verbose parameter to filter_contig_per_cpm.py
 script

---
 modules/filtering_cpm.nf | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/modules/filtering_cpm.nf b/modules/filtering_cpm.nf
index 0155034..cdfe8e5 100644
--- a/modules/filtering_cpm.nf
+++ b/modules/filtering_cpm.nf
@@ -12,7 +12,7 @@ process CHUNK_ASSEMBLY_FILTER {
   script:
     chunk_name = assembly_file.baseName
     """
-    filter_contig_per_cpm.py -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
+    filter_contig_per_cpm.py -v -i ${idxstats} -f ${assembly_file} -c ${min_cpm} -s ${chunk_name}_select_cpm${min_cpm}.fasta -d ${chunk_name}_discard_cpm${min_cpm}.fasta
     """
 }
 
-- 
GitLab


From 60436117ff467e61b976eff7d525949da7f06278 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:35:20 +0200
Subject: [PATCH 131/194] publish bam in reads deduplication

---
 modules/reads_deduplication.nf | 1 +
 1 file changed, 1 insertion(+)

diff --git a/modules/reads_deduplication.nf b/modules/reads_deduplication.nf
index 4731f9b..bce077d 100644
--- a/modules/reads_deduplication.nf
+++ b/modules/reads_deduplication.nf
@@ -2,6 +2,7 @@ process READS_DEDUPLICATION {
   tag "${meta.id}"
   publishDir "${params.outdir}/02_assembly/deduplicated_reads/", mode: 'copy', pattern: '*.fastq.gz'
   publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.fastq.gz'
+  publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.bam*'
   
   input:
   tuple val(meta), path(assembly), path(reads)
-- 
GitLab


From a186a26889578dfaae2fcdca6e24dab471c7f87b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 16:41:10 +0200
Subject: [PATCH 132/194] adjust output of  S03_FILTERING

---
 main.nf | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/main.nf b/main.nf
index 2c53770..48338b6 100644
--- a/main.nf
+++ b/main.nf
@@ -418,7 +418,7 @@ workflow {
   }
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.skip_filtering ) {
-    print("IN FILTERING")
+
     ch_min_contigs_cpm = Channel.value(params.min_contigs_cpm)
 
 
@@ -432,9 +432,10 @@ workflow {
     
     ch_assembly = S03_FILTERING.out.selected_contigs
     ch_bam =  S03_FILTERING.out.bam
-    // ch_sam_coverage = S03_FILTERING.out.coverage
+
+    ch_sam_coverage = S03_FILTERING.out.sam_coverage
     ch_quast_after_filter_report = S03_FILTERING.out.quast_report
-    // ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
+    ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
   }
 
-- 
GitLab


From cb12ad0580f35b6a95c4229f6bdb86aeac85148f Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 17:33:14 +0200
Subject: [PATCH 133/194] cleaning and restructuration of samtools process

---
 main.nf                                |  11 +--
 modules/read_alignment_manipulation.nf | 104 ++++++++++++++++++++++++
 modules/read_alignment_metrics.nf      |  24 ------
 subworkflows/02_assembly.nf            |  15 ++--
 subworkflows/03_filtering.nf           | 105 +++----------------------
 subworkflows/05_alignment.nf           |  27 -------
 subworkflows/08_binning.nf             |   8 +-
 7 files changed, 125 insertions(+), 169 deletions(-)
 create mode 100644 modules/read_alignment_manipulation.nf
 delete mode 100644 modules/read_alignment_metrics.nf

diff --git a/main.nf b/main.nf
index 48338b6..cdd2d19 100644
--- a/main.nf
+++ b/main.nf
@@ -453,20 +453,13 @@ workflow {
     ch_software_versions_S04 = S04_STRUCTURAL_ANNOT.out.software_versions
 	}
 
-  // ch_bam = Channel.empty()
   ch_diamond_result = Channel.empty()
-  // ch_sam_coverage = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot ) {
     S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
-    // ch_bam = S05_ALIGNMENT.out.bam
+
     ch_diamond_result = S05_ALIGNMENT.out.m8
-    // ch_sam_coverage =  S05_ALIGNMENT.out.sam_coverage
 
-    // if (!params.skip_filtering){
-    //   // when filtering is skip reads vs assembly remain unchanged so no need to send it to multiqc
-    //   // ch_final_assembly_flagstat_report = S05_ALIGNMENT.out.sam_flagstat
-    // }
     ch_software_versions_S05 = S05_ALIGNMENT.out.software_versions
   }
 
@@ -486,7 +479,7 @@ workflow {
 	}
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_binning ) {
-    S08_BINNING( ch_reads, ch_annotation_fna, ch_bam, ch_gtbdtk_db, ch_quast )
+    S08_BINNING( ch_reads, ch_assembly, ch_bam, ch_gtbdtk_db, ch_quast )
     ch_bins_abundances_report = S08_BINNING.out.bins_abundances_report
     ch_bins_stats_report = S08_BINNING.out.bins_stats_report
 
diff --git a/modules/read_alignment_manipulation.nf b/modules/read_alignment_manipulation.nf
new file mode 100644
index 0000000..ca0fe5d
--- /dev/null
+++ b/modules/read_alignment_manipulation.nf
@@ -0,0 +1,104 @@
+process GET_ALIGNMENT_METRICS {
+   tag "${meta.id}"
+   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy'
+
+   input:
+      tuple val(meta), path(bam), path(bai)
+      val(publishDir_path)
+
+   output:
+      tuple val(meta), path("${meta.id}.coverage.tsv"), emit: sam_coverage
+      tuple val(meta), path("${meta.id}.idxstats"), emit: sam_idxstat
+      path "${meta.id}.flagstat", emit: sam_flagstat
+      path "${meta.id}*"
+      path "v_samtools.txt", emit: v_samtools
+
+   script:
+      """
+      samtools flagstat -@ ${task.cpus}  ${bam} > ${meta.id}.flagstat
+      samtools coverage  ${bam} > ${meta.id}.coverage.tsv
+      samtools idxstats ${bam} > ${meta.id}.idxstats
+
+      samtools --version &> v_samtools.txt
+      """
+}
+
+
+process FILTER_BAM {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(discarded_contigs), path(bam), path(bai)
+
+   output:
+      tuple val(meta), path("selected_contigs.bam"), emit: selected_contigs_bam
+      tuple val(meta), path("discarded_contigs.bam"), emit: discarded_contigs_bam
+
+
+   script:
+      """
+      
+      samtools faidx $discarded_contigs 
+      awk 'BEGIN {FS="\\t"}; {print \$1 FS "0" FS \$2}' ${discarded_contigs}.fai > discarded_contigs.bed
+
+
+      samtools view -@ ${task.cpus}  -bL discarded_contigs.bed -U selected_contigs.bam  $bam  -o discarded_contigs.bam
+
+
+      """
+}
+
+process EXTRACT_PAIRED_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam)
+
+   output:
+      tuple val(meta), path("reads*.fastq.gz"), emit: reads
+
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus}  -N  -1 reads_R1.fastq.gz -2 reads_R2.fastq.gz $bam
+
+      """
+}
+
+process EXTRACT_SINGLE_READS {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam)
+
+   output:
+      tuple val(meta), path("reads.fastq.gz"), emit: reads
+
+   script:
+      """
+      
+      samtools fastq -@ ${task.cpus} -o reads.fastq.gz $bam
+
+      """
+}
+
+
+
+process MERGE_BAM_FILES {
+   tag "${meta.id}"
+
+   input:
+      tuple val(meta),  path(bam1), path(bam2)
+
+   output:
+      tuple val(meta), path("${meta.id}.filtered.bam"), path("${meta.id}.filtered.bam.bai") , emit: bam
+
+   script:
+      """
+      samtools merge -@ ${task.cpus} -o ${meta.id}.filtered.bam  $bam1 $bam2
+      samtools index -@ ${task.cpus} ${meta.id}.filtered.bam
+
+      """
+}
+
diff --git a/modules/read_alignment_metrics.nf b/modules/read_alignment_metrics.nf
deleted file mode 100644
index ee1bd54..0000000
--- a/modules/read_alignment_metrics.nf
+++ /dev/null
@@ -1,24 +0,0 @@
-process SAMTOOLS {
-   tag "${meta.id}"
-   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy'
-
-   input:
-      tuple val(meta), path(bam), path(bai)
-      val(publishDir_path)
-
-   output:
-      tuple val(meta), path("${meta.id}.coverage.tsv"), emit: sam_coverage
-      tuple val(meta), path("${meta.id}.idxstats"), emit: sam_idxstat
-      path "${meta.id}.flagstat", emit: sam_flagstat
-      path "${meta.id}*"
-      path "v_samtools.txt", emit: v_samtools
-
-   script:
-      """
-      samtools flagstat -@ ${task.cpus}  ${bam} > ${meta.id}.flagstat
-      samtools coverage  ${bam} > ${meta.id}.coverage.tsv
-      samtools idxstats ${bam} > ${meta.id}.idxstats
-
-      samtools --version &> v_samtools.txt
-      """
-}
\ No newline at end of file
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index ee5a207..fe90d44 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -2,7 +2,7 @@ include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; RENAME_CONTIGS } from '..
 include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
+include { GET_ALIGNMENT_METRICS } from '../modules/read_alignment_manipulation'
 
 workflow STEP_02_ASSEMBLY {
   take: 
@@ -67,22 +67,19 @@ workflow STEP_02_ASSEMBLY {
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
       
     } else {
-
-      if (!params.skip_filtering) { 
         MINIMAP2(ch_contigs_and_reads,"02_assembly")
         ch_bam = MINIMAP2.out.bam
 
         ch_minimap2_v = MINIMAP2.out.v_minimap2
         
-      }
     }
 
-    SAMTOOLS(ch_bam, "02_assembly")
+    GET_ALIGNMENT_METRICS(ch_bam, "02_assembly")
 
-    ch_idxstats  = SAMTOOLS.out.sam_idxstat
-    ch_flagstat =  SAMTOOLS.out.sam_flagstat
-    ch_coverage =  SAMTOOLS.out.sam_coverage
-    ch_samtools_v = SAMTOOLS.out.v_samtools
+    ch_idxstats  = GET_ALIGNMENT_METRICS.out.sam_idxstat
+    ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
+    ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
+    ch_samtools_v = GET_ALIGNMENT_METRICS.out.v_samtools
 
     ch_software_versions = ch_assembler_v.first().mix( ch_quast_v.first(),
                                                        ch_bwa_mem_v.first(),
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index 97399ef..be38cd6 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -1,7 +1,7 @@
 include { CHUNK_ASSEMBLY_FILTER; MERGE_ASSEMBLY_FILTER} from '../modules/filtering_cpm.nf'
 include { QUAST } from '../modules/metaquast'
 include { MINIMAP2; BWA_MEM } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
+include { GET_ALIGNMENT_METRICS; FILTER_BAM; EXTRACT_SINGLE_READS; EXTRACT_PAIRED_READS; MERGE_BAM_FILES} from '../modules/read_alignment_manipulation'
 
 workflow STEP_03_ASSEMBLY_FILTER {
   take:
@@ -41,6 +41,9 @@ workflow STEP_03_ASSEMBLY_FILTER {
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
     discarded_contigs = MERGE_ASSEMBLY_FILTER.out.merged_discarded
 
+
+   // Differentiate sample with and without discarded_contigs 
+   // samples with no discarded_contigs are not going to be processed to process 
    discarded_contigs_category = discarded_contigs.branch{
                               without: it[1].isEmpty() 
                               with: !it[1].isEmpty() 
@@ -48,15 +51,9 @@ workflow STEP_03_ASSEMBLY_FILTER {
 
 
    samples_without_discarded_contigs = discarded_contigs_category.without.map{ it -> it[0]}
-   samples_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS: $it"}
    ch_bam_of_sample_without_discarded_contigs = samples_without_discarded_contigs.join(bam)
-   ch_bam_of_sample_without_discarded_contigs.view{"samples WITHOUT DISCARDED CONTIGS AND bam: $it"}
-
-   discarded_contigs_category.without.view { "WITHOUT::::::::: > $it" }
-   discarded_contigs_category.with.view { "WITH::::::::: > $it" }
    
   ch_discarded_contigs_and_bam = discarded_contigs_category.with.join(bam)
-  ch_discarded_contigs_and_bam.view()
 
   FILTER_BAM(ch_discarded_contigs_and_bam)
 
@@ -75,30 +72,24 @@ workflow STEP_03_ASSEMBLY_FILTER {
   } else {
         ch_discarded_reads = EXTRACT_SINGLE_READS(ch_discarded_bam)
         ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
-        MINIMAP2(ch_contigs_and_reads, "03_filtering")
+        MINIMAP2(ch_contigs_and_discarded_reads, "03_filtering")
         ch_bam_with_discarded_reads = MINIMAP2.out.bam
   
   }
 
 
-   // remove bai from ch_bam_with_discarded_reads
+   // remove bai from ch_bam_with_discarded_reads and add bam of selected contigs
   ch_bam_to_merge = ch_bam_with_discarded_reads.map{ it -> [it[0], it[1]]}.join(ch_selected_bam)
 
-
-
-
-
   ch_merged_bam = MERGE_BAM_FILES(ch_bam_to_merge)
 
    ch_final_bam = ch_bam_of_sample_without_discarded_contigs.mix(ch_merged_bam)
 
 
-   ch_final_bam.view { "FINAL BAMMMM::::::::: > $it" }
-
-  SAMTOOLS(ch_final_bam, '03_filtering/')
+  GET_ALIGNMENT_METRICS(ch_final_bam, '03_filtering/')
 
-  ch_flagstat =  SAMTOOLS.out.sam_flagstat
-  ch_coverage =  SAMTOOLS.out.sam_coverage
+  ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
+  ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
 
   QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
   ch_quast_report = QUAST.out.report
@@ -112,81 +103,3 @@ workflow STEP_03_ASSEMBLY_FILTER {
 
 }
 
-
-process FILTER_BAM {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(discarded_contigs), path(bam), path(bai)
-
-   output:
-      tuple val(meta), path("selected_contigs.bam"), emit: selected_contigs_bam
-      tuple val(meta), path("discarded_contigs.bam"), emit: discarded_contigs_bam
-
-
-   script:
-      """
-      
-      samtools faidx $discarded_contigs 
-      awk 'BEGIN {FS="\\t"}; {print \$1 FS "0" FS \$2}' ${discarded_contigs}.fai > discarded_contigs.bed
-
-
-      samtools view -@ ${task.cpus}  -bL discarded_contigs.bed -U selected_contigs.bam  $bam  -o discarded_contigs.bam
-
-
-      """
-}
-
-process EXTRACT_PAIRED_READS {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam) //, path(bai)
-
-   output:
-      tuple val(meta), path("reads*.fastq.gz"), emit: reads
-
-
-   script:
-      """
-      
-      samtools fastq -@ ${task.cpus}  -N  -1 reads_R1.fastq.gz -2 reads_R2.fastq.gz $bam
-
-      """
-}
-
-process EXTRACT_SINGLE_READS {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam), path(bai)
-
-   output:
-      tuple val(meta), path("reads.fastq.gz"), emit: reads
-
-   script:
-      """
-      
-      samtools fastq -@ ${task.cpus} -o reads.fastq.gz $bam
-
-      """
-}
-
-
-
-process MERGE_BAM_FILES {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam1), path(bam2)
-
-   output:
-      tuple val(meta), path("${meta.id}.filtered.bam"), path("${meta.id}.filtered.bam.bai") , emit: bam
-
-   script:
-      """
-      samtools merge -@ ${task.cpus} -o ${meta.id}.filtered.bam  $bam1 $bam2
-      samtools index -@ ${task.cpus} ${meta.id}.filtered.bam
-
-      """
-}
diff --git a/subworkflows/05_alignment.nf b/subworkflows/05_alignment.nf
index 191d20f..9902230 100644
--- a/subworkflows/05_alignment.nf
+++ b/subworkflows/05_alignment.nf
@@ -1,37 +1,13 @@
-include { MINIMAP2; BWA_MEM } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
 include { DIAMOND } from '../modules/diamond'
 
 workflow STEP_05_ALIGNMENT {
     take:
-        // contigs_and_reads
         prokka_faa
         diamond
 
 	main:
-        // ch_bwa_mem_v = Channel.empty()
-        // ch_minimap2_v = Channel.empty()
-        // ch_samtools_v = Channel.empty()
         ch_diamond_v = Channel.empty()
 
-        // publishDir = "05_alignment/05_1_reads_alignment_on_contigs"
-        // if (params.type == 'SR') {
-        //     BWA_MEM(contigs_and_reads, publishDir)
-        //     ch_bam = BWA_MEM.out.bam
-
-        //     ch_bwa_mem_v = BWA_MEM.out.v_bwa_mem2
-        //     ch_samtools_v = BWA_MEM.out.v_samtools
-        // } else {
-        //     MINIMAP2(contigs_and_reads, publishDir)
-        //     ch_bam = MINIMAP2.out.bam
-
-        //     ch_minimap2_v = MINIMAP2.out.v_minimap2
-        //     ch_samtools_v = MINIMAP2.out.v_samtools
-        // }
-        
-        // SAMTOOLS(ch_bam, publishDir)
-        // ch_sam_coverage = SAMTOOLS.out.sam_coverage
-        // ch_sam_flagstat = SAMTOOLS.out.sam_flagstat
 
         ch_m8 =Channel.empty()
         if (!params.skip_func_annot || !params.skip_taxo_affi){
@@ -43,9 +19,6 @@ workflow STEP_05_ALIGNMENT {
             ch_diamond_v = DIAMOND.out.v_diamond
         }
     emit:
-        // bam = ch_bam
         m8 = ch_m8
-        // sam_coverage = ch_sam_coverage
         software_versions = ch_diamond_v.first()
-        // sam_flagstat = ch_sam_flagstat
     }
diff --git a/subworkflows/08_binning.nf b/subworkflows/08_binning.nf
index 97df1a6..59b9c7b 100644
--- a/subworkflows/08_binning.nf
+++ b/subworkflows/08_binning.nf
@@ -2,7 +2,7 @@ include { GENERATE_DEPTH_FILES; METABAT2; MAXBIN2; CONCOCT; METAWRAP_REFINMENT;
 include { CHECKM2 } from '../modules/checkm2'
 include { DREP } from '../modules/drep'
 include { BWA_MEM;BWA_MEM as BWA_MEM_CROSS_ALIGNMENT; MINIMAP2; MINIMAP2 as MINIMAP2_CROSS_ALIGNMENT } from '../modules/read_alignment'
-include { SAMTOOLS } from '../modules/read_alignment_metrics'
+include { GET_ALIGNMENT_METRICS } from '../modules/read_alignment_manipulation'
 include { GTDBTK } from '../modules/gtdbtk'
 include { GENOMES_ABUNDANCES_PER_SAMPLE; ADD_QUAST_INFO_TO_BINS; BINS_STATS_TO_MUTLIQC_FORMAT} from '../modules/sum_up_bins_informations'
 
@@ -213,11 +213,11 @@ workflow STEP_08_BINNING {
 
   ch_collect_coverages = Channel.empty()
   ch_collect_flagstats = Channel.empty()
-  SAMTOOLS(ch_bam, "08_binning/08_4_mapping_on_final_bins/stats")
+  GET_ALIGNMENT_METRICS(ch_bam, "08_binning/08_4_mapping_on_final_bins/stats")
 
-  ch_collect_coverages = SAMTOOLS.out.sam_coverage.map {id, file -> file}
+  ch_collect_coverages = GET_ALIGNMENT_METRICS.out.sam_coverage.map {id, file -> file}
               .collect()
-  ch_collect_flagstats = SAMTOOLS.out.sam_flagstat.collect()
+  ch_collect_flagstats = GET_ALIGNMENT_METRICS.out.sam_flagstat.collect()
 
   GENOMES_ABUNDANCES_PER_SAMPLE(ch_collect_coverages, ch_collect_flagstats, \
    ch_bins_drep, DREP.out.output_drep_stats, GTDBTK.out.gtdbtk_affiliations_predictions,
-- 
GitLab


From ae9017be411d1df521afb65d55ffdd9d3f6adafa Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 25 Oct 2022 17:33:49 +0200
Subject: [PATCH 134/194] comment prokka warning

---
 docs/usage.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/usage.md b/docs/usage.md
index 672fa3a..d0b1a4c 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -300,7 +300,7 @@ No parameter available for this substep.
 No parameters.
 
 **WARNING 6:** `S04_STRUCTURAL_ANNOT` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY` and `S03_FILTERING` steps (if you use it). You need to use the mandatory files of these four steps to run `S04_STRUCTURAL_ANNOT`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 6**.
-
+<!-- 
 **WARNING 7:** if you haven't previously done `S03_FILTERING`, calculation time of `S04_STRUCTURAL_ANNOT` can be important. Some cluster queues have defined calculation time, you need to adapt the queue you use to your data.
 > For example, if you are on [genologin cluster](http://bioinfo.genotoul.fr/) and you haven't done the `S03_FILTERING` step, you can write a `nextflow.config` file in your working directory containing these lines:
 > ```bash
@@ -308,7 +308,7 @@ No parameters.
 >  queue = 'unlimitq'
 > }
 > ```
-> This will launch the `Prokka` command line of step `04_STRUCTURAL_ANNOT` on a calculation queue (`unlimitq`) where the job can last more than 4 days (which is not the case for the usual `workq` queue).
+> This will launch the `Prokka` command line of step `04_STRUCTURAL_ANNOT` on a calculation queue (`unlimitq`) where the job can last more than 4 days (which is not the case for the usual `workq` queue). -->
 
 #### **`S05_ALIGNMENT` step:**
 
-- 
GitLab


From fba3aa0cd4f4b460ae8cb680b3297c264768e6b7 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 26 Oct 2022 12:55:33 +0200
Subject: [PATCH 135/194] correct unsolved conflict

---
 bin/merge_annotations.py | 13 -------------
 1 file changed, 13 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 8aa0ea3..d18ebd0 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -206,19 +206,6 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
 
 
 
-<<<<<<< HEAD
-                start_zero, end_zero = int(feature['start'])-1, int(feature['end'])
-                
-                if feature['strand'] == "+":
-                    feature_seq = contig_fa[contig][start-1:end].seq
-                else:
-                    # minus strand: reverse complement the sequence
-                    feature_seq = contig_fa[contig][start-1:end].antisense
-
-                fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
-
-=======
->>>>>>> 734ac13e66692f25d221fb22bd2204737a2875f1
 
 
 def main():
-- 
GitLab


From de39906a8397c9162f46d213c6976a77b1b76656 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Thu, 27 Oct 2022 16:22:31 +0200
Subject: [PATCH 136/194] add the possibility to have a gzip reference genome
 #202

---
 bin/db_versions.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/bin/db_versions.py b/bin/db_versions.py
index becb567..7179672 100755
--- a/bin/db_versions.py
+++ b/bin/db_versions.py
@@ -3,6 +3,7 @@
 import argparse
 import subprocess
 import os.path
+import gzip 
 
 def info_db(file):
 	name=file.split()[0]
@@ -22,8 +23,11 @@ def info_db(file):
 
 
 def get_genome_seq_count(genome_path):
+
 	seq_count = 0
-	with open(genome_path,"r") as fh:
+
+	proper_open = gzip.open if genome_path.endswith('.gz') else open
+	with proper_open(genome_path,"r") as fh:
 		for l in fh:
 			if l.startswith('>'):
 				seq_count += 1 
-- 
GitLab


From fe4a7ecf18f58da660c2c6a2714be46c08ae29d9 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 28 Oct 2022 11:12:00 +0200
Subject: [PATCH 137/194] add proper opening to read gzip file #202

---
 bin/db_versions.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bin/db_versions.py b/bin/db_versions.py
index 7179672..3088ea3 100755
--- a/bin/db_versions.py
+++ b/bin/db_versions.py
@@ -27,7 +27,7 @@ def get_genome_seq_count(genome_path):
 	seq_count = 0
 
 	proper_open = gzip.open if genome_path.endswith('.gz') else open
-	with proper_open(genome_path,"r") as fh:
+	with proper_open(genome_path,"rt") as fh:
 		for l in fh:
 			if l.startswith('>'):
 				seq_count += 1 
-- 
GitLab


From 157d2189915f0cf1b36caf2514641ec25ad0030b Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 2 Nov 2022 14:01:24 +0100
Subject: [PATCH 138/194] add gene line gff file

---
 bin/merge_annotations.py | 22 ++++++++++++++++------
 1 file changed, 16 insertions(+), 6 deletions(-)

diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index d18ebd0..afa038a 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -139,10 +139,10 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
             logging.info(f'{contig} has only rna annotation')
             yield contig, rnas
 
-def add_new_ID_tag(gff_attributes, new_id):
+def add_new_ID_tag_and_Parent(gff_attributes, new_id, parent_id):
 
-    gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] != 'ID'])
-    return f"ID={new_id};{gff_attributes_no_id}"
+    gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] not in ['ID', 'Parent']])
+    return f"ID={new_id};Parent={parent_id};{gff_attributes_no_id}"
 
 
 def get_tag_value(gff_attribute, tag):
@@ -168,6 +168,7 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
             for feature in sorted(features, key=lambda x: int(x['start'])):
                 gene_count[feature['feature']] += 1 
                 new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
+                parent_id = f"{new_id}_gene"
 
                 start, end = int(feature['start']), int(feature['end'])
                 
@@ -183,11 +184,20 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
            
                     
                 # Write gff and ffn 
-                feature['attribute'] = add_new_ID_tag(feature['attribute'], new_id)
+                feature['attribute'] = add_new_ID_tag_and_Parent(feature['attribute'], new_id, parent_id)
+
+                # gff line with CDS/tRNA or rRNA in feature column
+                feature_gff_line = '\t'.join(feature.values())
+
+                # gff line with gene in feature column
+                feature['feature'] = 'gene'
+                feature['attribute'] = f'ID={parent_id};locus_tag={new_id}'
+                gene_gff_line = '\t'.join(feature.values())
+
+                fh_gff.write(f'{gene_gff_line}\n{feature_gff_line}\n') 
 
                 tag_name = get_tag_value(feature['attribute'], 'Name')
-                fh_gff.write('\t'.join(feature.values())+"\n")
-                
+
                 if feature['strand'] == "+":
                     feature_seq = contig_fa[contig][start-1:end].seq
                 else:
-- 
GitLab


From 160e6e786ce6b17a2f561c23a4f89c4ca6e7ac62 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 2 Nov 2022 14:17:15 +0100
Subject: [PATCH 139/194] add old name as description of renamed sequenced to
 keep it

---
 bin/rename_contigs.py | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/bin/rename_contigs.py b/bin/rename_contigs.py
index 0734c9c..264d9cf 100755
--- a/bin/rename_contigs.py
+++ b/bin/rename_contigs.py
@@ -64,8 +64,8 @@ def main():
 
     logging.info(f'Writting renamed fasta file in {out_fna}')
     with open(out_fna, "w") as fh_fna:
-        for i, (_, seq) in enumerate(pyfastx.Fasta(fna_file, build_index=False)):
-            fh_fna.write(f'>{sample}_c{i+1}\n{seq}\n')
+        for i, (name, seq) in enumerate(pyfastx.Fasta(fna_file, build_index=False)):
+            fh_fna.write(f'>{sample}_c{i+1} {name}\n{seq}\n')
 
 if __name__ == '__main__':
     main()
\ No newline at end of file
-- 
GitLab


From f5c608a55e67e7c668734a78a23a5a9491f5bda1 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 2 Nov 2022 14:27:34 +0100
Subject: [PATCH 140/194] add flag skip_alignment to skip step 05

---
 main.nf | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/main.nf b/main.nf
index cdd2d19..8339cab 100644
--- a/main.nf
+++ b/main.nf
@@ -77,6 +77,7 @@ include { MERGE_FASTQ } from './modules/merge_fastq.nf'
      S05_ALIGNMENT options:
        --diamond_bank                Path to diamond bank used to align protein sequence of genes: "PATH/bank.dmnd".
                                      This bank must be previously built with diamond makedb.
+       --skip_alignment              Skip this step
        
      S06_FUNC_ANNOT options:
        --skip_func_annot             Skip this step
@@ -455,7 +456,7 @@ workflow {
 
   ch_diamond_result = Channel.empty()
 
-  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot ) {
+  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_alignment) {
     S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
 
     ch_diamond_result = S05_ALIGNMENT.out.m8
@@ -465,14 +466,14 @@ workflow {
 
   ch_quant_report = Channel.empty()
   ch_v_eggnogmapper = Channel.empty()
-  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot ) {
+  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot && !params.skip_alignment) {
       S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_diamond_result, ch_eggnog_db )
       ch_quant_report = S06_FUNC_ANNOT.out.quant_report
 
       ch_software_versions_S06 = S06_FUNC_ANNOT.out.software_versions
   }
 
-	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi ) {
+	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi && !params.skip_alignment) {
 		S07_TAXO_AFFI ( ch_taxonomy, ch_diamond_result, ch_sam_coverage)
 
     ch_software_versions_S07 = S07_TAXO_AFFI.out.software_versions
-- 
GitLab


From e4479d10ea3e129adc1c53e6a1e3f17a0b500796 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 4 Nov 2022 15:58:10 +0100
Subject: [PATCH 141/194] Improve fasta parsing

---
 bin/Bins_per_sample_summarize.py | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/bin/Bins_per_sample_summarize.py b/bin/Bins_per_sample_summarize.py
index fce7b72..89efa2b 100755
--- a/bin/Bins_per_sample_summarize.py
+++ b/bin/Bins_per_sample_summarize.py
@@ -45,13 +45,14 @@ def bins_contigs_compositions(folder):
     contigs_to_bins = dict()
     list_bins = list()
     for fi in os.listdir(folder):
-        with open(folder + "/" + fi,'r') as bin_file:
+        bin_fasta_file = os.path.join(folder, fi)
+        with open(bin_fasta_file) as bin_file:
             bin_name = fi.rsplit('.', maxsplit=1)[0]
             if bin_name not in list_bins:
                 list_bins.append(bin_name)
             for line in bin_file:
                 if line.startswith('>'):
-                    contig_name = line.strip().lstrip('>')
+                    contig_name = line.split()[0].strip().lstrip('>')
                     contigs_to_bins[contig_name] = bin_name
 
     return contigs_to_bins, list_bins
-- 
GitLab


From 391de61a607efd8fc247fc5934059a85b4108c6d Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 4 Nov 2022 15:58:41 +0100
Subject: [PATCH 142/194] add meta to quast report because it is needed in
 binning step

---
 main.nf              | 9 +++++++--
 modules/metaquast.nf | 2 +-
 2 files changed, 8 insertions(+), 3 deletions(-)

diff --git a/main.nf b/main.nf
index 8339cab..418f850 100644
--- a/main.nf
+++ b/main.nf
@@ -414,7 +414,9 @@ workflow {
     ch_idxstats = S02_ASSEMBLY.out.idxstats
     ch_unfilter_assembly_flagstat_report = S02_ASSEMBLY.out.flagstat
 
-    ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
+    ch_quast = S02_ASSEMBLY.out.assembly_report
+    ch_quast_before_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+
     ch_software_versions_S02 = S02_ASSEMBLY.out.software_versions
   }
 
@@ -435,7 +437,10 @@ workflow {
     ch_bam =  S03_FILTERING.out.bam
 
     ch_sam_coverage = S03_FILTERING.out.sam_coverage
-    ch_quast_after_filter_report = S03_FILTERING.out.quast_report
+
+    ch_quast = S03_FILTERING.out.quast_report
+    ch_quast_after_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+
     ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
   }
diff --git a/modules/metaquast.nf b/modules/metaquast.nf
index dee90d5..dbaa508 100644
--- a/modules/metaquast.nf
+++ b/modules/metaquast.nf
@@ -9,7 +9,7 @@ process QUAST {
 
     output:
         path "${outdir}/${meta.id}/*", emit: all
-        path "${outdir}/${meta.id}/report.tsv", emit: report
+        tuple val(meta), path ("${outdir}/${meta.id}/report.tsv"), emit: report
         path "v_quast.txt", emit: v_quast
 
     script:
-- 
GitLab


From d16b0f1ea95dfc8c056e393d55050a944e1aecf2 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 7 Nov 2022 13:02:04 +0100
Subject: [PATCH 143/194] add skip_alignment in config

---
 nextflow.config | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/nextflow.config b/nextflow.config
index 9e86698..1516f4c 100644
--- a/nextflow.config
+++ b/nextflow.config
@@ -43,6 +43,9 @@ params {
     // Step
     stop_at_structural_annot = false
 
+    // Optional step
+    skip_alignment = false
+
     // Optional step
     skip_func_annot = false
 
-- 
GitLab


From 61e8be3c6045abfa7c92b7e995147ab62b1b5f74 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 7 Nov 2022 15:45:40 +0100
Subject: [PATCH 144/194] remove skip_alignment flag

---
 main.nf                      |  9 ++++-----
 subworkflows/05_alignment.nf | 21 +++++++++++----------
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/main.nf b/main.nf
index 418f850..5d5d849 100644
--- a/main.nf
+++ b/main.nf
@@ -77,7 +77,6 @@ include { MERGE_FASTQ } from './modules/merge_fastq.nf'
      S05_ALIGNMENT options:
        --diamond_bank                Path to diamond bank used to align protein sequence of genes: "PATH/bank.dmnd".
                                      This bank must be previously built with diamond makedb.
-       --skip_alignment              Skip this step
        
      S06_FUNC_ANNOT options:
        --skip_func_annot             Skip this step
@@ -461,24 +460,24 @@ workflow {
 
   ch_diamond_result = Channel.empty()
 
-  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_alignment) {
+  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && (!params.skip_func_annot || !params.skip_taxo_affi)) {
     S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
 
-    ch_diamond_result = S05_ALIGNMENT.out.m8
+    ch_diamond_result = S05_ALIGNMENT.out.diamond_result
 
     ch_software_versions_S05 = S05_ALIGNMENT.out.software_versions
   }
 
   ch_quant_report = Channel.empty()
   ch_v_eggnogmapper = Channel.empty()
-  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot && !params.skip_alignment) {
+  if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_func_annot) {
       S06_FUNC_ANNOT ( ch_annotation_ffn, ch_annotation_faa, ch_annotation_gff, ch_bam, ch_diamond_result, ch_eggnog_db )
       ch_quant_report = S06_FUNC_ANNOT.out.quant_report
 
       ch_software_versions_S06 = S06_FUNC_ANNOT.out.software_versions
   }
 
-	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi && !params.skip_alignment) {
+	if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_taxo_affi) {
 		S07_TAXO_AFFI ( ch_taxonomy, ch_diamond_result, ch_sam_coverage)
 
     ch_software_versions_S07 = S07_TAXO_AFFI.out.software_versions
diff --git a/subworkflows/05_alignment.nf b/subworkflows/05_alignment.nf
index 9902230..9017d47 100644
--- a/subworkflows/05_alignment.nf
+++ b/subworkflows/05_alignment.nf
@@ -9,16 +9,17 @@ workflow STEP_05_ALIGNMENT {
         ch_diamond_v = Channel.empty()
 
 
-        ch_m8 =Channel.empty()
-        if (!params.skip_func_annot || !params.skip_taxo_affi){
-            DIAMOND (
-                prokka_faa,
-                diamond
-            )
-            ch_m8 = DIAMOND.out.m8
-            ch_diamond_v = DIAMOND.out.v_diamond
-        }
+        ch_diamond_result =Channel.empty()
+        
+        DIAMOND (
+            prokka_faa,
+            diamond,
+        )
+
+        ch_diamond_result = DIAMOND.out.m8
+        ch_diamond_v = DIAMOND.out.v_diamond
+        
     emit:
-        m8 = ch_m8
+        diamond_result = ch_diamond_result
         software_versions = ch_diamond_v.first()
     }
-- 
GitLab


From 242ed941406e2f1811554dbc633879075a429f72 Mon Sep 17 00:00:00 2001
From: VIENNE MAINA <maina.vienne@inrae.fr>
Date: Tue, 8 Nov 2022 10:45:26 +0100
Subject: [PATCH 145/194] refactoring

---
 bin/{aln2taxaffi.py => aln_to_tax_affi.py}    |  2 +-
 ...marize.py => bins_per_sample_summarize.py} |  4 +-
 ...ge_abundance_and_functional_annotations.py | 20 +++-----
 bin/merge_annotations.py                      |  2 +-
 bin/merge_kaiju_results.py                    | 19 +++----
 ...clusters.py => quantification_clusters.py} | 49 +++++++------------
 modules/assign_taxonomy.nf                    |  2 +-
 modules/feature_counts.nf                     |  2 +-
 modules/sum_up_bins_informations.nf           |  4 +-
 9 files changed, 41 insertions(+), 63 deletions(-)
 rename bin/{aln2taxaffi.py => aln_to_tax_affi.py} (99%)
 rename bin/{Bins_per_sample_summarize.py => bins_per_sample_summarize.py} (99%)
 rename bin/{Quantification_clusters.py => quantification_clusters.py} (88%)

diff --git a/bin/aln2taxaffi.py b/bin/aln_to_tax_affi.py
similarity index 99%
rename from bin/aln2taxaffi.py
rename to bin/aln_to_tax_affi.py
index 241d836..6635297 100755
--- a/bin/aln2taxaffi.py
+++ b/bin/aln_to_tax_affi.py
@@ -1,7 +1,7 @@
 #!/usr/bin/env python3
 
 """----------------------------------------------------------------------------
-  Script Name: aln2taxaffi.py
+  Script Name: aln_to_tax_affi.py
   Description:
   Input files: File with correspondence between accession ids and taxon ids, \
   taxonomy directory and diamond output file (.m8)
diff --git a/bin/Bins_per_sample_summarize.py b/bin/bins_per_sample_summarize.py
similarity index 99%
rename from bin/Bins_per_sample_summarize.py
rename to bin/bins_per_sample_summarize.py
index 89efa2b..08e7112 100755
--- a/bin/Bins_per_sample_summarize.py
+++ b/bin/bins_per_sample_summarize.py
@@ -1,7 +1,7 @@
 #!/usr/bin/env python
 
 """----------------------------------------------------------------------------
-  Script Name: Bins_per_sample.py
+  Script Name: bins_per_sample_summarize.py
   Description: Generate abundances table of bins between samples, with also \
                taxonomic and genomes informations from gtdb-tk and Checkm2.
   Input files: Samtools coverages anf flagstats files per sample, .fasta file of bins, \
@@ -307,4 +307,4 @@ def main():
     write_report_file(general_table, args.report_file, args.checkm_file, args.table_file)
 
 if __name__ == '__main__':
-    main()
\ No newline at end of file
+    main()
diff --git a/bin/merge_abundance_and_functional_annotations.py b/bin/merge_abundance_and_functional_annotations.py
index 3885286..614b123 100755
--- a/bin/merge_abundance_and_functional_annotations.py
+++ b/bin/merge_abundance_and_functional_annotations.py
@@ -28,18 +28,14 @@ __status__ = 'dev'
 # Status: dev.
 
 # Modules importation.
-try:
-    import argparse
-    import re
-    import sys
-    import pandas as pd
-    from datetime import datetime
-except ImportError as error:
-    print(error)
-    exit(1)
-
-# Print time.
-print(str(datetime.now()))
+
+import argparse
+import re
+import sys
+import pandas as pd
+from datetime import datetime
+
+
 
 # Manage parameters.
 parser = argparse.ArgumentParser(description = 'Script which join \
diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index afa038a..4b35037 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -268,4 +268,4 @@ def main():
     
 
 if __name__ == '__main__':
-    main()
\ No newline at end of file
+    main()
diff --git a/bin/merge_kaiju_results.py b/bin/merge_kaiju_results.py
index 9980126..25cdb1c 100755
--- a/bin/merge_kaiju_results.py
+++ b/bin/merge_kaiju_results.py
@@ -21,18 +21,13 @@ __status__ = 'dev'
 # Status: dev.
 
 # Modules importation.
-try:
-    import argparse
-    import re
-    import sys
-    import pandas as pd
-    from datetime import datetime
-except ImportError as error:
-    print(error)
-    exit(1)
-
-# Print time.
-print(str(datetime.now()))
+
+import argparse
+import re
+import sys
+import pandas as pd
+from datetime import datetime
+
 
 # Manage parameters.
 parser = argparse.ArgumentParser(description = 'Script which join \
diff --git a/bin/Quantification_clusters.py b/bin/quantification_clusters.py
similarity index 88%
rename from bin/Quantification_clusters.py
rename to bin/quantification_clusters.py
index 49f4ad4..84c7367 100755
--- a/bin/Quantification_clusters.py
+++ b/bin/quantification_clusters.py
@@ -1,15 +1,14 @@
 #!/usr/bin/env python
 
 """--------------------------------------------------------------------
-  Script Name: Quantification_clusters.py
+  Script Name: quantification_clusters.py
   Description: Create a file which join
                table with global cluster id and intermediate cluster id
                to table with intermediate cluster id and genes id.
                Create a file which contains
                sum of reads aligned
                to each gene of a cluster.
-  Input files:
-               1st input file: table_clstr.txt (table with cluster id
+  Input files: 1st input file: table_clstr.txt (table with cluster id
                and corresponding intermediate cluster ids)
                2nd input file: file containing list of file names
                generated with 1st cd-hit for each sample
@@ -17,7 +16,7 @@
                3rd input file: file containing list of file names
                generated with featureCounts for each sample
                (.featureCounts.count files)
-  Created By:  Joanna Fourquet et Celine Noirot
+  Created By:  Joanna Fourquet and Celine Noirot
   Date:        2019-04-11
 -----------------------------------------------------------------------
 """
@@ -34,14 +33,11 @@ __status__ = 'dev'
 # Status: dev.
 
 # Modules importation.
-try:
-    import argparse
-    import re
-    import sys
-    from datetime import datetime
-except ImportError as error:
-    print(error)
-    exit(1)
+import argparse
+import re
+import sys
+from datetime import datetime
+
 
 # Print time.
 print(str(datetime.now()))
@@ -52,22 +48,22 @@ correspondence table between global cluster id and gene id and \
 a table with number of aligned reads in each sample and for each \
 global cluster id.')
 
-parser.add_argument('-t', '--table_of_corespondences', required = True, \
+parser.add_argument('-t', '--table_of_corespondences', required = True, 
 help = 'Correspondence table between global cluster \
 id and intermediate cluster id.')
 
-parser.add_argument('-l', '--list_of_file_clusters', required = True, \
+parser.add_argument('-l', '--list_of_file_clusters', required = True, 
 help = 'List of files containing correspondence tables between \
 cluster intermediate cluster id and gene id per sample.')
 
-parser.add_argument('-c', '--list_of_file_counts', required = True, \
+parser.add_argument('-c', '--list_of_file_counts', required = True, 
 help = 'List of files storing read counts for each gene per sample.')
 
-parser.add_argument('-oc', '--output_counts', required = True, \
+parser.add_argument('-oc', '--output_counts', required = True, 
 help = 'Name of output file containing counts \
 for each global cluster id and each sample.')
 
-parser.add_argument('-oid', '--output_id', required = True, \
+parser.add_argument('-oid', '--output_id', required = True, 
 help = 'Name of output file containing correspondence table \
 between global cluster id and gene id.')
 
@@ -100,8 +96,6 @@ with open(args.table_of_corespondences) as fp:
 print(d_g_clstr_id_by_int_clstr_id)
 print(d_count_by_g_clstr)
 
-# Print date.
-print(str(datetime.now()))
 
 # Initialization of dictionnary d_g_clstr_id_by_gene_id.
 d_g_clstr_id_by_gene_id = {}
@@ -127,10 +121,7 @@ for int_clstr_gene_path in files_of_int_clstr_id_gene_id:
             print(line_int_clstr_gene)
             int_clstr_id = line_int_clstr_gene[0]
             gene_id_from_clstr_gene_path = line_int_clstr_gene[1]
-            if \
-            'd_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path]' \
-             not in d_g_clstr_id_by_gene_id:
-                print("if")
+            if 'd_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path]' not in d_g_clstr_id_by_gene_id:
                 d_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path] \
                 = d_g_clstr_id_by_int_clstr_id[int_clstr_id]
             else:
@@ -139,8 +130,7 @@ for int_clstr_gene_path in files_of_int_clstr_id_gene_id:
 
 print(d_g_clstr_id_by_gene_id)
 
-# Print date.
-print(str(datetime.now()))
+
 
 # For each count file (output of featureCounts), reading of lines one by one,
 # recovery of name of gene and count number and incrementing of corresponding
@@ -157,8 +147,7 @@ for (count_idx,counts_path) in enumerate(sorted(files_of_counts)):
             d_count_by_g_clstr[d_g_clstr_id_by_gene_id[gene_id]]\
             [count_idx] += gene_count
 
-# Print date.
-print(str(datetime.now()))
+
 
 #######################################
 # Write in the output files.
@@ -178,8 +167,7 @@ with open(args.output_id,"w") as foutput_res_table:
         + gene_id \
         + "\n")
 
-# Print date.
-print(str(datetime.now()))
+
 
 # Write output file containing global cluster id and read count for each sample.
 with open(args.output_counts,"w") as foutput_res_counts:
@@ -192,5 +180,4 @@ with open(args.output_counts,"w") as foutput_res_counts:
         + "\t".join([str(i) for i in count])\
         + "\n")
 
-# Print date.
-print(str(datetime.now()))
+
diff --git a/modules/assign_taxonomy.nf b/modules/assign_taxonomy.nf
index 559c06c..9634f94 100644
--- a/modules/assign_taxonomy.nf
+++ b/modules/assign_taxonomy.nf
@@ -38,7 +38,7 @@ process ASSIGN_TAXONOMY {
     fi
 
 
-    aln2taxaffi.py -a ${accession2taxid} --taxonomy \$new_taxdump_var \
+    aln_to_tax_affi.py -a ${accession2taxid} --taxonomy \$new_taxdump_var \
                   -o ${meta.id} -b ${m8} --keep_only_best_aln  \
                    -v --write_top_taxons 
     merge_contig_quantif_perlineage.py -c ${meta.id}.percontig.tsv -s ${sam_coverage} -o ${meta.id}
diff --git a/modules/feature_counts.nf b/modules/feature_counts.nf
index 97587cc..73ec38c 100644
--- a/modules/feature_counts.nf
+++ b/modules/feature_counts.nf
@@ -37,7 +37,7 @@ process QUANTIFICATION_TABLE {
     """
     ls ${clusters_contigs} | cat > List_of_contigs_files.txt
     ls ${counts_files} | cat > List_of_count_files.txt
-    Quantification_clusters.py -t ${global_clusters_clusters} -l List_of_contigs_files.txt -c List_of_count_files.txt -oc Clusters_Count_table_all_samples.txt -oid Correspondence_global_clstr_genes.txt
+    quantification_clusters.py -t ${global_clusters_clusters} -l List_of_contigs_files.txt -c List_of_count_files.txt -oc Clusters_Count_table_all_samples.txt -oid Correspondence_global_clstr_genes.txt
     """
 }
 
diff --git a/modules/sum_up_bins_informations.nf b/modules/sum_up_bins_informations.nf
index d09a2a1..842b43c 100644
--- a/modules/sum_up_bins_informations.nf
+++ b/modules/sum_up_bins_informations.nf
@@ -18,7 +18,7 @@ process GENOMES_ABUNDANCES_PER_SAMPLE {
    script:
       """
       mkdir -p stats
-      Bins_per_sample_summarize.py --list_of_coverage_files ${coverage_files} \
+      bins_per_sample_summarize.py --list_of_coverage_files ${coverage_files} \
       --list_of_flagstats_files ${flagstats_files} --affiliations_predictions ${affiliations_predictions} \
       --bins_folder ${bins_folder} --genomes_informations ${genomes_informations} \
       --output_file genomes_abundances.tsv --report_file stats/genomes_abundances_mqc.tsv \
@@ -76,4 +76,4 @@ process BINS_STATS_TO_MUTLIQC_FORMAT {
    cat bin_size_per_quality.tsv >> bin_size_per_quality_mqc.tsv
 
    """
-}
\ No newline at end of file
+}
-- 
GitLab


From 33eb4300f86ba892fd23658857a3f16a38a011f0 Mon Sep 17 00:00:00 2001
From: VIENNE MAINA <maina.vienne@inrae.fr>
Date: Tue, 8 Nov 2022 10:53:03 +0100
Subject: [PATCH 146/194] Fix filter_diamond_hits.py

---
 bin/filter_diamond_hits.py | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/bin/filter_diamond_hits.py b/bin/filter_diamond_hits.py
index 375542a..a29e514 100755
--- a/bin/filter_diamond_hits.py
+++ b/bin/filter_diamond_hits.py
@@ -68,9 +68,8 @@ def get_all_hits_per_query(blast_result_file):
 def is_identity_and_coverage_ok(hit, min_identity, min_coverage):
 
     qcovhsp = (int(hit["qend"]) - int(hit["qstart"]) + 1) / int(hit['qlen'])
-    if float(hit['pident']) >= min_identity or qcovhsp >= min_coverage:
-        return True
-    return False
+    return float(hit['pident']) >= min_identity and qcovhsp >= min_coverage
+
 
 
 def parse_arguments():
-- 
GitLab


From c1348c83c82fa721496030787c11f06e542f7a58 Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Tue, 8 Nov 2022 11:25:35 +0100
Subject: [PATCH 147/194] pep8 modifs

---
 bin/aln_to_tax_affi.py           | 56 ++++++++++----------
 bin/bins_per_sample_summarize.py | 90 +++++++++++++++++---------------
 2 files changed, 78 insertions(+), 68 deletions(-)

diff --git a/bin/aln_to_tax_affi.py b/bin/aln_to_tax_affi.py
index 6635297..a887609 100755
--- a/bin/aln_to_tax_affi.py
+++ b/bin/aln_to_tax_affi.py
@@ -82,15 +82,15 @@ def parse_arguments():
                         help="Keep only diamond alignments with top alignment score. (overrides --top)", action="store_true")
 
     parser.add_argument('--write_top_taxons',
-                    help="""Write top taxons per contig for each rank 
+                    help="""Write top taxons per contig for each rank
                     with their weigth associated in 'top_taxons_per_contig.tsv'.
-                    Can be helpful to understand the affiliations made.""", 
+                    Can be helpful to understand the affiliations made.""",
                     action="store_true")
-                    
+
     parser.add_argument('--write_top_taxons_verbose',
-                    help="""Write top taxons per contig for each rank 
+                    help="""Write top taxons per contig for each rank
                     with their weigth associated in a verbose mode 'top_taxons_per_contig_verbose.tsv'.
-                    Can be helpful to understand the affiliations made.""", 
+                    Can be helpful to understand the affiliations made.""",
                     action="store_true")
 
     parser.add_argument("--query_length_file",
@@ -357,14 +357,15 @@ def get_taxid_consensus(collate_table, main_ranks):
             if dP > MIN_FRACTION:
                 logging.debug(f'-->dP OK {best_taxid}')
                 return best_taxid
-                #(fullnamelineage_text, fullnamelineage_ids) = d_taxonomy[str(sortCollate[0][0])].lineage_main_level()
-                #tax_id_keep = str(sortCollate[0][0])
+                # (fullnamelineage_text, fullnamelineage_ids) = d_taxonomy[str(sortCollate[0][0])].lineage_main_level()
+                # tax_id_keep = str(sortCollate[0][0])
                 # return (tax_id_keep, fullnamelineage_text, fullnamelineage_ids)
     return 1  # (1," Unable to find taxonomy consensus",1)
 
+
 def get_top_taxid(collate_table, main_ranks):
     top_taxons_per_rank = {}
-    
+
     for rank in main_ranks[::-1]:
         collate = collate_table[rank]
         if not collate:
@@ -374,9 +375,9 @@ def get_top_taxid(collate_table, main_ranks):
         sortCollate = sorted(list(collate.items()), key=operator.itemgetter(1), reverse=True)
         logging.debug(f"{rank}, {sortCollate}, sum score {dWeight}")
 
-        top_taxids = [(taxid, taxid_score/dWeight) for  taxid, taxid_score in sortCollate if taxid_score/dWeight > 0.01]
+        top_taxids = [(taxid, taxid_score/dWeight) for taxid, taxid_score in sortCollate if taxid_score/dWeight > 0.01]
         top_taxons_per_rank[rank] = top_taxids
-            
+
     return top_taxons_per_rank  # (1," Unable to find taxonomy consensus",1)
 
 
@@ -403,7 +404,7 @@ def get_affilaition_line(contig, taxid, taxid2rankedlineage, taxid2name):
 
 
 def plot_taxonomic_assignment(output_name, count_genealogy,  count_genealogy_contig, nb_total_prot, nb_prot_annotated, nb_prot_assigned):
-      # graphs
+    # graphs
     try:
         os.makedirs("graphs")
     except OSError:
@@ -442,32 +443,34 @@ def plot_taxonomic_assignment(output_name, count_genealogy,  count_genealogy_con
 
 def get_top_taxons_info(contig, top_taxons_per_rank, taxid2name):
 
-    info = {'contig':contig,}
+    info = {'contig': contig, }
     for rank, top_taxids in top_taxons_per_rank.items():
-        top_affi_by_rank = [] 
+        top_affi_by_rank = []
         for taxid, score in top_taxids:
             taxname_and_weigth = f"{taxid2name[taxid]} ({100*score:.1f})"
             top_affi_by_rank.append(taxname_and_weigth)
-        info[rank] = ';'.join(top_affi_by_rank)    
+        info[rank] = ';'.join(top_affi_by_rank)
     return info
-                        
+
+
 def get_top_taxons_info_verbose(contig, top_taxons_per_rank, taxid2name, taxid2rankedlineage):
     list_info = []
     for rank, top_taxids in top_taxons_per_rank.items():
-        
+
         for taxid, score in top_taxids:
-            
+
             lienage = [taxid2name[tid] for tid in taxid2rankedlineage[taxid] if tid!="None"]
 
-            info= {"contig":contig, 
-                "rank":rank,
-                "lineage": ';'.join(lienage), 
-                'taxon':taxid2name[taxid], 
-                "score":round(100 * score,1)
-                }
+            info= {"contig": contig,
+                "rank": rank,
+                "lineage": ';'.join(lienage),
+                'taxon': taxid2name[taxid],
+                "score": round(100 * score, 1)
+            }
             list_info.append(info)
     return list_info
 
+
 def main():
 
     args = parse_arguments()
@@ -529,7 +532,7 @@ def main():
     contig2matches = group_by_contig(matches, re_contig)
     top_taxon_infos = []
     top_taxon_infos_verbose = []
-    
+
     with open(output_name + ".pergene.tsv", "w") as out_protein, \
             open(output_name + ".percontig.tsv", "w") as out_contig, \
             open(output_name + ".warn.tsv", "w") as outdisc:
@@ -579,9 +582,9 @@ def main():
                     outdisc.write(f"{protein_id}\tNo protid correspondance file\t{','.join(sorted(accessions_unfound_in_mapping_prot))}\n")
 
             consensual_contig_taxid = get_taxid_consensus(contig_collate_hits, main_ranks)
-            if args.write_top_taxons or  args.write_top_taxons_verbose:
+            if args.write_top_taxons or args.write_top_taxons_verbose:
                 top_taxons_per_rank = get_top_taxid(contig_collate_hits, main_ranks)
-                
+
             if args.write_top_taxons:
                 top_taxon_info = get_top_taxons_info(contig, top_taxons_per_rank, taxid2name)
                 top_taxon_infos.append(top_taxon_info)
@@ -596,7 +599,6 @@ def main():
             out_contig.write(contig_affi_line)
             logging.debug(contig_affi_line)
 
-
     if query_length_file:
         logging.debug("Plot taxonomic affiliation using protein lengths.")
         with open(query_length_file) as fl:
diff --git a/bin/bins_per_sample_summarize.py b/bin/bins_per_sample_summarize.py
index 08e7112..13493b8 100755
--- a/bin/bins_per_sample_summarize.py
+++ b/bin/bins_per_sample_summarize.py
@@ -36,6 +36,7 @@ import os
 # Function
 ################################################
 
+
 def bins_contigs_compositions(folder):
     '''
     - Function: Associate each contig with the bin were the contig is retrieved.
@@ -57,6 +58,7 @@ def bins_contigs_compositions(folder):
 
     return contigs_to_bins, list_bins
 
+
 def calculate_sample_bins_abundances(list_of_coverage_files, list_of_flagstat_files, contigs_to_bins, list_bins):
     '''
     - Function: Create a panda datadrame of bins abundances with sample as columns, and bins as rows.
@@ -72,38 +74,38 @@ def calculate_sample_bins_abundances(list_of_coverage_files, list_of_flagstat_fi
     '''
     list_samples = list()
     for coverage_file in list_of_coverage_files:
-        sample_name = coverage_file.replace('.coverage.tsv','')
+        sample_name = coverage_file.replace('.coverage.tsv', '')
         list_samples.append(sample_name)
-    
+
     list_of_df_by_bin = list()
     for coverage_file in list_of_coverage_files:
-        sample_name = coverage_file.replace('.coverage.tsv','')
+        sample_name = coverage_file.replace('.coverage.tsv', '')
         df = pd.read_csv(coverage_file, sep='\t')
 
         df['bin'] = df['#rname'].apply(lambda c: contigs_to_bins[c])
         df['total_depth'] = df['meandepth'] * df['endpos']
 
-        df_by_bin = df.groupby(['bin']).agg({"#rname":'count',  #"#rname":';'.join,
-                               'numreads':sum,
-                               'endpos':sum,
-                                "total_depth":sum,
+        df_by_bin = df.groupby(['bin']).agg({"#rname": 'count',  #"#rname":';'.join,
+                               'numreads': sum,
+                               'endpos': sum,
+                                "total_depth": sum,
                                       }).reset_index()
 
-        df_by_bin = df_by_bin.rename(columns={"#rname": "contig_count", "endpos":'bin_size'})
+        df_by_bin = df_by_bin.rename(columns={"#rname": "contig_count", "endpos": 'bin_size'})
         df_by_bin = df_by_bin.set_index('bin')
 
         df_by_bin['meandepth'] = df_by_bin["total_depth"]/df_by_bin["bin_size"]
         df_by_bin = df_by_bin.drop(["total_depth"], axis=1)
-        df_by_bin = df_by_bin.rename(columns={"numreads" : f"numreads_{sample_name}", "meandepth" : f"meandepth_{sample_name}"})
+        df_by_bin = df_by_bin.rename(columns={"numreads": f"numreads_{sample_name}", "meandepth": f"meandepth_{sample_name}"})
         list_of_df_by_bin.append(df_by_bin)
     sample_to_bins_abundances = pd.concat(list_of_df_by_bin, axis=1)
-    # Add number of unassigned reads in the table         
+    # Add number of unassigned reads in the table
     flagstat_regexes = {
-    "primary": r"(\d+) \+ (\d+) primary",
-    "primary_mapped": r"(\d+) \+ (\d+) primary mapped \((.+):(.+)\)"
-    }
+        "primary": r"(\d+) \+ (\d+) primary",
+        "primary_mapped": r"(\d+) \+ (\d+) primary mapped \((.+):(.+)\)"
+        }
     for flagstat_file in list_of_flagstat_files:
-        sample_name = flagstat_file.replace('.flagstat','')
+        sample_name = flagstat_file.replace('.flagstat', '')
         total = 0
         mapped = 0
         with open(flagstat_file, 'r') as fi:
@@ -115,25 +117,26 @@ def calculate_sample_bins_abundances(list_of_coverage_files, list_of_flagstat_fi
                 elif r_search and flag == "primary_mapped":
                     mapped = int(r_search.group(0).split()[0])
 
-            sample_to_bins_abundances.loc['unmapped_to_bin',f"numreads_{sample_name}"] = \
+            sample_to_bins_abundances.loc['unmapped_to_bin', f"numreads_{sample_name}"] = \
             total - mapped
 
-    columns_numreads = [ c for c in sample_to_bins_abundances.columns if c.startswith('numreads')]
-    columns_meandepth = [ c for c in sample_to_bins_abundances.columns if c.startswith('meandepth')]
+    columns_numreads = [c for c in sample_to_bins_abundances.columns if c.startswith('numreads')]
+    columns_meandepth = [c for c in sample_to_bins_abundances.columns if c.startswith('meandepth')]
     sample_to_bins_abundances['sum_numreads'] = sample_to_bins_abundances[columns_numreads].sum(axis=1)
     sample_to_bins_abundances['sum_meandepth'] = sample_to_bins_abundances[columns_meandepth].sum(axis=1)
     sample_to_bins_abundances = sample_to_bins_abundances.drop(['bin_size'], axis=1)
-    sample_to_bins_abundances = sample_to_bins_abundances.loc[:,~sample_to_bins_abundances.columns.duplicated()]
+    sample_to_bins_abundances = sample_to_bins_abundances.loc[:, ~sample_to_bins_abundances.columns.duplicated()]
 
     return sample_to_bins_abundances
 
+
 def add_genomes_informations(genome_info, final_bins):
     '''
     - Function: Adds bins informations metrics (completeness,contamination,length,N50)
     - Input: drep/data_tables/genomeInformation.csv file generated previously.
     '''
     df_drep = pd.read_csv(genome_info)
-    df_drep = df_drep.rename(columns = {'N50':'genome_N50', 'length':'genome_length'})
+    df_drep = df_drep.rename(columns = {'N50': 'genome_N50', 'length': 'genome_length'})
     df_drep['genome'] = df_drep['genome'].str.split('.').str[:-1].str.join('.')
     df_drep = df_drep.loc[df_drep['genome'].isin(final_bins)]
     df_drep = df_drep.drop(['centrality'], axis=1)
@@ -141,6 +144,7 @@ def add_genomes_informations(genome_info, final_bins):
 
     return df_drep
 
+
 def return_lowest_taxo_rank(taxo):
     '''
     - Function: Returns the lowest non-null taxonomic affiliation from the entire taxonomic \
@@ -148,27 +152,29 @@ def return_lowest_taxo_rank(taxo):
     - Input: d__Bacteria;p__Firmicutes_A;c__Clostridia;o__Clostridiales;f__Clostridiaceae;g__Clostridium;s__Clostridium beijerinckii
     - Output: s__Clostridium beijerinckii
     '''
-    ranks = ["s__","g__","f__","o__","c__","p__","d__"] 
+    ranks = ["s__", "g__", "f__", "o__", "c__", "p__", "d__"]
     if not type(taxo) == float:
             for i in range(-1, -len(ranks)-1, -1):
                 if taxo.split(';')[i] != ranks[-i-1]:
                     return taxo.split(';')[i]
     return "unknown"
 
+
 def add_bins_affiliations(affiliations_predictions_file):
     '''
     - Function: Reads gtdb-tk taxonomic affiliations file and add sample_name associated.
                 Splits the classificiations column into differents rank taxonomic columns.
     '''
-    affiliations = pd.read_csv(affiliations_predictions_file, sep='\t', usecols = ['user_genome','classification']).set_index('user_genome')
+    affiliations = pd.read_csv(affiliations_predictions_file, sep='\t', usecols = ['user_genome', 'classification']).set_index('user_genome')
     affiliations['genome_name'] = affiliations['classification'].apply(lambda taxo: return_lowest_taxo_rank(taxo))
-    ranks = { 0: "Domain", 1: "Phylum", 2: "Class", 3: "Order", 4: "Family", 5: "Genus", 6: "Species"}
-    for i,cur_rank in ranks.items():
+    ranks = {0: "Domain", 1: "Phylum", 2: "Class", 3: "Order", 4: "Family", 5: "Genus", 6: "Species"}
+    for i, cur_rank in ranks.items():
         affiliations[cur_rank] = affiliations['classification'].str.split(';').str[i].str.split('__').str[-1]
-    affiliations = affiliations[ ['genome_name'] + ['Domain'] + ["Phylum"] + ["Class"] + ["Order"] + ["Family"] + ["Genus"] + ["Species"] ]
+    affiliations = affiliations[['genome_name'] + ['Domain'] + ["Phylum"] + ["Class"] + ["Order"] + ["Family"] + ["Genus"] + ["Species"]]
 
     return affiliations
 
+
 def write_general_output_file(affiliations, informations, abundances, output_file):
     '''
     - Function: Concatanate abundances, genomes informations and affiliations DataFrames \
@@ -177,15 +183,16 @@ def write_general_output_file(affiliations, informations, abundances, output_fil
     '''
     bins_general = pd.concat([affiliations, informations, abundances], axis=1)
     bins_general = \
-    bins_general.sort_values('sum_numreads', ascending=False )
+    bins_general.sort_values('sum_numreads', ascending=False)
     bins_general['genome_id'] = bins_general.index
     bins_general = bins_general[['genome_id'] + [c for c in bins_general.columns if c != "genome_id"]]
     bins_general.loc[bins_general['genome_id'] == "unmapped_to_bin", 'genome_name'] = 'unmapped_to_bin'
-    bins_general.to_csv(output_file,sep='\t', index=False)
+    bins_general.to_csv(output_file, sep='\t', index=False)
 
     return bins_general
 
-def write_report_file(general_table , report_file, checkm2_file, table_file):
+
+def write_report_file(general_table, report_file, checkm2_file, table_file):
     '''
     - Function: Write mqc files in order to make MultiQC output figures.
     '''
@@ -195,12 +202,12 @@ def write_report_file(general_table , report_file, checkm2_file, table_file):
     idx.remove('unmapped_to_bin')
     report_df = report_df.reindex(idx + ['unmapped_to_bin'])
     report_df = report_df.set_index('genome_name')
-    report_cols  = [col for col in report_df.columns if col.startswith('numreads') or col == "sum_numreads"]
-    table_cols  = [col for col in table_df.columns if not col.startswith('meandepth_') and not col.startswith('numreads_') \
+    report_cols = [col for col in report_df.columns if col.startswith('numreads') or col == "sum_numreads"]
+    table_cols = [col for col in table_df.columns if not col.startswith('meandepth_') and not col.startswith('numreads_') \
     and not col == "Domain" and not col == "Phylum" and not col == "Class" and not col == "Order" \
-    and not col == "Family" and not col == "Genus"  and not col == "Species"]
+    and not col == "Family" and not col == "Genus" and not col == "Species"]
     table_df = table_df[table_cols]
-    table_df = table_df[(table_df['completeness'] > 50 ) & (table_df['contamination'] < 10)]
+    table_df = table_df[(table_df['completeness'] > 50) & (table_df['contamination'] < 10)]
     report_df = report_df[report_cols]
     # Normalize library size by transforming values as samples percentages abundances
     for column in report_df.columns:
@@ -212,7 +219,7 @@ def write_report_file(general_table , report_file, checkm2_file, table_file):
     # filter = ((report_df>=5).any()) | (report_df.columns == "unmapped_to_bin")
     unmapped_col = report_df["unmapped_to_bin"]
     report_df = report_df.iloc[:, :30]
-    report_df.loc[:,"unmapped_to_bin"] = unmapped_col
+    report_df.loc[:, "unmapped_to_bin"] = unmapped_col
     ##
     report_df.index.name = "sample"
     report_df = report_df.reset_index(level='sample')
@@ -220,21 +227,21 @@ def write_report_file(general_table , report_file, checkm2_file, table_file):
     table_df.to_csv(table_file, sep="\t", index=False)
     ### generate .json file for checkm2 quality bins scatterplot
     checkm_to_json = dict(id = 'bins_quality',
-					section_name = 'Bins Quality overview',
-					description = "Quality of bins in terms of completeness and contamination calculated by Checkm2. The points are colored according to their quality, according to the MIMAG standards defined previously (see Bins Counts quality section). Genomes with the best quality (100\% completeness and 0\% contamination) are located in the lower right corner of the graph. ",
-					plot_type = 'scatter',
-					anchor = 'bins_quality',
-					pconfig = dict(
-					    title = 'Bins quality overview',
-					    ylab = 'Contamination',
-					    xlab = 'Completeness'))
+                    section_name = 'Bins Quality overview',
+                    description = "Quality of bins in terms of completeness and contamination calculated by Checkm2. The points are colored according to their quality, according to the MIMAG standards defined previously (see Bins Counts quality section). Genomes with the best quality (100\% completeness and 0\% contamination) are located in the lower right corner of the graph. ",
+                    plot_type = 'scatter',
+                    anchor = 'bins_quality',
+                    pconfig = dict(
+                        title = 'Bins quality overview',
+                        ylab = 'Contamination',
+                        xlab = 'Completeness'))
     conditions = [
         ((general_table['completeness'] > 90) & (general_table['contamination'] < 5)),
         ((general_table['completeness'] > 50) & (general_table['contamination'] < 10)),
         ((general_table['completeness'] < 50) | (general_table['contamination'] > 10))
         ]
     # create a list of color according to the quality of the bins
-    values = ['#D5ECC2' , '#FFD3B4', '#ffd92f']
+    values = ['#D5ECC2', '#FFD3B4', '#ffd92f']
     general_table['color'] = np.select(conditions, values)
 
     checkm_to_json['data'] = dict()
@@ -246,6 +253,7 @@ def write_report_file(general_table , report_file, checkm2_file, table_file):
     f.write(json_data)
     ###
 
+
 def parse_arguments():
     # Manage parameters.
     parser = argparse.ArgumentParser()
-- 
GitLab


From 29fe91c89b335583a78a61ed8d78b3d12685b81c Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Tue, 8 Nov 2022 11:56:18 +0100
Subject: [PATCH 148/194] autopep8

---
 ...ge_abundance_and_functional_annotations.py |  56 +++----
 bin/merge_annotations.py                      | 141 ++++++++++--------
 2 files changed, 109 insertions(+), 88 deletions(-)
 mode change 100755 => 100644 bin/merge_abundance_and_functional_annotations.py
 mode change 100755 => 100644 bin/merge_annotations.py

diff --git a/bin/merge_abundance_and_functional_annotations.py b/bin/merge_abundance_and_functional_annotations.py
old mode 100755
new mode 100644
index 614b123..8cb1365
--- a/bin/merge_abundance_and_functional_annotations.py
+++ b/bin/merge_abundance_and_functional_annotations.py
@@ -30,35 +30,31 @@ __status__ = 'dev'
 # Modules importation.
 
 import argparse
-import re
-import sys
 import pandas as pd
-from datetime import datetime
-
 
 
 # Manage parameters.
-parser = argparse.ArgumentParser(description = 'Script which join \
+parser = argparse.ArgumentParser(description='Script which join \
 quantification table by gene and tables by samples \
 with functional annotations')
 
-parser.add_argument('-t', '--table_of_abundances', required = True, \
-help = 'Table containing counts \
+parser.add_argument('-t', '--table_of_abundances', required=True,
+                    help='Table containing counts \
 for each global gene id in each sample.')
 
-parser.add_argument('-f', '--list_of_file_annotations', required = True, \
-help = 'List of files storing functional annotation for each gene per sample.')
+parser.add_argument('-f', '--list_of_file_annotations', required=True,
+                    help='List of files storing functional annotation for each gene per sample.')
 
-parser.add_argument('-d', '--list_of_file_diamond', required = True, \
-help = 'List of files storing diamond results with best bitscore \
+parser.add_argument('-d', '--list_of_file_diamond', required=True,
+                    help='List of files storing diamond results with best bitscore \
 for each gene per sample.')
 
-parser.add_argument('-o', '--output_file', required = True, \
-help = 'Name of output file containing counts \
+parser.add_argument('-o', '--output_file', required=True,
+                    help='Name of output file containing counts \
 for each global gene id and its functional annotation.')
 
-parser.add_argument('-v', '--version', action = 'version', \
-version = __version__)
+parser.add_argument('-v', '--version', action='version',
+                    version=__version__)
 
 args = parser.parse_args()
 
@@ -76,28 +72,36 @@ with open(args.list_of_file_diamond) as fdiamond_list:
 concat_eggnog_mapper_files = pd.DataFrame()
 
 # Concatenate annotation files.
-for (annotations_idx,annotations_path) in enumerate(sorted(files_of_annotations)):
-    eggnog_mapper_file = pd.read_csv(annotations_path, delimiter='\t', decimal='.',skiprows=4)
-    concat_eggnog_mapper_files = pd.concat([concat_eggnog_mapper_files, eggnog_mapper_file])
+for (annotations_idx, annotations_path) in enumerate(sorted(files_of_annotations)):
+    eggnog_mapper_file = pd.read_csv(
+        annotations_path, delimiter='\t', decimal='.', skiprows=4)
+    concat_eggnog_mapper_files = pd.concat(
+        [concat_eggnog_mapper_files, eggnog_mapper_file])
 
 # Creates a new empty dataframe for diamond results.
 concat_diamond_files = pd.DataFrame()
 
 # Concatenate diamond files.
-for (diamond_idx,diamond_path) in enumerate(sorted(diamond_files)):
-    diamond_columns = ["qseqid","sseqid","pident","length","mismatch","gapopen","qstart","qend","sstart","send","evalue","bitscore","qlen","slen","stitle"]
-    diamond_file = pd.read_csv(diamond_path, delimiter='\t', decimal='.', header=None, names=diamond_columns)
-    diamond_file.loc[:,"sseqid"] = 'https://www.ncbi.nlm.nih.gov/protein/' + diamond_file.loc[:,"sseqid"]
+for (diamond_idx, diamond_path) in enumerate(sorted(diamond_files)):
+    diamond_columns = ["qseqid", "sseqid", "pident", "length", "mismatch", "gapopen",
+                       "qstart", "qend", "sstart", "send", "evalue", "bitscore", "qlen", "slen", "stitle"]
+    diamond_file = pd.read_csv(
+        diamond_path, delimiter='\t', decimal='.', header=None, names=diamond_columns)
+    diamond_file.loc[:, "sseqid"] = 'https://www.ncbi.nlm.nih.gov/protein/' + \
+        diamond_file.loc[:, "sseqid"]
     group_diamond_file = diamond_file.groupby("qseqid")\
-        .agg({"stitle" : ';'.join, "sseqid" : ','.join})\
+        .agg({"stitle": ';'.join, "sseqid": ','.join})\
         .reset_index()\
         .reindex(columns=diamond_file.columns)
-    res_diamond_file = group_diamond_file.loc[:,["qseqid","sseqid","stitle"]]
+    res_diamond_file = group_diamond_file.loc[:, [
+        "qseqid", "sseqid", "stitle"]]
     concat_diamond_files = pd.concat([concat_diamond_files, res_diamond_file])
 
 # Merge counts, annotation and diamond results.
-merge_annot = pd.merge(counts_file,concat_eggnog_mapper_files,left_on="seed_cluster",right_on='#query', how='left')
-merge = pd.merge(merge_annot,concat_diamond_files,left_on="seed_cluster",right_on="qseqid", how='left')
+merge_annot = pd.merge(counts_file, concat_eggnog_mapper_files,
+                       left_on="seed_cluster", right_on='#query', how='left')
+merge = pd.merge(merge_annot, concat_diamond_files,
+                 left_on="seed_cluster", right_on="qseqid", how='left')
 merge.drop('#query', inplace=True, axis=1)
 merge.drop("qseqid", inplace=True, axis=1)
 merge_no_nan = merge.fillna("-")
diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
old mode 100755
new mode 100644
index 4b35037..633f858
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -33,25 +33,32 @@ def parse_arguments():
     parser = ArgumentParser(description="...",
                             formatter_class=ArgumentDefaultsHelpFormatter)
 
-    parser.add_argument('-c', '--cds', help='gff file with CDS annotations.', required=True)
+    parser.add_argument(
+        '-c', '--cds', help='gff file with CDS annotations.', required=True)
 
-    parser.add_argument('-t', '--trna', help='gff file with tRNA annotations.', required=True)
+    parser.add_argument(
+        '-t', '--trna', help='gff file with tRNA annotations.', required=True)
 
-    parser.add_argument('-r', '--rrna', help='gff file with rRNA annotations.', required=True)
-    
-    parser.add_argument('--contig_seq', help='fasta file of contigs. Needed to extract gene sequence', required=True)
+    parser.add_argument(
+        '-r', '--rrna', help='gff file with rRNA annotations.', required=True)
 
-    parser.add_argument('--faa_file', help='fasta file of protein sequences generated by prodigal.', required=True)
+    parser.add_argument(
+        '--contig_seq', help='fasta file of contigs. Needed to extract gene sequence', required=True)
 
-    parser.add_argument('--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
+    parser.add_argument(
+        '--faa_file', help='fasta file of protein sequences generated by prodigal.', required=True)
 
-    parser.add_argument('--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
+    parser.add_argument(
+        '--gff_output', help='final gff file with all annotations.', default="all_annotation.gff")
 
-    parser.add_argument('--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
-
-    parser.add_argument('--report_output', help='Prokka report like to be able to show annotations in multiqc.', default="annotation_report.txt")
+    parser.add_argument(
+        '--ffn_output', help='final ffn file with all annotations.', default="all_annotation.ffn")
 
+    parser.add_argument(
+        '--faa_output', help='final faa file with all CDS annotations in amino acid.', default="all_annotation.faa")
 
+    parser.add_argument(
+        '--report_output', help='Prokka report like to be able to show annotations in multiqc.', default="annotation_report.txt")
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -59,6 +66,7 @@ def parse_arguments():
     args = parser.parse_args()
     return args
 
+
 def read_file_and_ignore_hashtag(file_path):
 
     proper_open = gzip.open if file_path.endswith('.gz') else open
@@ -68,39 +76,43 @@ def read_file_and_ignore_hashtag(file_path):
                 continue
             yield line
 
+
 def group_annotations_by_contigs(*gff_annotations):
 
-    contig2annotations = defaultdict(list) 
+    contig2annotations = defaultdict(list)
     for annotations in gff_annotations:
         for annotation in annotations:
             contig2annotations[annotation['seqname']].append(annotation)
 
     return contig2annotations
 
-        
+
 def parse_gff_file(gff_file, feature_to_keep=False):
 
-    gff_headers = ("seqname", "_3", "feature", "start", "end", "_2", "strand", "_1", "attribute")
+    gff_headers = ("seqname", "_3", "feature", "start",
+                   "end", "_2", "strand", "_1", "attribute")
 
-    gff_annotations = csv.DictReader(read_file_and_ignore_hashtag(gff_file), 
-                                                                        delimiter='\t',
-                                                                        fieldnames=gff_headers)
+    gff_annotations = csv.DictReader(read_file_and_ignore_hashtag(gff_file),
+                                     delimiter='\t',
+                                     fieldnames=gff_headers)
 
     if feature_to_keep:
         logging.info(f'Keeping only {feature_to_keep} feature from {gff_file}')
-        gff_annotations = (annotation for annotation in gff_annotations if annotation['feature'] == feature_to_keep)
-        
+        gff_annotations = (
+            annotation for annotation in gff_annotations if annotation['feature'] == feature_to_keep)
+
     return gff_annotations
 
+
 def remove_overlapping_cds(cds_file, contig2rnas):
 
     contig_annotations = []
     current_contig = None
 
     for cds in parse_gff_file(cds_file, 'CDS'):
-        
+
         reading_next_contig = cds['seqname'] != current_contig
-        
+
         if contig_annotations and reading_next_contig:
 
             yield current_contig, contig_annotations
@@ -110,21 +122,23 @@ def remove_overlapping_cds(cds_file, contig2rnas):
 
         is_overlapping = False
         for rna in contig2rnas[current_contig]:
-                if (int(rna['end']) < int(cds['start']) or int(rna['start']) > int(cds['end'])):
-                    continue
-                
-                else:  # overlap -> remove cds
-                    is_overlapping = True
-                    overlap = f"[{max(rna['start'], cds['start'])},{min(rna['end'], cds['end'])}]"
-                    rna_info = f"{rna['feature']} [{rna['start']}, {rna['end']}]"
-                    cds_info = f"CDS [{cds['start']}, {cds['end']}]"
-                    logging.info(f"overlap: {cds_info} overlapping with {rna_info} at {overlap} on contig={current_contig}")
+            if (int(rna['end']) < int(cds['start']) or int(rna['start']) > int(cds['end'])):
+                continue
+
+            else:  # overlap -> remove cds
+                is_overlapping = True
+                overlap = f"[{max(rna['start'], cds['start'])},{min(rna['end'], cds['end'])}]"
+                rna_info = f"{rna['feature']} [{rna['start']}, {rna['end']}]"
+                cds_info = f"CDS [{cds['start']}, {cds['end']}]"
+                logging.info(
+                    f"overlap: {cds_info} overlapping with {rna_info} at {overlap} on contig={current_contig}")
 
         if not is_overlapping:
             contig_annotations.append(cds)
 
     yield current_contig, contig_annotations
 
+
 def merging_cds_and_rna(cds_per_contig, contig2rnas):
 
     contig_processed = []
@@ -132,16 +146,18 @@ def merging_cds_and_rna(cds_per_contig, contig2rnas):
         contig_processed.append(contig)
         rna_features = contig2rnas[contig]
         yield contig, rna_features + cds_features
-    
+
     # check that all rrna contigs have been processed if not processe them
-    for contig, rnas in  contig2rnas.items():
+    for contig, rnas in contig2rnas.items():
         if contig not in contig_processed:
             logging.info(f'{contig} has only rna annotation')
             yield contig, rnas
 
+
 def add_new_ID_tag_and_Parent(gff_attributes, new_id, parent_id):
 
-    gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(';') if  attr.split('=')[0] not in ['ID', 'Parent']])
+    gff_attributes_no_id = ';'.join([attr for attr in gff_attributes.split(
+        ';') if attr.split('=')[0] not in ['ID', 'Parent']])
     return f"ID={new_id};Parent={parent_id};{gff_attributes_no_id}"
 
 
@@ -152,8 +168,9 @@ def get_tag_value(gff_attribute, tag):
             return attr.split('=')[1]
     return ''
 
+
 def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, out_ffn, faa_file, out_faa):
-    
+
     contig_fa = pyfastx.Fasta(fna_file)
     protein_fa = pyfastx.Fasta(faa_file)
 
@@ -166,12 +183,12 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
             fh_gff.write(f"##sequence-region {contig}\n")
 
             for feature in sorted(features, key=lambda x: int(x['start'])):
-                gene_count[feature['feature']] += 1 
+                gene_count[feature['feature']] += 1
                 new_id = f"{feature['seqname']}.{feature['feature']}_{gene_count[feature['feature']]}"
                 parent_id = f"{new_id}_gene"
 
                 start, end = int(feature['start']), int(feature['end'])
-                
+
                 # write faa
                 if feature['feature'] == "CDS":
                     gff_id = get_tag_value(feature['attribute'], 'ID')
@@ -180,11 +197,12 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                     # seq name in faa from prodigal is <contig_name>_<cds_number>
                     cds_number = gff_id.split('_')[-1]
                     cds_prodigal_id = f"{contig}_{cds_number}"
-                    fh_faa.write(f">{new_id} {start}-{end}\n{protein_fa[cds_prodigal_id]}\n")
-           
-                    
-                # Write gff and ffn 
-                feature['attribute'] = add_new_ID_tag_and_Parent(feature['attribute'], new_id, parent_id)
+                    fh_faa.write(
+                        f">{new_id} {start}-{end}\n{protein_fa[cds_prodigal_id]}\n")
+
+                # Write gff and ffn
+                feature['attribute'] = add_new_ID_tag_and_Parent(
+                    feature['attribute'], new_id, parent_id)
 
                 # gff line with CDS/tRNA or rRNA in feature column
                 feature_gff_line = '\t'.join(feature.values())
@@ -194,7 +212,7 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                 feature['attribute'] = f'ID={parent_id};locus_tag={new_id}'
                 gene_gff_line = '\t'.join(feature.values())
 
-                fh_gff.write(f'{gene_gff_line}\n{feature_gff_line}\n') 
+                fh_gff.write(f'{gene_gff_line}\n{feature_gff_line}\n')
 
                 tag_name = get_tag_value(feature['attribute'], 'Name')
 
@@ -204,37 +222,34 @@ def writing_features_to_gff_ffn_faa(annotations_per_contig, out_gff, fna_file, o
                     # minus strand: reverse complement the sequence
                     feature_seq = contig_fa[contig][start-1:end].antisense
 
-                fh_ffn.write(f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
+                fh_ffn.write(
+                    f">{new_id} {start}-{end} {tag_name}\n{feature_seq}\n")
 
     # building prokka like report for multiqc
     report = {"organism": "NA",
-            "contigs": len(contig_fa),
-            "bases": contig_fa.size }
+              "contigs": len(contig_fa),
+              "bases": contig_fa.size}
     report.update(gene_count)
 
     return report
 
 
-
-
-
 def main():
 
     args = parse_arguments()
 
     if args.verbose:
-        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.basicConfig(
+            format="%(levelname)s: %(message)s", level=logging.DEBUG)
         logging.info('Mode verbose ON')
 
     else:
         logging.basicConfig(format="%(levelname)s: %(message)s")
 
-
-    trna_file  = args.trna 
-    rrna_file  = args.rrna
+    trna_file = args.trna
+    rrna_file = args.rrna
     cds_file = args.cds
 
-
     fna_file = args.contig_seq
     faa_file = args.faa_file
 
@@ -243,7 +258,6 @@ def main():
     out_faa = args.faa_output
     out_report = args.report_output
 
-
     logging.info('Parsing rRNA annoations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
 
@@ -251,21 +265,24 @@ def main():
     trna_annotations = parse_gff_file(trna_file, 'tRNA')
 
     logging.info('Grouping RNA annoations by contig.')
-    contig2rnas = group_annotations_by_contigs(trna_annotations, rrna_annotations)
-    
+    contig2rnas = group_annotations_by_contigs(
+        trna_annotations, rrna_annotations)
+
     logging.info('Removing CDS annoations overlapping a RNA annotations.')
-    unoverlapping_cds_per_contig = remove_overlapping_cds(cds_file, contig2rnas)
+    unoverlapping_cds_per_contig = remove_overlapping_cds(
+        cds_file, contig2rnas)
 
     logging.info('Merge CDS and RNA annotations by contig.')
-    annotation_per_contigs = merging_cds_and_rna(unoverlapping_cds_per_contig, contig2rnas)
+    annotation_per_contigs = merging_cds_and_rna(
+        unoverlapping_cds_per_contig, contig2rnas)
 
     logging.info(f'Writting CDS and RNA annotations to gff file: {out_gff}.')
-    report = writing_features_to_gff_ffn_faa(annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
-    
+    report = writing_features_to_gff_ffn_faa(
+        annotation_per_contigs, out_gff, fna_file, out_ffn, faa_file, out_faa)
+
     with open(out_report, "w") as fl:
-        fl.write(''.join(f"{k}: {v}\n" for k,v in report.items()))
+        fl.write(''.join(f"{k}: {v}\n" for k, v in report.items()))
 
-    
 
 if __name__ == '__main__':
     main()
-- 
GitLab


From 433112f4d585218d028a34cee22af33cc565e548 Mon Sep 17 00:00:00 2001
From: VIENNE MAINA <maina.vienne@inrae.fr>
Date: Tue, 8 Nov 2022 12:04:11 +0100
Subject: [PATCH 149/194] Update bin/format_bins_stat_to_multiqc.py,
 bin/merge_annotations.py, bin/plot_contigs_taxonomic_affiliation.py,
 bin/plot_kaiju_stat.py, bin/quantification_by_contig_lineage.py,
 bin/quantification_by_functional_annotation.py, bin/db_versions.py

---
 bin/db_versions.py                            | 16 +++++++++-----
 bin/format_bins_stat_to_multiqc.py            |  4 +++-
 bin/merge_annotations.py                      | 12 +++++-----
 bin/plot_contigs_taxonomic_affiliation.py     |  6 ++---
 bin/plot_kaiju_stat.py                        |  8 +++----
 bin/quantification_by_contig_lineage.py       | 22 ++++++++-----------
 ...quantification_by_functional_annotation.py | 14 +++++-------
 7 files changed, 41 insertions(+), 41 deletions(-)

diff --git a/bin/db_versions.py b/bin/db_versions.py
index 3088ea3..bf762bc 100755
--- a/bin/db_versions.py
+++ b/bin/db_versions.py
@@ -5,21 +5,25 @@ import subprocess
 import os.path
 import gzip 
 
-def info_db(file):
-	name=file.split()[0]
-	path =os.path.realpath(file.split()[1])
-	if file.split()[1]=='nodes.dmp':
+def info_db(db_info_file):
+	name=db_info_file.split()[0]
+	path =os.path.realpath(db_info_file.split()[1])
+
+	if db_info_file.split()[1]=='nodes.dmp':
 		path=os.path.dirname(path)
 
+	# get db size 
 	process = subprocess.run(['du', '-sh',path], stdout=subprocess.PIPE)
 	size = process.stdout.split()[0].decode('utf-8')
+
 	if (name == "Host_genome"):
 		size = f"{size} ({get_genome_seq_count(path)} seq)"
 	
+	# get date of last modifaction 
 	process = subprocess.run(['stat', '-c %y', path], stdout=subprocess.PIPE)
-	modif = process.stdout.split()[0].decode('utf-8')
+	modif_date = process.stdout.split()[0].decode('utf-8')
 
-	return name,size,modif,path
+	return name,size,modif_date,path
 
 
 def get_genome_seq_count(genome_path):
diff --git a/bin/format_bins_stat_to_multiqc.py b/bin/format_bins_stat_to_multiqc.py
index e94ee23..05fdeb6 100755
--- a/bin/format_bins_stat_to_multiqc.py
+++ b/bin/format_bins_stat_to_multiqc.py
@@ -22,7 +22,7 @@ import pandas as pd
 
 
 def parse_arguments():
-    """Parse script arguments."""
+    """Parse script arguments."""bins_per_sample_summarize.py
     parser = ArgumentParser(description="...",
                             formatter_class=ArgumentDefaultsHelpFormatter)
 
@@ -65,6 +65,7 @@ def main():
 
         # remove Not_binned category when counting bins in different quality
         df_ech_count = df_ech.loc[~(df_ech['genome'] == "Not_binned")]
+
         df_ech_gr = df_ech_count.groupby(['Quality']).size().reset_index(name='counts')
         df_ech_gr = df_ech_gr.set_index("Quality")
  
@@ -91,6 +92,7 @@ def main():
 
     logging.info(f'Writing {args.out_bins_count}')
     df_count.to_csv(args.out_bins_count, sep='\t')
+    
     logging.info(f'Writing {args.out_bins_size}')
     df_size.to_csv(args.out_bins_size, sep='\t')
 
diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
index 4b35037..8843414 100755
--- a/bin/merge_annotations.py
+++ b/bin/merge_annotations.py
@@ -12,7 +12,7 @@ merge_annotations.py -c prodigal.gff -r barrnap.gff -t trnascan_se.gff --contig_
 
 # Metadata
 __author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2020 INRAE'
+__copyright__ = 'Copyright (C) 2022 INRAE'
 __license__ = 'GNU General Public License'
 __version__ = '0.1'
 __email__ = 'support.bioinfo.genotoul@inra.fr'
@@ -25,7 +25,7 @@ import gzip
 import csv
 from collections import defaultdict
 import pyfastx
-from Bio.Seq import Seq
+
 
 
 def parse_arguments():
@@ -244,16 +244,16 @@ def main():
     out_report = args.report_output
 
 
-    logging.info('Parsing rRNA annoations.')
+    logging.info('Parsing rRNA annotations.')
     rrna_annotations = parse_gff_file(rrna_file, 'rRNA')
 
-    logging.info('Parsing tRNA annoations.')
+    logging.info('Parsing tRNA annotations.')
     trna_annotations = parse_gff_file(trna_file, 'tRNA')
 
-    logging.info('Grouping RNA annoations by contig.')
+    logging.info('Grouping RNA annotations by contig.')
     contig2rnas = group_annotations_by_contigs(trna_annotations, rrna_annotations)
     
-    logging.info('Removing CDS annoations overlapping a RNA annotations.')
+    logging.info('Removing CDS annotations overlapping a RNA annotations.')
     unoverlapping_cds_per_contig = remove_overlapping_cds(cds_file, contig2rnas)
 
     logging.info('Merge CDS and RNA annotations by contig.')
diff --git a/bin/plot_contigs_taxonomic_affiliation.py b/bin/plot_contigs_taxonomic_affiliation.py
index 3d51a38..a170c28 100755
--- a/bin/plot_contigs_taxonomic_affiliation.py
+++ b/bin/plot_contigs_taxonomic_affiliation.py
@@ -303,7 +303,7 @@ def parse_arguments():
 
     parser.add_argument('--output_dir', default='plots', help="Name of the output directory")
 
-    parser.add_argument('--top_taxon', default=10, type=int, help="Plot only the top n most abundant taxa.")
+    parser.add_argument('--nb_top_taxon', default=10, type=int, help="Plot only the top n most abundant taxa.")
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -326,7 +326,7 @@ def main():
 
 
     contig_affi_files = args.affi_taxo_quantif
-    top_n_taxon = args.top_taxon
+    top_n_taxon = args.nb_top_taxon
     output_dir = args.output_dir
 
     os.makedirs(output_dir, exist_ok=True)
@@ -385,7 +385,7 @@ def main():
         html_figs = []
         for i, (rank, fig) in enumerate(rank2fig.items()):
             
-            include_plotly = True if i == 0 else False
+            include_plotly = i == 0
 
             html_fig = fig.to_html(full_html=False, include_plotlyjs=include_plotly)
             html_figs.append((rank, html_fig )) 
diff --git a/bin/plot_kaiju_stat.py b/bin/plot_kaiju_stat.py
index 9ea7e0b..24fcde5 100755
--- a/bin/plot_kaiju_stat.py
+++ b/bin/plot_kaiju_stat.py
@@ -2,7 +2,7 @@
 
 """----------------------------------------------------------------------------------------------------------------------------------------------------------
   Script Name: plot_kaiju_stat.py
-  Description: Generates density plot distribution of kiaju match length
+  Description: Generates density plot distribution of kaiju match length
   Input files:
                Verbose files generated by Kaiju for each sample.
   Created By:  Jean Mainguy
@@ -88,7 +88,7 @@ def main():
 
     density_df_samples = []
     max_match_length = 0
-    sample2dfmatchlength = {}
+    sample2df_matchlen = {}
 
     logging.info(f'Parsing kaiju results')
     for kaiju_result in kaiju_results:
@@ -98,14 +98,14 @@ def main():
         df_matchlen =  parse_matchlen_from_kaiju_output(kaiju_result)
         
         max_match_length = max((max_match_length, df_matchlen['match_length'].max()))
-        sample2dfmatchlength[sample_name] = df_matchlen
+        sample2df_matchlen[sample_name] = df_matchlen
 
     x_vals = np.linspace(0,max_match_length,max_match_length) # Specifying the limits of our data
     logging.info(f'Maximum match length is {max_match_length}')
     
     logging.info(f'Computing density for each sample')
 
-    for sample_name, df_matchlen in sample2dfmatchlength.items():
+    for sample_name, df_matchlen in sample2df_matchlen.items():
         density = gaussian_kde(df_matchlen['match_length'], weights = df_matchlen['reads'])
         density.covariance_factor = lambda : smoothing_parameter #Smoothing parameter
         density._compute_covariance()
diff --git a/bin/quantification_by_contig_lineage.py b/bin/quantification_by_contig_lineage.py
index 3092db3..d85fb2f 100755
--- a/bin/quantification_by_contig_lineage.py
+++ b/bin/quantification_by_contig_lineage.py
@@ -22,19 +22,15 @@ __status__ = 'dev'
 # Status: dev.
 
 # Modules importation.
-try:
-    import argparse
-    import re
-    import sys
-    import pandas as pd
-    import os
-    from datetime import datetime
-except ImportError as error:
-    print(error)
-    exit(1)
-
-# Print time.
-print(str(datetime.now()))
+
+import argparse
+import re
+import sys
+import pandas as pd
+import os
+from datetime import datetime
+
+
 
 # Manage parameters.
 parser = argparse.ArgumentParser(description = 'Script which make \
diff --git a/bin/quantification_by_functional_annotation.py b/bin/quantification_by_functional_annotation.py
index a6e0e72..e9e7515 100755
--- a/bin/quantification_by_functional_annotation.py
+++ b/bin/quantification_by_functional_annotation.py
@@ -23,14 +23,12 @@ __status__ = 'dev'
 # Status: dev.
 
 # Modules importation.
-try:
-    import argparse
-    import re
-    import sys
-    import pandas as pd
-except ImportError as error:
-    print(error)
-    exit(1)
+
+import argparse
+import re
+import sys
+import pandas as pd
+
 
 # Manage parameters.
 parser = argparse.ArgumentParser(description = 'Create a file with \
-- 
GitLab


From cf543459ccdfe3a764f5fc7b06e582a6789b50bc Mon Sep 17 00:00:00 2001
From: DARBOT Vincent <vincent.darbot@inrae.fr>
Date: Tue, 15 Nov 2022 10:01:28 +0100
Subject: [PATCH 150/194] Update docs/output.md

---
 docs/output.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/output.md b/docs/output.md
index 90cb34c..4ee8815 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -164,7 +164,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/maxbin2`| This directory contains bins fasta files from the individual binning tool MaxBin2(see informations [here](https://academic.oup.com/bioinformatics/article/32/4/605/1744462)). |
 | `SAMPLE_NAME/metabat2`| This directory contains bins fasta files from the individual binning tool MetaBAT2                     (see informations [here](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6662567/)). |
 | `SAMPLE_NAME/bin_refinement`| This directory contains bins fasta files from the aggregate binning module bin_refinement from metaWRAP tool, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://microbiomejournal.biomedcentral.com/articles/10.1186/s40168-018-0541-1)). |
-| `SAMPLE_NAME/bin_refinement/unbinned_contigs.fasta`| Contigs from the sample assembly that are not retrieved in any bin. |
+| `SAMPLE_NAME/bin_refinement/unbinned_contigs.fasta`| Contigs from the sample assembly that are not retrieved in any bin. The proportion of non-binned contigs to the global size of the sample assembly can be seen in the MultiQC report, in the section Bins Size (bp) quality. |
 
 #### **08_binning/08_2_dereplicated_bins**
 | File or directory/      | Description                             |
@@ -172,7 +172,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | dereplicated_genomes/ | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples. |
 | data_tables/genomeInformation.csv | Calculated metrics of all the bins before de-replication, used to select the representative bin after de-replication. Completeness and contamination where calculated before with CheckM2, during bin_refinement step. dRep adds further metrics and use all four to choose the best bin. |
 | data_tables/Bins_clusters_composition.tsv | Associates each representative bins cluster (1st column) to the bins list within the cluster (2nd column, bins seperates by commas). |
-| figures/ | `Primary_clustering_dendrogram.pdf`: The primary clustering dendrogram summarizes the pair-wise Mash distance between all genomes in the genome list. The first clusturing used Mash, an incredibly fast but not robust algorithm, in order to accelerate the process during the second clusturing. **`Secondary_clustering_dendrograms.pdf`**: Each primary cluster with more than one member will have a page in the Secondary clustering dendrograms file. Bins with more than 95% of ANI distance similarity (--drep_threshold default value paramater, that correspond to the threshold for separate species.) will be grouped together. `Cluster_scoring.pdf`: Each secondary cluster will have its own page in the Cluster scoring figure. These figures show the score of each genome, as well as all metrics that can go into determin, and will always be the genome with the highest score.`Clustering scatterplots.pdf` provides some information about genome alignment statistics, and `Winning genomes.pdf` provides some information about only the “best” genomes of each replicate set, as well as a couple quick overall statistics.
+| figures/ | `Primary_clustering_dendrogram.pdf`: The primary clustering dendrogram summarizes the pair-wise Mash distance between all genomes in the genome list. The first clusturing used Mash, an incredibly fast but not robust algorithm, in order to accelerate the process during the second clusturing. **`Secondary_clustering_dendrograms.pdf`**: Each primary cluster with more than one member will have a page in the Secondary clustering dendrograms file. Bins with more than **95% of ANI distance similarity** (--drep_threshold default value paramater, that correspond to the threshold for separate species.) will be grouped together. **You can try different dRep thresholds to be more or less stringent, for example if the goal of dereplication is to generate a set of genomes that are distinct when mapping short reads, 98% ANI is an appropriate threshold.** You can also try higher threshold in order to separate species that belong to low divergent clades (96, or 97%). `Cluster_scoring.pdf`: Each secondary cluster will have its own page in the Cluster scoring figure. These figures show the score of each genome, as well as all metrics that can go into determin, and will always be the genome with the highest score.`Clustering scatterplots.pdf` provides some information about genome alignment statistics, and `Winning genomes.pdf` provides some information about only the “best” genomes of each replicate set, as well as a couple quick overall statistics.
 
 #### **08_binning/08_3_gtdbtk/**
 | File      | Description                                           |
-- 
GitLab


From 530438be5edb641bc600b2db8ee8e2df1d1edc84 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 21 Nov 2022 14:10:25 +0100
Subject: [PATCH 151/194] reorganise output dir of 02_assembly

---
 modules/assembly.nf            | 56 +++++++++++++++++-----------------
 modules/metaquast.nf           | 12 ++++----
 modules/reads_deduplication.nf |  5 ++-
 subworkflows/02_assembly.nf    |  7 +++--
 4 files changed, 40 insertions(+), 40 deletions(-)

diff --git a/modules/assembly.nf b/modules/assembly.nf
index 9155270..728e8b9 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -1,24 +1,24 @@
 process METASPADES {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly", mode: 'copy', pattern: "metaspades/*"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy', pattern: "metaspades_${meta.id}/*"
   label 'ASSEMBLY_SR'
 
   input:
   tuple val(meta), path(reads)
 
   output:
-  tuple val(meta), path("metaspades/${meta.id}.contigs.fa"), emit: assembly
-  tuple val(meta.id), path("metaspades/${meta.id}.log"), path("metaspades/${meta.id}.params.txt"), emit: report
+  tuple val(meta), path("metaspades_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
+  tuple val(meta.id), path("metaspades_${meta.id}/${meta.id}.log"), path("metaspades_${meta.id}/${meta.id}.params.txt"), emit: report
   path "v_spades.txt", emit: v_metaspades
 
   script:
     (_,mem,unit) = (task.memory =~ /(\d+) ([A-Z]B)/)[0]
     if ( unit =~ /GB/ ) { 
       """
-      metaspades.py -t ${task.cpus} -m $mem -1 ${reads[0]} -2 ${reads[1]} -o metaspades
-      mv metaspades/scaffolds.fasta metaspades/${meta.id}.contigs.fa
-      mv metaspades/spades.log metaspades/${meta.id}.log
-      mv metaspades/params.txt metaspades/${meta.id}.params.txt 
+      metaspades.py -t ${task.cpus} -m $mem -1 ${reads[0]} -2 ${reads[1]} -o metaspades_${meta.id}
+      mv metaspades_${meta.id}/scaffolds.fasta metaspades_${meta.id}/${meta.id}.contigs.fa
+      mv metaspades_${meta.id}/spades.log metaspades_${meta.id}/${meta.id}.log
+      mv metaspades_${meta.id}/params.txt metaspades_${meta.id}/${meta.id}.params.txt 
 
       spades.py --version &> v_spades.txt
       """
@@ -30,22 +30,22 @@ process METASPADES {
 
 process MEGAHIT {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly", mode: 'copy', pattern: "megahit/*"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy', pattern: "megahit_${meta.id}/*"
   label 'ASSEMBLY_SR'
 
   input:
   tuple val(meta), path(reads)
 
   output:
-  tuple val(meta), path("megahit/${meta.id}.contigs.fa"), emit: assembly
-  tuple val(meta.id), path("megahit/${meta.id}.log"), path("megahit/${meta.id}.params.txt"), emit: report
+  tuple val(meta), path("megahit_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
+  tuple val(meta.id), path("megahit_${meta.id}/${meta.id}.log"), path("megahit_${meta.id}/${meta.id}.params.txt"), emit: report
   path "v_megahit.txt", emit: v_megahit
 
   script:
     """
-    megahit -t ${task.cpus} -1 ${reads[0]} -2 ${reads[1]} -o megahit --out-prefix "${meta.id}"
-    mv megahit/options.json megahit/${meta.id}.params.txt
-    rm -r  megahit/intermediate_contigs
+    megahit -t ${task.cpus} -1 ${reads[0]} -2 ${reads[1]} -o megahit_${meta.id} --out-prefix "${meta.id}"
+    mv megahit_${meta.id}/options.json megahit_${meta.id}/${meta.id}.params.txt
+    rm -r  megahit_${meta.id}/intermediate_contigs
 
     megahit --version &> v_megahit.txt
     """
@@ -54,27 +54,27 @@ process MEGAHIT {
 
 process HIFIASM_META {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly", mode: 'copy', pattern: "hifiasm-meta/${meta.id}.*"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy', pattern: "hifiasm_meta_${meta.id}/${meta.id}.*"
   label 'ASSEMBLY_HIFI'
 
   input:
   tuple val(meta), path(reads)
 
   output:
-  tuple val(meta), path("hifiasm-meta/${meta.id}.contigs.fa"), emit: assembly
-  tuple val(meta.id), path("hifiasm-meta/${meta.id}.log"), path("hifiasm-meta/${meta.id}.params.txt"), emit: report
+  tuple val(meta), path("hifiasm_meta_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
+  tuple val(meta.id), path("hifiasm_meta_${meta.id}/${meta.id}.log"), path("hifiasm_meta_${meta.id}/${meta.id}.params.txt"), emit: report
   path "v_hifiasm_meta.txt", emit: v_hifiasm_meta
 
   script:
   """
-  mkdir hifiasm-meta
+  mkdir hifiasm_meta_${meta.id}
 
-  hifiasm_meta -t ${task.cpus} -o ${meta.id} $reads 2> hifiasm-meta/${meta.id}.log
+  hifiasm_meta -t ${task.cpus} -o ${meta.id} $reads 2> hifiasm_meta_${meta.id}/${meta.id}.log
 
   # gfa to fasta format
-  awk '/^S/{print ">"\$2"\\n"\$3}' ${meta.id}.p_ctg.gfa | fold > hifiasm-meta/${meta.id}.contigs.fa
+  awk '/^S/{print ">"\$2"\\n"\$3}' ${meta.id}.p_ctg.gfa | fold > hifiasm_meta_${meta.id}/${meta.id}.contigs.fa
 
-  mv ${meta.id}.cmd  hifiasm-meta/${meta.id}.params.txt
+  mv ${meta.id}.cmd  hifiasm_meta_${meta.id}/${meta.id}.params.txt
 
   echo \$(hifiasm_meta --version 2>&1) > v_hifiasm_meta.txt
   """
@@ -83,25 +83,25 @@ process HIFIASM_META {
 
 process METAFLYE {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly", mode: 'copy', pattern: "metaflye/${meta.id}.*"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy', pattern: "metaflye_${meta.id}/${meta.id}.*"
   label 'ASSEMBLY_HIFI'
 
   input:
   tuple val(meta), path(reads)
 
   output:
-  tuple val(meta), path("metaflye/${meta.id}.contigs.fa"), emit: assembly
-  tuple val(meta.id), path("metaflye/${meta.id}.log"), path("metaflye/${meta.id}.params.json"), emit: report
+  tuple val(meta), path("metaflye_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
+  tuple val(meta.id), path("metaflye_${meta.id}/${meta.id}.log"), path("metaflye_${meta.id}/${meta.id}.params.json"), emit: report
   path "v_metaflye.txt", emit: v_metaflye
 
   script:
   """
-  mkdir metaflye
+  mkdir metaflye_${meta.id}
   
-  flye --pacbio-hifi $reads -o 'metaflye' --meta -t ${task.cpus} 2> metaflye/${meta.id}.log
+  flye --pacbio-hifi $reads -o 'metaflye' --meta -t ${task.cpus} 2> metaflye_${meta.id}/${meta.id}.log
 
-  mv  metaflye/assembly.fasta  metaflye/${meta.id}.contigs.fa
-  mv metaflye/params.json  metaflye/${meta.id}.params.json
+  mv  metaflye_${meta.id}/assembly.fasta  metaflye_${meta.id}/${meta.id}.contigs.fa
+  mv metaflye_${meta.id}/params.json  metaflye_${meta.id}/${meta.id}.params.json
 
   flye --version &> v_metaflye.txt
   """
@@ -109,7 +109,7 @@ process METAFLYE {
 
 process RENAME_CONTIGS {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly/", mode: 'copy'
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
   label 'PYTHON'
 
   input:
diff --git a/modules/metaquast.nf b/modules/metaquast.nf
index dbaa508..9414136 100644
--- a/modules/metaquast.nf
+++ b/modules/metaquast.nf
@@ -1,22 +1,22 @@
 process QUAST {
     tag "${meta.id}"
     label 'QUAST'
-    publishDir "${params.outdir}", mode: 'copy', pattern: "${outdir}/${meta.id}/*"
+    publishDir "${params.outdir}/${outdir}/", mode: 'copy', pattern: "${meta.id}/*"
 
     input:
         tuple val(meta), path(assembly)
         val outdir
 
     output:
-        path "${outdir}/${meta.id}/*", emit: all
-        tuple val(meta), path ("${outdir}/${meta.id}/report.tsv"), emit: report
+        path "${meta.id}/*", emit: all
+        tuple val(meta), path ("${meta.id}/report.tsv"), emit: report
         path "v_quast.txt", emit: v_quast
 
     script:
         """
-        mkdir -p $outdir/${meta.id}/
-        touch $outdir/${meta.id}/report.tsv
-        metaquast.py --threads ${task.cpus} --rna-finding --max-ref-number 0 --min-contig 0 ${assembly} -o $outdir/${meta.id} --labels ${meta.id}
+        mkdir -p ${meta.id}/
+        touch ${meta.id}/report.tsv
+        metaquast.py --threads ${task.cpus} --rna-finding --max-ref-number 0 --min-contig 0 ${assembly} -o ${meta.id} --labels ${meta.id}
 
         quast -v &> v_quast.txt
         """
diff --git a/modules/reads_deduplication.nf b/modules/reads_deduplication.nf
index bce077d..4ff880d 100644
--- a/modules/reads_deduplication.nf
+++ b/modules/reads_deduplication.nf
@@ -1,8 +1,7 @@
 process READS_DEDUPLICATION {
   tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly/deduplicated_reads/", mode: 'copy', pattern: '*.fastq.gz'
-  publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.fastq.gz'
-  publishDir "${params.outdir}/02_assembly/${meta.id}/", mode: 'copy', pattern: '*.bam*'
+  publishDir "${params.outdir}/02_assembly/02_2_deduplicated_reads/", mode: 'copy', pattern: '*.fastq.gz'
+  publishDir "${params.outdir}/02_assembly/02_3_reads_vs_primary_assembly/${meta.id}/", mode: 'copy', pattern: '*.bam*'
   
   input:
   tuple val(meta), path(assembly), path(reads)
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index fe90d44..d202dbd 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -48,7 +48,7 @@ workflow STEP_02_ASSEMBLY {
     }
     
     ch_assembly_renamed = RENAME_CONTIGS(ch_assembly)
-    ASSEMBLY_QUAST( ch_assembly_renamed,"02_assembly/quast_primary")
+    ASSEMBLY_QUAST( ch_assembly_renamed,"02_assembly/02_1_primary_assembly/assembly_metric/")
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
 
@@ -67,14 +67,14 @@ workflow STEP_02_ASSEMBLY {
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
       
     } else {
-        MINIMAP2(ch_contigs_and_reads,"02_assembly")
+        MINIMAP2(ch_contigs_and_reads,"02_assembly/02_3_reads_vs_primary_assembly")
         ch_bam = MINIMAP2.out.bam
 
         ch_minimap2_v = MINIMAP2.out.v_minimap2
         
     }
 
-    GET_ALIGNMENT_METRICS(ch_bam, "02_assembly")
+    GET_ALIGNMENT_METRICS(ch_bam, "02_assembly/02_3_reads_vs_primary_assembly")
 
     ch_idxstats  = GET_ALIGNMENT_METRICS.out.sam_idxstat
     ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
@@ -91,6 +91,7 @@ workflow STEP_02_ASSEMBLY {
     assembly = ch_assembly_renamed
     reads = ch_reads
     bam = ch_bam
+
     idxstats = ch_idxstats
     flagstat = ch_flagstat
     coverage = ch_coverage
-- 
GitLab


From 5cd85427a2e4618143bd5ceea648e94e854c0e34 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 23 Nov 2022 11:28:00 +0100
Subject: [PATCH 152/194] reorganize output directories

---
 functional_tests/functions.py                      |  9 +++++----
 functional_tests/main.py                           |  2 +-
 main.nf                                            | 10 +++++-----
 modules/assign_taxonomy.nf                         |  8 ++++----
 modules/diamond.nf                                 |  2 +-
 modules/filtering_cpm.nf                           | 14 +++++++++++---
 modules/quantif_and_taxonomic_table_contigs.nf     |  2 +-
 subworkflows/03_filtering.nf                       |  8 ++++----
 .../{05_alignment.nf => 05_protein_alignment.nf}   |  2 +-
 subworkflows/07_taxonomic_affi.nf                  |  4 ++--
 10 files changed, 35 insertions(+), 26 deletions(-)
 rename subworkflows/{05_alignment.nf => 05_protein_alignment.nf} (92%)

diff --git a/functional_tests/functions.py b/functional_tests/functions.py
index 6737586..25e7644 100644
--- a/functional_tests/functions.py
+++ b/functional_tests/functions.py
@@ -271,14 +271,15 @@ def test_file(exp_path, obs_path, method):
 
         process = subprocess.Popen(command, stdout = subprocess.PIPE, shell = True, executable = '/bin/bash')
         diff_out, error = process.communicate()
-
+        
         if not error:
-            if diff_out.decode('ascii') != '':
+            diff_result = diff_out.decode()
+            if diff_result != '':
                 test = False
-                out = 'Test result:    Failed\nDifferences:\n{}\n'.format(diff_out.decode('ascii'))
+                out = 'Test result:    Failed\nDifferences:\n{}\n'.format(diff_result)
                 false_cnt += 1
 
-            elif diff_out.decode('ascii') == '':
+            elif diff_result == '':
                 test = True
                 out = 'Test result:    Passed\n'
                 true_cnt += 1
diff --git a/functional_tests/main.py b/functional_tests/main.py
index fc8f4fb..db25d9b 100755
--- a/functional_tests/main.py
+++ b/functional_tests/main.py
@@ -42,7 +42,7 @@ steps_list = OrderedDict([
     ("02_assembly", 2),
     ("03_filtering", 3),
     ("04_structural_annot", 4),
-    ("05_alignment", 5),
+    ("05_protein_alignment", 5),
     ("06_func_annot", 6),
     ("07_taxo_affi", 7),
     ("08_binning", 8)
diff --git a/main.nf b/main.nf
index 5d5d849..d9bc02b 100644
--- a/main.nf
+++ b/main.nf
@@ -16,7 +16,7 @@ include { STEP_01_CLEAN_QC as S01_CLEAN_QC } from './subworkflows/01_clean_qc'
 include { STEP_02_ASSEMBLY as S02_ASSEMBLY } from './subworkflows/02_assembly'
 include { STEP_03_ASSEMBLY_FILTER as S03_FILTERING } from './subworkflows/03_filtering'
 include { STEP_04_STRUCTURAL_ANNOT as S04_STRUCTURAL_ANNOT } from './subworkflows/04_structural_annot'
-include { STEP_05_ALIGNMENT as S05_ALIGNMENT } from './subworkflows/05_alignment'
+include { STEP_05_PROTEIN_ALIGNMENT as S05_PROTEIN_ALIGNMENT } from './subworkflows/05_protein_alignment'
 include { STEP_06_FUNC_ANNOT as S06_FUNC_ANNOT } from './subworkflows/06_functionnal_annot'
 include { STEP_07_TAXO_AFFI as S07_TAXO_AFFI } from './subworkflows/07_taxonomic_affi'
 include { STEP_08_BINNING as S08_BINNING } from './subworkflows/08_binning'
@@ -74,7 +74,7 @@ include { MERGE_FASTQ } from './modules/merge_fastq.nf'
      S04_STRUCTURAL_ANNOT options:
        --stop_at_structural_annot    Stop the pipeline at this step
 
-     S05_ALIGNMENT options:
+     S05_PROTEIN_ALIGNMENT options:
        --diamond_bank                Path to diamond bank used to align protein sequence of genes: "PATH/bank.dmnd".
                                      This bank must be previously built with diamond makedb.
        
@@ -461,11 +461,11 @@ workflow {
   ch_diamond_result = Channel.empty()
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && (!params.skip_func_annot || !params.skip_taxo_affi)) {
-    S05_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
+    S05_PROTEIN_ALIGNMENT (ch_annotation_faa, ch_diamon_db)
 
-    ch_diamond_result = S05_ALIGNMENT.out.diamond_result
+    ch_diamond_result = S05_PROTEIN_ALIGNMENT.out.diamond_result
 
-    ch_software_versions_S05 = S05_ALIGNMENT.out.software_versions
+    ch_software_versions_S05 = S05_PROTEIN_ALIGNMENT.out.software_versions
   }
 
   ch_quant_report = Channel.empty()
diff --git a/modules/assign_taxonomy.nf b/modules/assign_taxonomy.nf
index 9634f94..1e15530 100644
--- a/modules/assign_taxonomy.nf
+++ b/modules/assign_taxonomy.nf
@@ -1,6 +1,6 @@
 process ASSIGN_TAXONOMY {
   tag "${meta.id}"
-  publishDir "${params.outdir}/07_taxo_affi/${meta.id}", mode: 'copy'
+  publishDir "${params.outdir}/07_taxo_affi/07_1_affiliation_per_sample/${meta.id}", mode: 'copy'
   label 'PYTHON'
 
   input:
@@ -54,7 +54,7 @@ process ASSIGN_TAXONOMY {
 
 
 process  PLOT_TAXONOMIC_AFFILIATIONS{
-  publishDir "${params.outdir}/07_taxo_affi/", mode: 'copy'
+  publishDir "${params.outdir}/07_taxo_affi/07_3_plot/", mode: 'copy'
   label 'PYTHON'
 
   input:
@@ -62,11 +62,11 @@ process  PLOT_TAXONOMIC_AFFILIATIONS{
     path quantif_percontig
 
   output:
-    path "plots/*html"
+    path "*html"
 
   script:
     """
-    plot_contigs_taxonomic_affiliation.py $quantif_percontig --output_dir "plots"
+    plot_contigs_taxonomic_affiliation.py $quantif_percontig --output_dir "."
 
 
     """
diff --git a/modules/diamond.nf b/modules/diamond.nf
index 64404f8..6603b05 100644
--- a/modules/diamond.nf
+++ b/modules/diamond.nf
@@ -1,5 +1,5 @@
 process DIAMOND {
-    publishDir "${params.outdir}/05_alignment/05_2_database_alignment/$meta.id", mode: 'copy', pattern: "*.m8"
+    publishDir "${params.outdir}/05_protein_alignment/05_1_database_alignment/$meta.id", mode: 'copy', pattern: "*.m8"
     tag "${meta.id}"
 
     input:
diff --git a/modules/filtering_cpm.nf b/modules/filtering_cpm.nf
index cdfe8e5..5dd2c90 100644
--- a/modules/filtering_cpm.nf
+++ b/modules/filtering_cpm.nf
@@ -20,7 +20,8 @@ process MERGE_ASSEMBLY_FILTER {
   label 'ASSEMBLY_FILTER'
 
   tag "${meta.id}"
-  publishDir "${params.outdir}/03_filtering/", mode: 'copy'
+  publishDir "${params.outdir}/03_filtering/03_1_filtered_assembly/", mode: 'copy', pattern: "*_select_contigs*"
+  publishDir "${params.outdir}/03_filtering/03_1_filtered_assembly/discard_contigs", mode: 'copy', pattern: "*_discard_contigs*"
 
   input:
     tuple val(meta), path(select_fasta)
@@ -36,8 +37,15 @@ process MERGE_ASSEMBLY_FILTER {
     echo !{select_fasta} | sed "s/ /\\n/g" | sort > select_list
     echo !{discard_fasta} | sed "s/ /\\n/g" | sort > discard_list
 
-    for i in `cat select_list` ; do cat $i >> !{meta.id}_select_contigs_cpm!{min_cpm}.fasta ; done
-    for j in `cat discard_list` ; do cat $j >> !{meta.id}_discard_contigs_cpm!{min_cpm}.fasta ; done
+    for i in `cat select_list` ; 
+    do 
+      cat $i >> !{meta.id}_select_contigs_cpm!{min_cpm}.fasta
+    done
+    
+    for j in `cat discard_list` ; 
+    do 
+      cat $j >> !{meta.id}_discard_contigs_cpm!{min_cpm}.fasta
+    done
     
     rm select_list
     rm discard_list
diff --git a/modules/quantif_and_taxonomic_table_contigs.nf b/modules/quantif_and_taxonomic_table_contigs.nf
index 875df7a..faf2848 100644
--- a/modules/quantif_and_taxonomic_table_contigs.nf
+++ b/modules/quantif_and_taxonomic_table_contigs.nf
@@ -1,7 +1,7 @@
 taxo_list = "all superkingdom phylum class order family genus species"
 
 process QUANTIF_AND_TAXONOMIC_TABLE_CONTIGS {
-  publishDir "${params.outdir}/07_taxo_affi", mode: 'copy'
+  publishDir "${params.outdir}/07_taxo_affi/07_2_affiliation_merged", mode: 'copy'
   label 'PYTHON'
 
   input:
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index be38cd6..3e7288b 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -66,13 +66,13 @@ workflow STEP_03_ASSEMBLY_FILTER {
 
         ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
 
-        BWA_MEM(ch_contigs_and_discarded_reads, "03_filtering")
+        BWA_MEM(ch_contigs_and_discarded_reads, "03_filtering/03_2_reads_vs_filtered_assembly")
         ch_bam_with_discarded_reads = BWA_MEM.out.bam
 
   } else {
         ch_discarded_reads = EXTRACT_SINGLE_READS(ch_discarded_bam)
         ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
-        MINIMAP2(ch_contigs_and_discarded_reads, "03_filtering")
+        MINIMAP2(ch_contigs_and_discarded_reads, "03_filtering/03_2_reads_vs_filtered_assembly")
         ch_bam_with_discarded_reads = MINIMAP2.out.bam
   
   }
@@ -86,12 +86,12 @@ workflow STEP_03_ASSEMBLY_FILTER {
    ch_final_bam = ch_bam_of_sample_without_discarded_contigs.mix(ch_merged_bam)
 
 
-  GET_ALIGNMENT_METRICS(ch_final_bam, '03_filtering/')
+  GET_ALIGNMENT_METRICS(ch_final_bam, '03_filtering/03_2_reads_vs_filtered_assembly/')
 
   ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
   ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
 
-  QUAST( ch_merged_selected, "03_filtering/quast_filtered" )
+  QUAST( ch_merged_selected, "03_filtering/03_1_filtered_assembly/assembly_metric" )
   ch_quast_report = QUAST.out.report
 
   emit:
diff --git a/subworkflows/05_alignment.nf b/subworkflows/05_protein_alignment.nf
similarity index 92%
rename from subworkflows/05_alignment.nf
rename to subworkflows/05_protein_alignment.nf
index 9017d47..56258c4 100644
--- a/subworkflows/05_alignment.nf
+++ b/subworkflows/05_protein_alignment.nf
@@ -1,6 +1,6 @@
 include { DIAMOND } from '../modules/diamond'
 
-workflow STEP_05_ALIGNMENT {
+workflow STEP_05_PROTEIN_ALIGNMENT {
     take:
         prokka_faa
         diamond
diff --git a/subworkflows/07_taxonomic_affi.nf b/subworkflows/07_taxonomic_affi.nf
index 8eb2640..99ead6c 100644
--- a/subworkflows/07_taxonomic_affi.nf
+++ b/subworkflows/07_taxonomic_affi.nf
@@ -25,9 +25,9 @@ workflow STEP_07_TAXO_AFFI {
 
         PLOT_TAXONOMIC_AFFILIATIONS(ASSIGN_TAXONOMY.out.q_all.collect())
 
-        KRONA_READS_COUNT(ASSIGN_TAXONOMY.out.krona_reads_count.collect(), "07_taxo_affi/plots", "krona_read_count_abundance.html")
+        KRONA_READS_COUNT(ASSIGN_TAXONOMY.out.krona_reads_count.collect(), "07_taxo_affi/07_3_plot", "krona_read_count_abundance.html")
 
-        KRONA_DEPTH(ASSIGN_TAXONOMY.out.krona_depth.collect(), "07_taxo_affi/plots", "krona_mean_depth_abundance.html")
+        KRONA_DEPTH(ASSIGN_TAXONOMY.out.krona_depth.collect(), "07_taxo_affi/07_3_plot", "krona_mean_depth_abundance.html")
 
     emit:
         quantif_by_contig_lineage = QUANTIF_AND_TAXONOMIC_TABLE_CONTIGS.out.quantif_by_contig_lineage
-- 
GitLab


From 5b28724a97f1ffa0a486a02ffa27416608184858 Mon Sep 17 00:00:00 2001
From: DARBOT Vincent <vincent.darbot@inrae.fr>
Date: Fri, 25 Nov 2022 15:27:43 +0100
Subject: [PATCH 153/194] Update docs/output.md

---
 docs/output.md | 17 ++++++++++++++++-
 1 file changed, 16 insertions(+), 1 deletion(-)

diff --git a/docs/output.md b/docs/output.md
index 4ee8815..44af305 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -169,11 +169,26 @@ The `results/` directory contains a sub-directory for each step launched:
 #### **08_binning/08_2_dereplicated_bins**
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
-| dereplicated_genomes/ | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples. |
+| dereplicated_genomes/ | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples.  |
 | data_tables/genomeInformation.csv | Calculated metrics of all the bins before de-replication, used to select the representative bin after de-replication. Completeness and contamination where calculated before with CheckM2, during bin_refinement step. dRep adds further metrics and use all four to choose the best bin. |
 | data_tables/Bins_clusters_composition.tsv | Associates each representative bins cluster (1st column) to the bins list within the cluster (2nd column, bins seperates by commas). |
 | figures/ | `Primary_clustering_dendrogram.pdf`: The primary clustering dendrogram summarizes the pair-wise Mash distance between all genomes in the genome list. The first clusturing used Mash, an incredibly fast but not robust algorithm, in order to accelerate the process during the second clusturing. **`Secondary_clustering_dendrograms.pdf`**: Each primary cluster with more than one member will have a page in the Secondary clustering dendrograms file. Bins with more than **95% of ANI distance similarity** (--drep_threshold default value paramater, that correspond to the threshold for separate species.) will be grouped together. **You can try different dRep thresholds to be more or less stringent, for example if the goal of dereplication is to generate a set of genomes that are distinct when mapping short reads, 98% ANI is an appropriate threshold.** You can also try higher threshold in order to separate species that belong to low divergent clades (96, or 97%). `Cluster_scoring.pdf`: Each secondary cluster will have its own page in the Cluster scoring figure. These figures show the score of each genome, as well as all metrics that can go into determin, and will always be the genome with the highest score.`Clustering scatterplots.pdf` provides some information about genome alignment statistics, and `Winning genomes.pdf` provides some information about only the “best” genomes of each replicate set, as well as a couple quick overall statistics.
 
+If you want to make further analysis about intra-population genetic diversity (microdiversity) on the genomes, you can use **inStrain** software specifically developed for this purpose. metagWGS outputs allows to easily run inStrain on this way:
+
+**1. Firstly, inStrain profile step calculates genome-level metrics for a genome of interest within each sample in which it is present:**
+
+`inStrain profile results/08_binning/08_4_mapping_on_final_bins/mapping/first_sample/first_sample.sort.bam  results/08_binning/08_2_dereplicated_bins/dereplicated_genomes/first_bin.fa -o IS_output_first_sample`
+
+`inStrain profile results/08_binning/08_4_mapping_on_final_bins/mapping/first_sample/second_sample.sort.bam  results/08_binning/08_2_dereplicated_bins/dereplicated_genomes/first_bin.fa -o IS_output_second_sample`
+
+`inStrain profile results/08_binning/08_4_mapping_on_final_bins/mapping/first_sample/third_sample.sort.bam  results/08_binning/08_2_dereplicated_bins/dereplicated_genomes/first_bin.fa -o IS_output_third_sample`
+
+**2. Then, inStrain compare takes multiple inStrain profile objects (generated using the commands above) and performs strain-level comparisons :**
+
+`inStrain compare IS_output_first_sample IS_output_second_sample IS_output_third_sample`
+
+
 #### **08_binning/08_3_gtdbtk/**
 | File      | Description                                           |
 | ----------------------- | --------------------------------------- |
-- 
GitLab


From 2948e1d3f433134850f9edf7e7646b5c75ba1619 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 25 Nov 2022 17:16:54 +0100
Subject: [PATCH 154/194] fix output organisation in metaflye process

---
 modules/assembly.nf | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/modules/assembly.nf b/modules/assembly.nf
index 728e8b9..98cf3c6 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -98,9 +98,9 @@ process METAFLYE {
   """
   mkdir metaflye_${meta.id}
   
-  flye --pacbio-hifi $reads -o 'metaflye' --meta -t ${task.cpus} 2> metaflye_${meta.id}/${meta.id}.log
+  flye --pacbio-hifi $reads -o 'metaflye_${meta.id}' --meta -t ${task.cpus} 2> metaflye_${meta.id}/${meta.id}.log
 
-  mv  metaflye_${meta.id}/assembly.fasta  metaflye_${meta.id}/${meta.id}.contigs.fa
+  mv metaflye_${meta.id}/assembly.fasta  metaflye_${meta.id}/${meta.id}.contigs.fa
   mv metaflye_${meta.id}/params.json  metaflye_${meta.id}/${meta.id}.params.json
 
   flye --version &> v_metaflye.txt
-- 
GitLab


From 1df91d299af41be92231cf4c31b6fb105c5bd949 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 25 Nov 2022 17:17:24 +0100
Subject: [PATCH 155/194] update output.md with new output organisation

---
 docs/output.md | 149 +++++++++++++++++++++++++++++++------------------
 1 file changed, 95 insertions(+), 54 deletions(-)

diff --git a/docs/output.md b/docs/output.md
index 44af305..080c01f 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -10,28 +10,30 @@ This document describes the output files produced by metagWGS.
 
 | Directory/        | Description                                    |
 | ------------- | --------------------------------------- |
-| `work/`          | Directory containing the Nextflow working files. Directory name can be changed if you use -w option of Nextflow.     |
+| `work/`          | Directory containing the Nextflow working files. Directory name can be changed if you use -w option of Nextflow.  Once you are happy with the analysis and you do not intend to resume the pipeline execution, you can delete this directory. |
 | `results/`       | Directory containing metagWGS output files. Directory name can be changed if you use --outdir parameter of metagWGS. |
 
 ### Description of output files in `results/` directory:
 
 The `results/` directory contains a sub-directory for each step launched:
 
-#### **01_clean_qc/01_1_cleaned_reads/**
+#### **01_clean_qc**
+
+##### **01_clean_qc/01_1_cleaned_reads/**
 
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `cleaned_SAMPLE_NAME_R{1,2}.fastq.gz`        | There are one R1 and one R2 file for each sample. |
 | `logs/`    | Contains cutadapt (`SAMPLE_NAME_cutadapt.log`) and sickle (`SAMPLE_NAME_sickle.log`) log files for each sample. Only if you remove host reads, in `SAMPLE_NAME_cleaned_R{1,2}.nb_bases` you have the number of nucleotides into each cleaned R1 and R2 files of each sample. Only if you remove host reads, you also have a samtools flagstat file for each sample before removing host reads (`SAMPLE_NAME.no_filter.flagstat`) and into the directory `host_filter_flagstat/` there are the samtools flagstat files (`SAMPLE_NAME.host_filter.flagstat`) after removing host reads.          |
 
-#### **01_clean_qc/01_2_qc/**
+##### **01_clean_qc/01_2_qc/**
 
 | Directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `fastqc_raw/SAMPLE_NAME/`       | Contains the results of fastQC on raw data: two files (`.html` and `.zip`) for R1 and two files for R2 (`.html` and `.zip`). |
 | `fastqc_cleaned/cleaned_SAMPLE_NAME/`   | Same as `01_2_qc/fastqc_raw/` but for cleaned data. |
 
-#### **01_clean_qc/01_3_taxonomic_affiliation_reads/**
+##### **01_clean_qc/01_3_taxonomic_affiliation_reads/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -40,60 +42,86 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME_MEM_verbose_only_classified.out.gz`    | Compressed kaiju results. Each row corresponds to a classified reading. The first column 'C' indicates that the read is classified, the second column is the name of the read, the third is the NCBI taxon ID of the assigned taxon, the fourth is the length or score of the best match used for classification, the fifth is the taxon ID of all database sequences with the best match, the sixth is the accession number of all database sequences with the best match, and the last is the corresponding fragment sequence(s).   |
 | `match_length_kaiju_distribution.html`   |  Density plot of the size of the matches found by kaiju in reads of each sample. |
 
-#### **02_assembly/**
+#### **02_assembly**
 
-**NOTE:** in this directory you have either the results of assembly with `metaspades` or `megahit` but not both. You have chosen your assembly tool with `--assembly` parameter.
+#### **02_assembly/02_1_primary_assembly**
 
-| File or directory/      | Description                             |
-| ----------------------- | --------------------------------------- |
-| `metaspades/SAMPLE_NAME.log` | metaspades logs. Only if `--assembly "metaspades"` is used.|
-| `metaspades/SAMPLE_NAME.params.txt` | metaspades command line parameters used for the analysis. Only if `--assembly "metaspades"` is used.|
-| `metaspades/SAMPLE_NAME.contigs.fa` | metaspades assembly: nucleotide sequence of contigs. Only if `--assembly "metaspades"` is used.|
-| `megahit/SAMPLE_NAME.log` | megahit logs. Only if `--assembly "megahit"` is used.|
-| `megahit/SAMPLE_NAME.params.txt` | megahit options used for the analysis. Only if `--assembly "megahit"` is used.|
-| `megahit/SAMPLE_NAME.contigs.fa` | megahit assembly: nucleotide sequence of contigs. Only if `--assembly "megahit"` is used.|
-| `SAMPLE_NAME_all_contigs_QC/` | Contains metaQUAST quality control files of contigs. |
+**NOTE:** in this directory you have either the results of assembly with `metaspades` or `megahit` if you analyse short read data and `hifiasm-meta` or `metaflye` if you analyse HiFi data. You have chosen your assembly tool with `--assembly` parameter.
+
+| File or directory/             | Description                                                                                                                      |
+|--------------------------------|----------------------------------------------------------------------------------------------------------------------------------|
+| `SAMPLE_NAME.fna`              | unfiltered assembly (primary assembly) with renamed contigs. Contig names follow this pattern: `<sample_name>_c<contig_number>`. |
+| `assembly_metric`              | Contains metaQUAST quality control files of contigs.                                                                             |
+| `<assembly_tool>_SAMPLE_NAME/` | output files of the assembly tool. It contains logs and original fasta files of the assembly before renaming.                    |
+
+
+
+##### **02_assembly/02_2_deduplicated_reads**
+
+**NOTE:** This directory contains deduplicated reads. It is created only for short read data.
+
+| File or directory/                  | Description                                                  |
+|-------------------------------------|--------------------------------------------------------------|
 | `SAMPLE_NAME_R{1,2}_dedup.fastq.gz` | Deduplicated reads (R1 and R2 files) for SAMPLE_NAME sample. |
-| `logs/` | Contains `SAMPLE_NAME.count_reads_on_contigs.flagstat`, `SAMPLE_NAME.count_reads_on_contigs.idxstats` and `SAMPLE_NAME_dedup_R{1,2}.nb_bases` files for each sample, generated after deduplication of reads. `SAMPLE_NAME.count_reads_on_contigs.flagstat` and `SAMPLE_NAME.count_reads_on_contigs.idxstats` are respectively the results of samtools flagstat (see informations [here](http://www.htslib.org/doc/samtools-flagstat.html)) and samtools idxstats (see description [here](http://www.htslib.org/doc/samtools-idxstats.html)), `SAMPLE_NAME_R{1,2}.nb_bases` corresponds to the number of nucleotides in the deduplicated R1 and R2 files. |
 
-#### **03_filtering/**
+##### **02_assembly/02_3_reads_vs_primary_assembly**
 
-| File or directory/      | Description                             |
-| ----------------------- | --------------------------------------- |
-| `SAMPLE_NAME_select_contigs_cpm[percent_identity].fasta` | Nucleotide sequence of contigs selected after filtering step with a percentage of identity of [percent_identity]. |
-| `SAMPLE_NAME_discard_contigs_cpm[percent_identity].fasta` | Nucleotide sequence of contigs discarded after filtering step with a percentage of identity of [percent_identity]. |
-| `SAMPLE_NAME_select_contigs_QC/` | Contains metaQUAST quality control files of filtered contigs. |
+**NOTE:** in this directory you have alignement metrics of reads aligned to the primary assembly (before the asssembly filering step if any). For short reads, reads have been deduplicated.
 
-#### **04_structural_annot/**
 
-| File      | Description                             |
-| ----------------------- | --------------------------------------- |
-| `SAMPLE_NAME.annotated.faa` | Protein sequence of structural annotated genes. |
-| `SAMPLE_NAME.annotated.ffn` | Nucleotide sequence of structural annotated genes. |
-| `SAMPLE_NAME.annotated.fna` | Nucleotide sequence of contigs used by Prokka for the annotation of genes. In the used version of Prokka, it removes short contigs (<200bp). **WARNING:** these contigs are used in the following analysis. |
-| `SAMPLE_NAME.annotated.gff` | Coordinates of structural annotated genes into contigs. |
-| `SAMPLE_NAME_prot.len` | Length (in bp) of each gene annotated with Prokka |
+| File or directory/                     | Description                                                                                     |
+|----------------------------------------|-------------------------------------------------------------------------------------------------|
+| `SAMPLE_NAME/SAMPLE_NAME.bam`          | Samtools BAM file of sample reads align to the sample assembly.                                 |
+| `SAMPLE_NAME/SAMPLE_NAME.coverage.tsv` | Samtools coverage file (see details [here](http://www.htslib.org/doc/samtools-coverage.html))   |
+| `SAMPLE_NAME/SAMPLE_NAME.flagstat`     | Samtools flagstat file (see details  [here](http://www.htslib.org/doc/samtools-flagstat.html) ) |
+| `SAMPLE_NAME/SAMPLE_NAME.idxstats`     | Samtools idxstat file (see details  [here](http://www.htslib.org/doc/samtools-flagstat.html) )  |
 
-**WARNING: starting from this step, the gene names follow this nomenclature: SAMPLE_NAME_CONTIG_ID.Prot_PROT_ID. Contig names follow the same nomenclature: SAMPLE_NAME_CONTIG_ID.**
 
-#### **05_alignment/05_1_reads_alignment_on_contigs/**
+#### **03_filtering**
 
-**WARNING:** contains a directory by sample. Each directory contains the following files:
+**NOTE:** This directory is created when the assembly filtering step is applied. 
 
-| File      | Description                             |
-| ----------------------- | --------------------------------------- |
-| `SAMPLE_NAME.sort.bam` | Alignment of reads on contigs (.bam file). |
-| `SAMPLE_NAME.sort.bam.bai` | Index of .bam file. |
-| `SAMPLE_NAME.sort.bam.idxstats` | Samtools idxstats file. See description [here](http://www.htslib.org/doc/samtools-idxstats.html). |
-| `SAMPLE_NAME_coverage.tsv` | Samtools coverage file. See description [here](http://www.htslib.org/doc/samtools-coverage.html). |
+##### **03_filtering/03_1_filtered_assembly/** 
+
+| File or directory/                                                     | Description                                                                                                  |
+|------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------|
+| `SAMPLE_NAME_select_contigs_cpm[cpm_threshold].fasta`                  | Selected contigs after filtering. This is the assembly fasta file used in the rest of the pipeline analysis. |
+| `discard_contigs/SAMPLE_NAME_discard_contigs_cpm[cpm_threshold].fasta` | Contigs that have been removed from the assembly.                                                            |
+| `assembly_metric/`                                                     | Contains metaQUAST quality control files of filtered assemblies.     
+
+##### **03_filtering/03_2_reads_vs_filtered_assembly/**
+
+
+**NOTE:** This directory contains alignement metrics of reads aligned to the filtered assembly.
 
-#### **05_alignment/05_2_database_alignment/**
+
+| File or directory/                     | Description                                                                                     |
+|----------------------------------------|-------------------------------------------------------------------------------------------------|
+| `SAMPLE_NAME/SAMPLE_NAME.bam`          | Samtools BAM file of sample reads align to the sample assembly.                                 |
+| `SAMPLE_NAME/SAMPLE_NAME.coverage.tsv` | Samtools coverage file (see details [here](http://www.htslib.org/doc/samtools-coverage.html))   |
+| `SAMPLE_NAME/SAMPLE_NAME.flagstat`     | Samtools flagstat file (see details  [here](http://www.htslib.org/doc/samtools-flagstat.html) ) |
+| `SAMPLE_NAME/SAMPLE_NAME.idxstats`     | Samtools idxstat file (see details  [here](http://www.htslib.org/doc/samtools-flagstat.html) )  |
+
+                                        |
+
+#### **04_structural_annot/**
+
+| File                          | Description                                                      |
+|-------------------------------|------------------------------------------------------------------|
+| `SAMPLE_NAME/SAMPLE_NAME.faa` | Fasta file of protein sequences of structural annotated genes.   |
+| `SAMPLE_NAME/SAMPLE_NAME.ffn` | Fasta file of nucleotide sequence of structural annotated genes. |
+| `SAMPLE_NAME/SAMPLE_NAME.gff` | Coordinates of structural annotated genes into contigs.          |
+| `SAMPLE_NAME/SAMPLE_NAME.txt` | Summary of the assembly structural annotation.                   |
+
+#### **05_protein_alignment/05_1_database_alignment/**
 
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `SAMPLE_NAME/SAMPLE_NAME_aln_diamond.m8` | Diamond results file. |
 
-#### **06_func_annot/06_1_clustering/**
+#### **06_func_annot**
+
+##### **06_func_annot/06_1_clustering/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -104,7 +132,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `All-cd-hit-est.[cd-hit percentage identity].fasta.clstr` | Text file of list of inter-sample clusters generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
 | `table_clstr.txt` | Correspondance table of inter-sample clusters and intra-sample clusters. One line = one correspondance between an inter-sample cluster (first column) and an intra-sample cluster (second column). |
 
-#### **06_func_annot/06_2_quantification/**
+##### **06_func_annot/06_2_quantification/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -114,7 +142,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `Correspondence_global_clstr_contigs.txt` | Correspondance table of inter-sample clusters and initial genes. One line = one correspondance between an inter-sample cluster (first column) and an initial gene (second column). |
 | `Clusters_Count_table_all_samples.txt` | Abundance table of reads. Each cell contains the sum of aligned reads on each initial gene of each inter-sample cluster for each sample (inter_sample clusters in rows and samples in colums).|
 
-#### **06_func_annot/06_3_functional_annotation/**
+##### **06_func_annot/06_3_functional_annotation/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -130,6 +158,8 @@ The `results/` directory contains a sub-directory for each step launched:
 
 #### **07_taxo_affi/**
 
+##### **07_taxo_affi/07_1_affiliation_per_sample**
+
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `SAMPLE_NAME/SAMPLE_NAME.pergene.tsv` | Taxonomic affiliation of genes. One line corresponds to a gene (1st column), its corresponding taxon id (2nd column), its corresponding lineage (3rd column) and the tax ids of each level of this lineage (4th column). |
@@ -140,15 +170,23 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/SAMPLE_NAME_quantif_percontig_by_[taxonomic_level].tsv` | One file by taxonomic level (superkingdom, phylum, order, class, family, genus, species) for the sample `SAMPLE_NAME`. Quantification table of reads aligned on contigs affiliated to each lineage of the corresponding [taxonomic level]. One line = one taxonomic affiliation at this [taxonomic level] with is taxon id (1st column, `tax_id_by_level`), its lineage (2nd column, `lineage_by_level`), the name of contigs affiliated to this lineage (3rd column, `name_contigs`), the number of contigs affiliated to this lineage (4th column, `nb_contigs`), the sum of the number of reads aligned to these contigs (5th column, `nb_reads`) and the mean depth of these contigs (6th column, `depth`). |
 | `SAMPLE_NAME/graphs/SAMPLE_NAME_aln_diamond.m8_contig_taxonomy_level.pdf` | Figure representing the number of contigs (y-axis) affiliated to each taxonomy levels (x-axis). |
 | `SAMPLE_NAME/top_taxons_per_contig.tsv` | Details of top possible taxons per contig and for each taxonomic rank. For each rank, there is a list of the top possible taxons and their weigth in parentesis (only taxons with a weigth > 1 is written). For example in the genus column we can have `Escherichia (68.0);Shigella (20.0);Enterobacter (4.0);Salmonella (4.0);Felsduovirus (4.0)`. This file can be useful to understand an affiliation in detail.  |
-| `SAMPLE_NAME/graphs/SAMPLE_NAME_aln_diamond.m8_contig_taxonomy_level.pdf` | Figure representing the number of contigs (y-axis) affiliated to each taxonomy levels (x-axis). |
-| `SAMPLE_NAME/graphs/SAMPLE_NAME_aln_diamond.m8_prot_taxonomy_level.pdf` | Figure representing the number of proteins (y-axis) affiliated to each taxonomy levels (x-axis). |
-| `SAMPLE_NAME/graphs/SAMPLE_NAME_aln_diamond.m8_nb_prot_annotated_and_assigned.pdf` | Figure representing the number of proteins (y-axis) in our contigs (`Total` bar), the number of proteins with a match into the database (`Annotated` bar) and the number of proteins with a match into the database which is found into the taxonomy (`Assigned` bar) (x-axis). |
+
+
+##### **07_taxo_affi/07_2_affiliation_merged**
+| File      | Description                             |
+| ----------------------- | --------------------------------------- |
 | `quantification_by_contig_lineage_all.tsv` | Quantification table of reads aligned on contigs affiliated to each lineage. One line = one taxonomic affiliation with its lineage (1st column, `lineage_by_level`), the taxon id at each level of this lineage (2nd column, `tax_id_by_level`), and then all next 3-columns blocks correspond to one sample. Each 3-column block corresponds to the name of contigs affiliated to this lineage (1st column, `name_contigs_SAMPLE_NAME_quantif_percontig`), the number of contigs affiliated to this lineage (2nd column, `nb_contigs_SAMPLE_NAME_quantif_percontig`), the sum of the number of reads aligned to these contigs (3rd column, `nb_reads_SAMPLE_NAME_quantif_percontig`) and the mean depth of these contigs (4th column, `depth_SAMPLE_NAME_quantif_percontig`). |
 | `quantification_by_contig_lineage_[taxonomic_level].tsv` | One file by taxonomic level (superkingdom, phylum, order, class, family, genus, species). Quantification table of reads aligned on contigs affiliated to each lineage of the corresponding [taxonomic level]. One line = one taxonomic affiliation at this [taxonomic level] with its taxon id (1st column, `tax_id_by_level`), its lineage (2nd column, `lineage_by_level`), and then all next 3-columns blocks correspond to one sample. Each 3-column block corresponds to the name of contigs affiliated to this lineage (1st column, `name_contigs_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`), the number of contigs affiliated to this lineage (2nd column, `nb_contigs_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`) and the sum of the number of reads aligned to these contigs (3rd column, `nb_reads_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`) and the mean depth of these contigs (4th column, `depth_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`). |
-| `plots/krona_mean_depth_abundance.html` | Krona plot of the taxonomic affiliation of contigs. The abundance of a taxon is the percentage of the depth of the contigs affiliated to this taxon.  |
-| `plots/krona_read_count_abundance.html` | Krona plot of the taxonomic affiliation of contigs. The abundance of a taxon is the percentage of reads mapping the contigs affiliated to this taxon. |
-| `plots/abundance_per_rank.html` | This plot represents the abundance of affiliation made for each taxonomic rank.|
-| `plots/most_abundant_taxa.html` | This plot represents the abundance of the 10 most abundant taxa at each taxonomic rank and for each sample.|
+
+
+##### **07_taxo_affi/07_3_plot/**
+
+| File      | Description                             |
+| ----------------------- | --------------------------------------- |
+| `krona_mean_depth_abundance.html` | Krona plot of the taxonomic affiliation of contigs. The abundance of a taxon is the percentage of the depth of the contigs affiliated to this taxon.  |
+| `krona_read_count_abundance.html` | Krona plot of the taxonomic affiliation of contigs. The abundance of a taxon is the percentage of reads mapping the contigs affiliated to this taxon. |
+| `abundance_per_rank.html` | This plot represents the abundance of affiliation made for each taxonomic rank.|
+| `most_abundant_taxa.html` | This plot represents the abundance of the 10 most abundant taxa at each taxonomic rank and for each sample.|
 
 #### **08_binning/**
 
@@ -156,7 +194,10 @@ The `results/` directory contains a sub-directory for each step launched:
 | ----------------------- | --------------------------------------- |
 | `genomes_abundances.tsv` | Global informations about the final set of bins. One line = one bin id (1st column, `genome_id`), its bin name, retrieve from the lowest taxonomic rank affiliated by GTDB-Tk (2nd column, `genome_name`), the Domain, Phylum, Class, Order, Family, Genus, Species taxonomic affiliations made with GTDB-Tk (3rd, 4th, 5th, 6th, 7th, 8th and 9th columns), its quality metrics : `completeness` and `contamination`, retrieved with Checkm2 (10th and 11th columns), its size in bp (12th column, `genome_length`), its N50 metric (13th column, genome_N50), its number of contigs (14th column, `contig_count`). After that, there is 2 columns per sample : the number of reads and the mean depth associated to the bin within the specicic sample. Finally, the second to last column (`sum_numreads`) described the bin's total number of reads between all the samples, and the last (`mean_depth`) the average depth between all sample.|
 
-#### **08_binning/08_1_binning_per_sample**
+
+#### **08_binning**
+
+##### **08_binning/08_1_binning_per_sample**
 
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -166,7 +207,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/bin_refinement`| This directory contains bins fasta files from the aggregate binning module bin_refinement from metaWRAP tool, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://microbiomejournal.biomedcentral.com/articles/10.1186/s40168-018-0541-1)). |
 | `SAMPLE_NAME/bin_refinement/unbinned_contigs.fasta`| Contigs from the sample assembly that are not retrieved in any bin. The proportion of non-binned contigs to the global size of the sample assembly can be seen in the MultiQC report, in the section Bins Size (bp) quality. |
 
-#### **08_binning/08_2_dereplicated_bins**
+##### **08_binning/08_2_dereplicated_bins**
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | dereplicated_genomes/ | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples.  |
@@ -189,12 +230,12 @@ If you want to make further analysis about intra-population genetic diversity (m
 `inStrain compare IS_output_first_sample IS_output_second_sample IS_output_third_sample`
 
 
-#### **08_binning/08_3_gtdbtk/**
+##### **08_binning/08_3_gtdbtk/**
 | File      | Description                                           |
 | ----------------------- | --------------------------------------- |
 | gtdbtk.bac120.summary.tsv | Taxonomic classifications provided by GTDB-Tk. One line = one bin id (1st column, `user_genome`), its taxonomical classification based on the closest reference genome from the GTDB-Tk database (2nd column, `classification`), the accession number of the closest reference genome (3rd column, `fastani_reference`). Please see GTDB-Tk documentation [here](https://ecogenomics.github.io/GTDBTk/files/summary.tsv.html) for information on additional columns. 
 
-#### **08_4_mapping_on_final_bins**
+##### **08_4_mapping_on_final_bins**
 | File      | Description                                           |
 | ----------------------- | --------------------------------------- |
 | mapping/SAMPLE_NAME/ | In order to compare genomes abundances between samples, mapping of metagenomics samples reads against the final set of de-replicated bins is performed.
-- 
GitLab


From 26700cb38773d9d730ae33c6fc26229c18a64dd7 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 25 Nov 2022 17:29:21 +0100
Subject: [PATCH 156/194] add table of content and update title size

---
 docs/output.md | 104 ++++++++++++++++++++++++++++++++-----------------
 1 file changed, 69 insertions(+), 35 deletions(-)

diff --git a/docs/output.md b/docs/output.md
index 080c01f..764a752 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -1,39 +1,74 @@
 # metagWGS: Output
 
-## Introduction
-
 This document describes the output files produced by metagWGS.
 
+- [metagWGS: Output](#metagwgs-output)
+  - [Description of output files and directories](#description-of-output-files-and-directories)
+  - [Description of output files in `results/` directory:](#description-of-output-files-in-results-directory)
+    - [**01\_clean\_qc**](#01_clean_qc)
+      - [**01\_clean\_qc/01\_1\_cleaned\_reads/**](#01_clean_qc01_1_cleaned_reads)
+      - [**01\_clean\_qc/01\_2\_qc/**](#01_clean_qc01_2_qc)
+      - [**01\_clean\_qc/01\_3\_taxonomic\_affiliation\_reads/**](#01_clean_qc01_3_taxonomic_affiliation_reads)
+    - [**02\_assembly**](#02_assembly)
+      - [**02\_assembly/02\_1\_primary\_assembly**](#02_assembly02_1_primary_assembly)
+      - [**02\_assembly/02\_2\_deduplicated\_reads**](#02_assembly02_2_deduplicated_reads)
+      - [**02\_assembly/02\_3\_reads\_vs\_primary\_assembly**](#02_assembly02_3_reads_vs_primary_assembly)
+    - [**03\_filtering**](#03_filtering)
+      - [**03\_filtering/03\_1\_filtered\_assembly/**](#03_filtering03_1_filtered_assembly)
+      - [**03\_filtering/03\_2\_reads\_vs\_filtered\_assembly/**](#03_filtering03_2_reads_vs_filtered_assembly)
+    - [**04\_structural\_annot/**](#04_structural_annot)
+    - [**05\_protein\_alignment/05\_1\_database\_alignment/**](#05_protein_alignment05_1_database_alignment)
+    - [**06\_func\_annot**](#06_func_annot)
+      - [**06\_func\_annot/06\_1\_clustering/**](#06_func_annot06_1_clustering)
+      - [**06\_func\_annot/06\_2\_quantification/**](#06_func_annot06_2_quantification)
+      - [**06\_func\_annot/06\_3\_functional\_annotation/**](#06_func_annot06_3_functional_annotation)
+    - [**07\_taxo\_affi/**](#07_taxo_affi)
+      - [**07\_taxo\_affi/07\_1\_affiliation\_per\_sample**](#07_taxo_affi07_1_affiliation_per_sample)
+      - [**07\_taxo\_affi/07\_2\_affiliation\_merged**](#07_taxo_affi07_2_affiliation_merged)
+      - [**07\_taxo\_affi/07\_3\_plot/**](#07_taxo_affi07_3_plot)
+    - [**08\_binning/**](#08_binning)
+      - [**08\_binning/08\_1\_binning\_per\_sample**](#08_binning08_1_binning_per_sample)
+      - [**08\_binning/08\_2\_dereplicated\_bins**](#08_binning08_2_dereplicated_bins)
+      - [**08\_binning/08\_3\_gtdbtk/**](#08_binning08_3_gtdbtk)
+      - [**08\_4\_mapping\_on\_final\_bins**](#08_4_mapping_on_final_bins)
+    - [**MultiQC/**](#multiqc)
+    - [**pipeline\_info/**](#pipeline_info)
+  - [Description of other files in your working directory (not in `results` directory):](#description-of-other-files-in-your-working-directory-not-in-results-directory)
+  - [Other files can be added to the working directory (not in `results` directory) if you use Nextflow specific options:](#other-files-can-be-added-to-the-working-directory-not-in-results-directory-if-you-use-nextflow-specific-options)
+
+
 ## Description of output files and directories
 
-### The pipeline will create the following folders in your working directory:
+The pipeline will create the following folders in your working directory:
 
 | Directory/        | Description                                    |
 | ------------- | --------------------------------------- |
 | `work/`          | Directory containing the Nextflow working files. Directory name can be changed if you use -w option of Nextflow.  Once you are happy with the analysis and you do not intend to resume the pipeline execution, you can delete this directory. |
 | `results/`       | Directory containing metagWGS output files. Directory name can be changed if you use --outdir parameter of metagWGS. |
 
-### Description of output files in `results/` directory:
+## Description of output files in `results/` directory:
 
 The `results/` directory contains a sub-directory for each step launched:
 
-#### **01_clean_qc**
 
-##### **01_clean_qc/01_1_cleaned_reads/**
+
+### **01_clean_qc**
+
+#### **01_clean_qc/01_1_cleaned_reads/**
 
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `cleaned_SAMPLE_NAME_R{1,2}.fastq.gz`        | There are one R1 and one R2 file for each sample. |
 | `logs/`    | Contains cutadapt (`SAMPLE_NAME_cutadapt.log`) and sickle (`SAMPLE_NAME_sickle.log`) log files for each sample. Only if you remove host reads, in `SAMPLE_NAME_cleaned_R{1,2}.nb_bases` you have the number of nucleotides into each cleaned R1 and R2 files of each sample. Only if you remove host reads, you also have a samtools flagstat file for each sample before removing host reads (`SAMPLE_NAME.no_filter.flagstat`) and into the directory `host_filter_flagstat/` there are the samtools flagstat files (`SAMPLE_NAME.host_filter.flagstat`) after removing host reads.          |
 
-##### **01_clean_qc/01_2_qc/**
+#### **01_clean_qc/01_2_qc/**
 
 | Directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `fastqc_raw/SAMPLE_NAME/`       | Contains the results of fastQC on raw data: two files (`.html` and `.zip`) for R1 and two files for R2 (`.html` and `.zip`). |
 | `fastqc_cleaned/cleaned_SAMPLE_NAME/`   | Same as `01_2_qc/fastqc_raw/` but for cleaned data. |
 
-##### **01_clean_qc/01_3_taxonomic_affiliation_reads/**
+#### **01_clean_qc/01_3_taxonomic_affiliation_reads/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -42,7 +77,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME_MEM_verbose_only_classified.out.gz`    | Compressed kaiju results. Each row corresponds to a classified reading. The first column 'C' indicates that the read is classified, the second column is the name of the read, the third is the NCBI taxon ID of the assigned taxon, the fourth is the length or score of the best match used for classification, the fifth is the taxon ID of all database sequences with the best match, the sixth is the accession number of all database sequences with the best match, and the last is the corresponding fragment sequence(s).   |
 | `match_length_kaiju_distribution.html`   |  Density plot of the size of the matches found by kaiju in reads of each sample. |
 
-#### **02_assembly**
+### **02_assembly**
 
 #### **02_assembly/02_1_primary_assembly**
 
@@ -56,7 +91,7 @@ The `results/` directory contains a sub-directory for each step launched:
 
 
 
-##### **02_assembly/02_2_deduplicated_reads**
+#### **02_assembly/02_2_deduplicated_reads**
 
 **NOTE:** This directory contains deduplicated reads. It is created only for short read data.
 
@@ -64,7 +99,7 @@ The `results/` directory contains a sub-directory for each step launched:
 |-------------------------------------|--------------------------------------------------------------|
 | `SAMPLE_NAME_R{1,2}_dedup.fastq.gz` | Deduplicated reads (R1 and R2 files) for SAMPLE_NAME sample. |
 
-##### **02_assembly/02_3_reads_vs_primary_assembly**
+#### **02_assembly/02_3_reads_vs_primary_assembly**
 
 **NOTE:** in this directory you have alignement metrics of reads aligned to the primary assembly (before the asssembly filering step if any). For short reads, reads have been deduplicated.
 
@@ -77,11 +112,11 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/SAMPLE_NAME.idxstats`     | Samtools idxstat file (see details  [here](http://www.htslib.org/doc/samtools-flagstat.html) )  |
 
 
-#### **03_filtering**
+### **03_filtering**
 
 **NOTE:** This directory is created when the assembly filtering step is applied. 
 
-##### **03_filtering/03_1_filtered_assembly/** 
+#### **03_filtering/03_1_filtered_assembly/** 
 
 | File or directory/                                                     | Description                                                                                                  |
 |------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------|
@@ -89,7 +124,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `discard_contigs/SAMPLE_NAME_discard_contigs_cpm[cpm_threshold].fasta` | Contigs that have been removed from the assembly.                                                            |
 | `assembly_metric/`                                                     | Contains metaQUAST quality control files of filtered assemblies.     
 
-##### **03_filtering/03_2_reads_vs_filtered_assembly/**
+#### **03_filtering/03_2_reads_vs_filtered_assembly/**
 
 
 **NOTE:** This directory contains alignement metrics of reads aligned to the filtered assembly.
@@ -104,7 +139,7 @@ The `results/` directory contains a sub-directory for each step launched:
 
                                         |
 
-#### **04_structural_annot/**
+### **04_structural_annot/**
 
 | File                          | Description                                                      |
 |-------------------------------|------------------------------------------------------------------|
@@ -113,15 +148,15 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/SAMPLE_NAME.gff` | Coordinates of structural annotated genes into contigs.          |
 | `SAMPLE_NAME/SAMPLE_NAME.txt` | Summary of the assembly structural annotation.                   |
 
-#### **05_protein_alignment/05_1_database_alignment/**
+### **05_protein_alignment/05_1_database_alignment/**
 
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `SAMPLE_NAME/SAMPLE_NAME_aln_diamond.m8` | Diamond results file. |
 
-#### **06_func_annot**
+### **06_func_annot**
 
-##### **06_func_annot/06_1_clustering/**
+#### **06_func_annot/06_1_clustering/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -132,7 +167,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `All-cd-hit-est.[cd-hit percentage identity].fasta.clstr` | Text file of list of inter-sample clusters generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
 | `table_clstr.txt` | Correspondance table of inter-sample clusters and intra-sample clusters. One line = one correspondance between an inter-sample cluster (first column) and an intra-sample cluster (second column). |
 
-##### **06_func_annot/06_2_quantification/**
+#### **06_func_annot/06_2_quantification/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -142,7 +177,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `Correspondence_global_clstr_contigs.txt` | Correspondance table of inter-sample clusters and initial genes. One line = one correspondance between an inter-sample cluster (first column) and an initial gene (second column). |
 | `Clusters_Count_table_all_samples.txt` | Abundance table of reads. Each cell contains the sum of aligned reads on each initial gene of each inter-sample cluster for each sample (inter_sample clusters in rows and samples in colums).|
 
-##### **06_func_annot/06_3_functional_annotation/**
+#### **06_func_annot/06_3_functional_annotation/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -156,9 +191,9 @@ The `results/` directory contains a sub-directory for each step launched:
 | `KEGG_Module_abundance.tsv` | Quantification table storing for each KEGG_Module (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
 | `PFAM_abundance.tsv` | Quantification table storing for each PFAM (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
 
-#### **07_taxo_affi/**
+### **07_taxo_affi/**
 
-##### **07_taxo_affi/07_1_affiliation_per_sample**
+#### **07_taxo_affi/07_1_affiliation_per_sample**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -172,14 +207,15 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/top_taxons_per_contig.tsv` | Details of top possible taxons per contig and for each taxonomic rank. For each rank, there is a list of the top possible taxons and their weigth in parentesis (only taxons with a weigth > 1 is written). For example in the genus column we can have `Escherichia (68.0);Shigella (20.0);Enterobacter (4.0);Salmonella (4.0);Felsduovirus (4.0)`. This file can be useful to understand an affiliation in detail.  |
 
 
-##### **07_taxo_affi/07_2_affiliation_merged**
+#### **07_taxo_affi/07_2_affiliation_merged**
+
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `quantification_by_contig_lineage_all.tsv` | Quantification table of reads aligned on contigs affiliated to each lineage. One line = one taxonomic affiliation with its lineage (1st column, `lineage_by_level`), the taxon id at each level of this lineage (2nd column, `tax_id_by_level`), and then all next 3-columns blocks correspond to one sample. Each 3-column block corresponds to the name of contigs affiliated to this lineage (1st column, `name_contigs_SAMPLE_NAME_quantif_percontig`), the number of contigs affiliated to this lineage (2nd column, `nb_contigs_SAMPLE_NAME_quantif_percontig`), the sum of the number of reads aligned to these contigs (3rd column, `nb_reads_SAMPLE_NAME_quantif_percontig`) and the mean depth of these contigs (4th column, `depth_SAMPLE_NAME_quantif_percontig`). |
 | `quantification_by_contig_lineage_[taxonomic_level].tsv` | One file by taxonomic level (superkingdom, phylum, order, class, family, genus, species). Quantification table of reads aligned on contigs affiliated to each lineage of the corresponding [taxonomic level]. One line = one taxonomic affiliation at this [taxonomic level] with its taxon id (1st column, `tax_id_by_level`), its lineage (2nd column, `lineage_by_level`), and then all next 3-columns blocks correspond to one sample. Each 3-column block corresponds to the name of contigs affiliated to this lineage (1st column, `name_contigs_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`), the number of contigs affiliated to this lineage (2nd column, `nb_contigs_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`) and the sum of the number of reads aligned to these contigs (3rd column, `nb_reads_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`) and the mean depth of these contigs (4th column, `depth_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`). |
 
 
-##### **07_taxo_affi/07_3_plot/**
+#### **07_taxo_affi/07_3_plot/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -188,16 +224,14 @@ The `results/` directory contains a sub-directory for each step launched:
 | `abundance_per_rank.html` | This plot represents the abundance of affiliation made for each taxonomic rank.|
 | `most_abundant_taxa.html` | This plot represents the abundance of the 10 most abundant taxa at each taxonomic rank and for each sample.|
 
-#### **08_binning/**
+### **08_binning/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `genomes_abundances.tsv` | Global informations about the final set of bins. One line = one bin id (1st column, `genome_id`), its bin name, retrieve from the lowest taxonomic rank affiliated by GTDB-Tk (2nd column, `genome_name`), the Domain, Phylum, Class, Order, Family, Genus, Species taxonomic affiliations made with GTDB-Tk (3rd, 4th, 5th, 6th, 7th, 8th and 9th columns), its quality metrics : `completeness` and `contamination`, retrieved with Checkm2 (10th and 11th columns), its size in bp (12th column, `genome_length`), its N50 metric (13th column, genome_N50), its number of contigs (14th column, `contig_count`). After that, there is 2 columns per sample : the number of reads and the mean depth associated to the bin within the specicic sample. Finally, the second to last column (`sum_numreads`) described the bin's total number of reads between all the samples, and the last (`mean_depth`) the average depth between all sample.|
 
 
-#### **08_binning**
-
-##### **08_binning/08_1_binning_per_sample**
+#### **08_binning/08_1_binning_per_sample**
 
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
@@ -207,7 +241,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/bin_refinement`| This directory contains bins fasta files from the aggregate binning module bin_refinement from metaWRAP tool, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://microbiomejournal.biomedcentral.com/articles/10.1186/s40168-018-0541-1)). |
 | `SAMPLE_NAME/bin_refinement/unbinned_contigs.fasta`| Contigs from the sample assembly that are not retrieved in any bin. The proportion of non-binned contigs to the global size of the sample assembly can be seen in the MultiQC report, in the section Bins Size (bp) quality. |
 
-##### **08_binning/08_2_dereplicated_bins**
+#### **08_binning/08_2_dereplicated_bins**
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | dereplicated_genomes/ | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples.  |
@@ -230,38 +264,38 @@ If you want to make further analysis about intra-population genetic diversity (m
 `inStrain compare IS_output_first_sample IS_output_second_sample IS_output_third_sample`
 
 
-##### **08_binning/08_3_gtdbtk/**
+#### **08_binning/08_3_gtdbtk/**
 | File      | Description                                           |
 | ----------------------- | --------------------------------------- |
 | gtdbtk.bac120.summary.tsv | Taxonomic classifications provided by GTDB-Tk. One line = one bin id (1st column, `user_genome`), its taxonomical classification based on the closest reference genome from the GTDB-Tk database (2nd column, `classification`), the accession number of the closest reference genome (3rd column, `fastani_reference`). Please see GTDB-Tk documentation [here](https://ecogenomics.github.io/GTDBTk/files/summary.tsv.html) for information on additional columns. 
 
-##### **08_4_mapping_on_final_bins**
+#### **08_4_mapping_on_final_bins**
 | File      | Description                                           |
 | ----------------------- | --------------------------------------- |
 | mapping/SAMPLE_NAME/ | In order to compare genomes abundances between samples, mapping of metagenomics samples reads against the final set of de-replicated bins is performed.
 | mapping/SAMPLE_NAME/`SAMPLE_NAME.sort.bam` | Alignment of reads on contigs (.bam file). |
 | mapping/SAMPLE_NAME/`SAMPLE_NAME.sort.bam.bai` | Index of .bam file. |
 
-#### **MultiQC/**
+### **MultiQC/**
 
 | File                    | Description                             |
 | ----------------------- | --------------------------------------- |
 | `multiqc_report.html` | MultiQC report file containing graphs and a summary of analysis done by metagWGS. |
 
-#### **pipeline_info/**
+### **pipeline_info/**
 
 | File                    | Description                             |
 | ----------------------- | --------------------------------------- |
 | `software_versions.csv` | Indicates the versions of the tools used in the pipeline.     |
 | `db_versions.tsv` | Indicates the size, date of last modification and path of the file or folder for each databank used in the pipeline. For the host genome, the number of sequence is in parenthesis with the size of the file.  |
 
-### Description of other files in your working directory (not in `results` directory):
+## Description of other files in your working directory (not in `results` directory):
 
 | File          | Description            |
 | ------------- | ---------------------- |
 | `.nextflow_log` | Log file from Nextflow. |
 
-### Other files can be added to the working directory (not in `results` directory) if you use Nextflow specific options:
+## Other files can be added to the working directory (not in `results` directory) if you use Nextflow specific options:
 
 | Option        | File            | Description            |
 | ------------- | --------------- | ---------------------- |
-- 
GitLab


From a6752ea07b0c3c2f8eb9d36b8979a9df7d538a97 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 30 Nov 2022 10:48:25 +0100
Subject: [PATCH 157/194] remove typo making script fail

---
 bin/format_bins_stat_to_multiqc.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/bin/format_bins_stat_to_multiqc.py b/bin/format_bins_stat_to_multiqc.py
index 05fdeb6..cefd801 100755
--- a/bin/format_bins_stat_to_multiqc.py
+++ b/bin/format_bins_stat_to_multiqc.py
@@ -22,7 +22,7 @@ import pandas as pd
 
 
 def parse_arguments():
-    """Parse script arguments."""bins_per_sample_summarize.py
+    """Parse script arguments."""
     parser = ArgumentParser(description="...",
                             formatter_class=ArgumentDefaultsHelpFormatter)
 
-- 
GitLab


From 28c2d0046916edcc59cbfd84999e61ca6915ccf7 Mon Sep 17 00:00:00 2001
From: DARBOT Vincent <vincent.darbot@inrae.fr>
Date: Fri, 2 Dec 2022 14:06:57 +0100
Subject: [PATCH 158/194] Update docs/output.md

---
 docs/output.md | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/docs/output.md b/docs/output.md
index 764a752..f2bd2e4 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -249,19 +249,15 @@ The `results/` directory contains a sub-directory for each step launched:
 | data_tables/Bins_clusters_composition.tsv | Associates each representative bins cluster (1st column) to the bins list within the cluster (2nd column, bins seperates by commas). |
 | figures/ | `Primary_clustering_dendrogram.pdf`: The primary clustering dendrogram summarizes the pair-wise Mash distance between all genomes in the genome list. The first clusturing used Mash, an incredibly fast but not robust algorithm, in order to accelerate the process during the second clusturing. **`Secondary_clustering_dendrograms.pdf`**: Each primary cluster with more than one member will have a page in the Secondary clustering dendrograms file. Bins with more than **95% of ANI distance similarity** (--drep_threshold default value paramater, that correspond to the threshold for separate species.) will be grouped together. **You can try different dRep thresholds to be more or less stringent, for example if the goal of dereplication is to generate a set of genomes that are distinct when mapping short reads, 98% ANI is an appropriate threshold.** You can also try higher threshold in order to separate species that belong to low divergent clades (96, or 97%). `Cluster_scoring.pdf`: Each secondary cluster will have its own page in the Cluster scoring figure. These figures show the score of each genome, as well as all metrics that can go into determin, and will always be the genome with the highest score.`Clustering scatterplots.pdf` provides some information about genome alignment statistics, and `Winning genomes.pdf` provides some information about only the “best” genomes of each replicate set, as well as a couple quick overall statistics.
 
-If you want to make further analysis about intra-population genetic diversity (microdiversity) on the genomes, you can use **inStrain** software specifically developed for this purpose. metagWGS outputs allows to easily run inStrain on this way:
+If you want to make further analysis about intra-population genetic diversity (microdiversity) on the genomes, you can use **inStrain** software specifically developed for this purpose. The documentation is here:
 
-**1. Firstly, inStrain profile step calculates genome-level metrics for a genome of interest within each sample in which it is present:**
+https://instrain.readthedocs.io/en/latest/tutorial.html#quick-start
 
-`inStrain profile results/08_binning/08_4_mapping_on_final_bins/mapping/first_sample/first_sample.sort.bam  results/08_binning/08_2_dereplicated_bins/dereplicated_genomes/first_bin.fa -o IS_output_first_sample`
+ metagWGS outputs allows to easily run inStrain and are available here :
 
-`inStrain profile results/08_binning/08_4_mapping_on_final_bins/mapping/first_sample/second_sample.sort.bam  results/08_binning/08_2_dereplicated_bins/dereplicated_genomes/first_bin.fa -o IS_output_second_sample`
+ - bam files : results/08_binning/08_4_mapping_on_final_bins/mapping/first_sample/first_sample.sort.bam
 
-`inStrain profile results/08_binning/08_4_mapping_on_final_bins/mapping/first_sample/third_sample.sort.bam  results/08_binning/08_2_dereplicated_bins/dereplicated_genomes/first_bin.fa -o IS_output_third_sample`
-
-**2. Then, inStrain compare takes multiple inStrain profile objects (generated using the commands above) and performs strain-level comparisons :**
-
-`inStrain compare IS_output_first_sample IS_output_second_sample IS_output_third_sample`
+ - bin fasta files : results/08_binning/08_2_dereplicated_bins/dereplicated_genomes/first_bin.fa
 
 
 #### **08_binning/08_3_gtdbtk/**
-- 
GitLab


From be39d42075700b54fed771ba42bc03a3a72f7c84 Mon Sep 17 00:00:00 2001
From: DARBOT Vincent <vincent.darbot@inrae.fr>
Date: Fri, 2 Dec 2022 14:49:29 +0100
Subject: [PATCH 159/194] Update assets/multiqc/barplot_bin_size_header.txt

---
 assets/multiqc/barplot_bin_size_header.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/assets/multiqc/barplot_bin_size_header.txt b/assets/multiqc/barplot_bin_size_header.txt
index d8f5b90..2e9ece6 100644
--- a/assets/multiqc/barplot_bin_size_header.txt
+++ b/assets/multiqc/barplot_bin_size_header.txt
@@ -1,6 +1,6 @@
 # id: 'bins_quality_size'
 # section_name: 'Bins Size (bp) quality'
-# description: 'Number of sequences by quality category (according to the bins quality category in the figure above), according to MIMAG (Minimum information about a metagenome-assembled genome) standards.'
+# description: 'Number of sequences by quality category (according to the bins quality category in the figure above), according to MIMAG (Minimum information about a metagenome-assembled genome) standards. The "not-binned" part refers to the number of reads that are not aligned on any bin. The x-axis corresponds to the number of sequences (or proportion), the y-axis indicates the samples.'
 # format: 'tsv'
 # plot_type: 'bargraph'
 # categories:
-- 
GitLab


From ba6ad5b209344791d67e116227ef70eb8f6984b1 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 2 Dec 2022 15:13:56 +0100
Subject: [PATCH 160/194] fix bam header to have a coherent header with the
 final assembly

---
 modules/read_alignment_manipulation.nf | 17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

diff --git a/modules/read_alignment_manipulation.nf b/modules/read_alignment_manipulation.nf
index ca0fe5d..c5a67e4 100644
--- a/modules/read_alignment_manipulation.nf
+++ b/modules/read_alignment_manipulation.nf
@@ -89,16 +89,23 @@ process MERGE_BAM_FILES {
    tag "${meta.id}"
 
    input:
-      tuple val(meta),  path(bam1), path(bam2)
+      tuple val(meta),  path(bam_discarded_reads), path(bam_selected_contigs)
 
    output:
-      tuple val(meta), path("${meta.id}.filtered.bam"), path("${meta.id}.filtered.bam.bai") , emit: bam
+      tuple val(meta), path("${meta.id}.filtered.sort.bam"), path("${meta.id}.filtered.sort.bam.bai") , emit: bam
 
    script:
-      """
-      samtools merge -@ ${task.cpus} -o ${meta.id}.filtered.bam  $bam1 $bam2
-      samtools index -@ ${task.cpus} ${meta.id}.filtered.bam
 
+      """  
+      samtools merge -@ ${task.cpus} $bam_discarded_reads $bam_selected_contigs -o merged.bam
+
+      # reheader the bam to get only header corresponding to the final assembly only 
+      samtools view -H  $bam_discarded_reads > filtered_assembly.header
+      samtools reheader filtered_assembly.header merged.bam | samtools sort -@ ${task.cpus} -o ${meta.id}.filtered.sort.bam  
+      
+      samtools index -@ ${task.cpus} ${meta.id}.filtered.sort.bam
+
+      rm merged.bam 
       """
 }
 
-- 
GitLab


From 807f1ebbd77c749946b1f1da4a430e4e58ecb33e Mon Sep 17 00:00:00 2001
From: DARBOT Vincent <vincent.darbot@inrae.fr>
Date: Fri, 2 Dec 2022 15:22:22 +0100
Subject: [PATCH 161/194] Update README.md

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index cf0d150..595160f 100644
--- a/README.md
+++ b/README.md
@@ -21,7 +21,7 @@ Many of these steps are optional and their necessity depends on the desired anal
 * `S02_ASSEMBLY` 
    * assembles reads ([metaSPAdes](https://github.com/ablab/spades) or [Megahit](https://github.com/voutcn/megahit) or [Hifiasm_meta](https://github.com/lh3/hifiasm-meta) or [metaFlye](https://github.com/fenderglass/Flye))
    * assesses the quality of assembly ([metaQUAST](http://quast.sourceforge.net/metaquast))
-   * deduplicates reads ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
+   * reads deduplication ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
 * `S03_FILTERING` 
    * filters contigs with low CPM value ([Filter_contig_per_cpm.py](bin/Filter_contig_per_cpm.py) + [metaQUAST](http://quast.sourceforge.net/metaquast))
 * `S04_STRUCTURAL_ANNOT` 
-- 
GitLab


From 3a41ab60427c92888d13e40d3813d07ff40e0702 Mon Sep 17 00:00:00 2001
From: Claire Hoede <claire.hoede@inra.fr>
Date: Wed, 14 Dec 2022 07:39:53 +0100
Subject: [PATCH 162/194] accent warning in path or file name

---
 docs/usage.md | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/docs/usage.md b/docs/usage.md
index d0b1a4c..ed48bf6 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -46,6 +46,8 @@ See [dedicated section](usage.md#4-samplesheet) for more information.
 
 ## II. Input files
 
+**WARNING:** Do not use any accent in any path or file name.
+
 ### 1. General mandatory files
 
 Launching metagWGS involves the use of mandatory files:
-- 
GitLab


From a96618ead70a5911426066ef841ab196d384fce3 Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Thu, 15 Dec 2022 11:51:46 +0100
Subject: [PATCH 163/194] modify legend for barplot_bin_size_header.txt

---
 assets/multiqc/barplot_bin_size_header.txt | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/assets/multiqc/barplot_bin_size_header.txt b/assets/multiqc/barplot_bin_size_header.txt
index 2e9ece6..90ffe86 100644
--- a/assets/multiqc/barplot_bin_size_header.txt
+++ b/assets/multiqc/barplot_bin_size_header.txt
@@ -1,6 +1,6 @@
 # id: 'bins_quality_size'
 # section_name: 'Bins Size (bp) quality'
-# description: 'Number of sequences by quality category (according to the bins quality category in the figure above), according to MIMAG (Minimum information about a metagenome-assembled genome) standards. The "not-binned" part refers to the number of reads that are not aligned on any bin. The x-axis corresponds to the number of sequences (or proportion), the y-axis indicates the samples.'
+# description: 'Cumulative length of sequences by quality category (according to the bins quality category in the figure above), according to MIMAG (Minimum information about a metagenome-assembled genome) standards. The "not-binned" part refers to the number of reads that are not aligned on any bin. The x-axis corresponds to the number of sequences (or proportion), the y-axis indicates the samples.'
 # format: 'tsv'
 # plot_type: 'bargraph'
 # categories:
-- 
GitLab


From 4e3a80d838a8fade0b1083754183e5db109d967b Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Fri, 16 Dec 2022 12:03:05 +0100
Subject: [PATCH 164/194] rights access to merge files

---
 bin/merge_abundance_and_functional_annotations.py | 0
 bin/merge_annotations.py                          | 0
 2 files changed, 0 insertions(+), 0 deletions(-)
 mode change 100644 => 100755 bin/merge_abundance_and_functional_annotations.py
 mode change 100644 => 100755 bin/merge_annotations.py

diff --git a/bin/merge_abundance_and_functional_annotations.py b/bin/merge_abundance_and_functional_annotations.py
old mode 100644
new mode 100755
diff --git a/bin/merge_annotations.py b/bin/merge_annotations.py
old mode 100644
new mode 100755
-- 
GitLab


From 56d46390913b71f1f8b0e4568cc4dc99487983c5 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Fri, 16 Dec 2022 17:15:17 +0100
Subject: [PATCH 165/194] realign after filtering except when filtering has no
 effect

---
 docs/output.md                         |  8 ++-
 main.nf                                |  8 ++-
 modules/filtering_cpm.nf               |  5 +-
 modules/read_alignment_manipulation.nf | 86 --------------------------
 subworkflows/03_filtering.nf           | 71 ++++++++++++---------
 5 files changed, 56 insertions(+), 122 deletions(-)

diff --git a/docs/output.md b/docs/output.md
index f2bd2e4..f10e72a 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -116,7 +116,7 @@ The `results/` directory contains a sub-directory for each step launched:
 
 **NOTE:** This directory is created when the assembly filtering step is applied. 
 
-#### **03_filtering/03_1_filtered_assembly/** 
+#### **03_filtering/filtering_at_<cpm_threshold>cpm/03_1_filtered_assembly/** 
 
 | File or directory/                                                     | Description                                                                                                  |
 |------------------------------------------------------------------------|--------------------------------------------------------------------------------------------------------------|
@@ -124,10 +124,12 @@ The `results/` directory contains a sub-directory for each step launched:
 | `discard_contigs/SAMPLE_NAME_discard_contigs_cpm[cpm_threshold].fasta` | Contigs that have been removed from the assembly.                                                            |
 | `assembly_metric/`                                                     | Contains metaQUAST quality control files of filtered assemblies.     
 
-#### **03_filtering/03_2_reads_vs_filtered_assembly/**
+#### **03_filtering/filtering_at_<cpm_threshold>cpm/03_2_reads_vs_filtered_assembly/**
 
 
-**NOTE:** This directory contains alignement metrics of reads aligned to the filtered assembly.
+**NOTE:** 
+- This directory contains alignement metrics of reads aligned to the filtered assembly. 
+- When the filtering step has no effect on the assembly (no contig are filtered out), the bam of the reads over the assembly does not change with the one from of this assembly tool `02_assembly/02_3_reads_vs_primary_assembly` adn consequently the bam found here will be a symbolic link with the bam from the assembly file.
 
 
 | File or directory/                     | Description                                                                                     |
diff --git a/main.nf b/main.nf
index d9bc02b..c46f90b 100644
--- a/main.nf
+++ b/main.nf
@@ -427,19 +427,23 @@ workflow {
 
     S03_FILTERING (
         ch_assembly,
+        ch_preprocessed_reads,
         ch_idxstats,
         ch_bam,
-        ch_min_contigs_cpm
+        ch_min_contigs_cpm,
+
     )
     
     ch_assembly = S03_FILTERING.out.selected_contigs
     ch_bam =  S03_FILTERING.out.bam
 
-    ch_sam_coverage = S03_FILTERING.out.sam_coverage
+    
 
     ch_quast = S03_FILTERING.out.quast_report
     ch_quast_after_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
 
+
+    ch_sam_coverage = S03_FILTERING.out.sam_coverage
     ch_final_assembly_flagstat_report = S03_FILTERING.out.sam_flagstat
 
   }
diff --git a/modules/filtering_cpm.nf b/modules/filtering_cpm.nf
index 5dd2c90..5c9060d 100644
--- a/modules/filtering_cpm.nf
+++ b/modules/filtering_cpm.nf
@@ -20,13 +20,14 @@ process MERGE_ASSEMBLY_FILTER {
   label 'ASSEMBLY_FILTER'
 
   tag "${meta.id}"
-  publishDir "${params.outdir}/03_filtering/03_1_filtered_assembly/", mode: 'copy', pattern: "*_select_contigs*"
-  publishDir "${params.outdir}/03_filtering/03_1_filtered_assembly/discard_contigs", mode: 'copy', pattern: "*_discard_contigs*"
+  publishDir "${params.outdir}/${publishDir_path}/", mode: 'copy', pattern: "*_select_contigs*"
+  publishDir "${params.outdir}/${publishDir_path}/discard_contigs", mode: 'copy', pattern: "*_discard_contigs*"
 
   input:
     tuple val(meta), path(select_fasta)
     tuple val(meta), path(discard_fasta)
     val min_cpm
+    val(publishDir_path)
 
   output:
     tuple val(meta), path("${meta.id}_select_contigs_cpm${min_cpm}.fasta"), emit: merged_selected
diff --git a/modules/read_alignment_manipulation.nf b/modules/read_alignment_manipulation.nf
index c5a67e4..858bf81 100644
--- a/modules/read_alignment_manipulation.nf
+++ b/modules/read_alignment_manipulation.nf
@@ -23,89 +23,3 @@ process GET_ALIGNMENT_METRICS {
       """
 }
 
-
-process FILTER_BAM {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(discarded_contigs), path(bam), path(bai)
-
-   output:
-      tuple val(meta), path("selected_contigs.bam"), emit: selected_contigs_bam
-      tuple val(meta), path("discarded_contigs.bam"), emit: discarded_contigs_bam
-
-
-   script:
-      """
-      
-      samtools faidx $discarded_contigs 
-      awk 'BEGIN {FS="\\t"}; {print \$1 FS "0" FS \$2}' ${discarded_contigs}.fai > discarded_contigs.bed
-
-
-      samtools view -@ ${task.cpus}  -bL discarded_contigs.bed -U selected_contigs.bam  $bam  -o discarded_contigs.bam
-
-
-      """
-}
-
-process EXTRACT_PAIRED_READS {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam)
-
-   output:
-      tuple val(meta), path("reads*.fastq.gz"), emit: reads
-
-
-   script:
-      """
-      
-      samtools fastq -@ ${task.cpus}  -N  -1 reads_R1.fastq.gz -2 reads_R2.fastq.gz $bam
-
-      """
-}
-
-process EXTRACT_SINGLE_READS {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam)
-
-   output:
-      tuple val(meta), path("reads.fastq.gz"), emit: reads
-
-   script:
-      """
-      
-      samtools fastq -@ ${task.cpus} -o reads.fastq.gz $bam
-
-      """
-}
-
-
-
-process MERGE_BAM_FILES {
-   tag "${meta.id}"
-
-   input:
-      tuple val(meta),  path(bam_discarded_reads), path(bam_selected_contigs)
-
-   output:
-      tuple val(meta), path("${meta.id}.filtered.sort.bam"), path("${meta.id}.filtered.sort.bam.bai") , emit: bam
-
-   script:
-
-      """  
-      samtools merge -@ ${task.cpus} $bam_discarded_reads $bam_selected_contigs -o merged.bam
-
-      # reheader the bam to get only header corresponding to the final assembly only 
-      samtools view -H  $bam_discarded_reads > filtered_assembly.header
-      samtools reheader filtered_assembly.header merged.bam | samtools sort -@ ${task.cpus} -o ${meta.id}.filtered.sort.bam  
-      
-      samtools index -@ ${task.cpus} ${meta.id}.filtered.sort.bam
-
-      rm merged.bam 
-      """
-}
-
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index 3e7288b..72572c5 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -1,16 +1,26 @@
 include { CHUNK_ASSEMBLY_FILTER; MERGE_ASSEMBLY_FILTER} from '../modules/filtering_cpm.nf'
 include { QUAST } from '../modules/metaquast'
 include { MINIMAP2; BWA_MEM } from '../modules/read_alignment'
-include { GET_ALIGNMENT_METRICS; FILTER_BAM; EXTRACT_SINGLE_READS; EXTRACT_PAIRED_READS; MERGE_BAM_FILES} from '../modules/read_alignment_manipulation'
+include { GET_ALIGNMENT_METRICS} from '../modules/read_alignment_manipulation'
 
 workflow STEP_03_ASSEMBLY_FILTER {
   take:
     assemblies
+    reads
     idxstats
     bam
     min_cpm
+    
 
   main:
+
+    filtering_outdir = "03_filtering/filtering_at_${params.min_contigs_cpm}cpm"
+
+    // if filtering has no effect on assembly. A symblink will be created between reads vs assembly of the step 02 in the step 03 outdir
+    unfiltered_assembly_bam_outdir = "02_assembly/02_3_reads_vs_primary_assembly" 
+    filtered_assembly_bam_outdir = "${filtering_outdir}/03_2_reads_vs_filtered_assembly/"
+    
+
     ch_chunk_assembly_for_filter = assemblies
                                   .splitFasta(by: 100000, file: true)
   
@@ -36,7 +46,8 @@ workflow STEP_03_ASSEMBLY_FILTER {
     MERGE_ASSEMBLY_FILTER (
       ch_grouped_selected,
       ch_grouped_discarded,
-      min_cpm
+      min_cpm,
+      "${filtering_outdir}/03_1_filtered_assembly"
     )
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
     discarded_contigs = MERGE_ASSEMBLY_FILTER.out.merged_discarded
@@ -49,51 +60,53 @@ workflow STEP_03_ASSEMBLY_FILTER {
                               with: !it[1].isEmpty() 
                               }
 
+  samples_without_discarded_contigs = discarded_contigs_category.without.map{ it -> it[0]}
+  samples_with_discarded_contigs = discarded_contigs_category.with.map{ it -> it[0]}
 
-   samples_without_discarded_contigs = discarded_contigs_category.without.map{ it -> it[0]}
-   ch_bam_of_sample_without_discarded_contigs = samples_without_discarded_contigs.join(bam)
-   
-  ch_discarded_contigs_and_bam = discarded_contigs_category.with.join(bam)
 
-  FILTER_BAM(ch_discarded_contigs_and_bam)
+  // make a symblink with the bam and bai from step 02 for samples that have not been affected by the filtering (no contig discarded)
+  result_path_dir = file("${params.outdir}/${filtered_assembly_bam_outdir}/")
+  result_path_dir.mkdirs()
+  
+  samples_without_discarded_contigs.map { 
+        sample -> { file("${result_path_dir}/${sample.id}/").mkdir()
+                    file("${params.outdir}/${unfiltered_assembly_bam_outdir}/${sample.id}/${sample.id}.sort.bam")
+                                .mklink("${result_path_dir}/${sample.id}/${sample.id}.sort.bam", overwrite:true)
+                    file("${params.outdir}/${unfiltered_assembly_bam_outdir}/${sample.id}/${sample.id}.sort.bam.bai")
+                                .mklink("${result_path_dir}/${sample.id}/${sample.id}.sort.bam.bai", overwrite:true)
+                     }
+  }
 
-  ch_discarded_bam = FILTER_BAM.out.discarded_contigs_bam
-  ch_selected_bam = FILTER_BAM.out.selected_contigs_bam 
+  ch_bam_unchanged_by_filtering =  samples_without_discarded_contigs.join(bam)
 
-  if ( params.type.toUpperCase() == "SR" ) {
-        
-        ch_discarded_reads = EXTRACT_PAIRED_READS(ch_discarded_bam)
+  ch_selected_contigs_and_reads = samples_with_discarded_contigs.join(ch_merged_selected).join(reads)
 
-        ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
 
-        BWA_MEM(ch_contigs_and_discarded_reads, "03_filtering/03_2_reads_vs_filtered_assembly")
-        ch_bam_with_discarded_reads = BWA_MEM.out.bam
 
-  } else {
-        ch_discarded_reads = EXTRACT_SINGLE_READS(ch_discarded_bam)
-        ch_contigs_and_discarded_reads = ch_merged_selected.join(ch_discarded_reads) 
-        MINIMAP2(ch_contigs_and_discarded_reads, "03_filtering/03_2_reads_vs_filtered_assembly")
-        ch_bam_with_discarded_reads = MINIMAP2.out.bam
-  
+  if ( params.type.toUpperCase() == "SR" ) {
+    BWA_MEM(ch_selected_contigs_and_reads, filtered_assembly_bam_outdir)
+    ch_bam_post_filtering = BWA_MEM.out.bam
+  }
+  else {
+    MINIMAP2(ch_selected_contigs_and_reads, filtered_assembly_bam_outdir)
+    ch_bam_post_filtering = MINIMAP2.out.bam
   }
 
 
-   // remove bai from ch_bam_with_discarded_reads and add bam of selected contigs
-  ch_bam_to_merge = ch_bam_with_discarded_reads.map{ it -> [it[0], it[1]]}.join(ch_selected_bam)
-
-  ch_merged_bam = MERGE_BAM_FILES(ch_bam_to_merge)
-
-   ch_final_bam = ch_bam_of_sample_without_discarded_contigs.mix(ch_merged_bam)
+  ch_all_bam = samples_without_discarded_contigs.join(bam).mix(ch_bam_post_filtering)
 
+  GET_ALIGNMENT_METRICS(ch_all_bam, filtered_assembly_bam_outdir)
 
-  GET_ALIGNMENT_METRICS(ch_final_bam, '03_filtering/03_2_reads_vs_filtered_assembly/')
 
   ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
   ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
 
-  QUAST( ch_merged_selected, "03_filtering/03_1_filtered_assembly/assembly_metric" )
+
+  QUAST( ch_merged_selected, "${filtering_outdir}/03_1_filtered_assembly/assembly_metric" )
   ch_quast_report = QUAST.out.report
 
+  ch_final_bam = ch_bam_post_filtering.mix(ch_bam_unchanged_by_filtering)
+
   emit:
     selected_contigs = ch_merged_selected
     quast_report = ch_quast_report
-- 
GitLab


From b28b6e765905460fbf2ef213bccb27134308b895 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 2 Jan 2023 11:53:50 +0100
Subject: [PATCH 166/194] add info on symb link of assembly

---
 docs/output.md | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/docs/output.md b/docs/output.md
index f10e72a..ea47fa6 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -14,8 +14,8 @@ This document describes the output files produced by metagWGS.
       - [**02\_assembly/02\_2\_deduplicated\_reads**](#02_assembly02_2_deduplicated_reads)
       - [**02\_assembly/02\_3\_reads\_vs\_primary\_assembly**](#02_assembly02_3_reads_vs_primary_assembly)
     - [**03\_filtering**](#03_filtering)
-      - [**03\_filtering/03\_1\_filtered\_assembly/**](#03_filtering03_1_filtered_assembly)
-      - [**03\_filtering/03\_2\_reads\_vs\_filtered\_assembly/**](#03_filtering03_2_reads_vs_filtered_assembly)
+      - [**03\_filtering/filtering\_at\_\<cpm\_threshold\>cpm/03\_1\_filtered\_assembly/**](#03_filteringfiltering_at_cpm_thresholdcpm03_1_filtered_assembly)
+      - [**03\_filtering/filtering\_at\_\<cpm\_threshold\>cpm/03\_2\_reads\_vs\_filtered\_assembly/**](#03_filteringfiltering_at_cpm_thresholdcpm03_2_reads_vs_filtered_assembly)
     - [**04\_structural\_annot/**](#04_structural_annot)
     - [**05\_protein\_alignment/05\_1\_database\_alignment/**](#05_protein_alignment05_1_database_alignment)
     - [**06\_func\_annot**](#06_func_annot)
@@ -129,7 +129,7 @@ The `results/` directory contains a sub-directory for each step launched:
 
 **NOTE:** 
 - This directory contains alignement metrics of reads aligned to the filtered assembly. 
-- When the filtering step has no effect on the assembly (no contig are filtered out), the bam of the reads over the assembly does not change with the one from of this assembly tool `02_assembly/02_3_reads_vs_primary_assembly` adn consequently the bam found here will be a symbolic link with the bam from the assembly file.
+- When the filtering step has no effect on the assembly (no contig are filtered out), the bam of the reads over the assembly does not change with the one from the assembly step `02_assembly/02_3_reads_vs_primary_assembly` consequently the bam found here will be a symbolic link with the bam from the assembly file.
 
 
 | File or directory/                     | Description                                                                                     |
-- 
GitLab


From 6510a19ba75beee93728185358563dcbce9d39bb Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 2 Jan 2023 11:58:27 +0100
Subject: [PATCH 167/194] remove prokka and replace with tools used

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 595160f..1300984 100644
--- a/README.md
+++ b/README.md
@@ -25,7 +25,7 @@ Many of these steps are optional and their necessity depends on the desired anal
 * `S03_FILTERING` 
    * filters contigs with low CPM value ([Filter_contig_per_cpm.py](bin/Filter_contig_per_cpm.py) + [metaQUAST](http://quast.sourceforge.net/metaquast))
 * `S04_STRUCTURAL_ANNOT` 
-   * makes a structural annotation of genes ([Prokka](https://github.com/tseemann/prokka) + [Rename_contigs_and_genes.py](bin/Rename_contigs_and_genes.py))
+   * makes a structural annotation of genes ([Prodigal](https://github.com/hyattpd/Prodigal) + [Barrnap](https://github.com/tseemann/barrnap) + [tRNAscan-SE](https://github.com/UCSC-LoweLab/tRNAscan-SE)  [merge_annotations.py](bin/merge_annotations.py))
 * `S05_ALIGNMENT`
    * aligns reads to the contigs ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
    * aligns the protein sequence of genes against a protein database ([DIAMOND](https://github.com/bbuchfink/diamond))
-- 
GitLab


From 725e3bd40c12e9ae0902cd09915a6e453f759bdd Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Mon, 2 Jan 2023 12:00:04 +0100
Subject: [PATCH 168/194] fix typo

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 1300984..1a3736b 100644
--- a/README.md
+++ b/README.md
@@ -25,7 +25,7 @@ Many of these steps are optional and their necessity depends on the desired anal
 * `S03_FILTERING` 
    * filters contigs with low CPM value ([Filter_contig_per_cpm.py](bin/Filter_contig_per_cpm.py) + [metaQUAST](http://quast.sourceforge.net/metaquast))
 * `S04_STRUCTURAL_ANNOT` 
-   * makes a structural annotation of genes ([Prodigal](https://github.com/hyattpd/Prodigal) + [Barrnap](https://github.com/tseemann/barrnap) + [tRNAscan-SE](https://github.com/UCSC-LoweLab/tRNAscan-SE)  [merge_annotations.py](bin/merge_annotations.py))
+   * makes a structural annotation of genes ([Prodigal](https://github.com/hyattpd/Prodigal) + [Barrnap](https://github.com/tseemann/barrnap) + [tRNAscan-SE](https://github.com/UCSC-LoweLab/tRNAscan-SE) + [merge_annotations.py](bin/merge_annotations.py))
 * `S05_ALIGNMENT`
    * aligns reads to the contigs ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
    * aligns the protein sequence of genes against a protein database ([DIAMOND](https://github.com/bbuchfink/diamond))
-- 
GitLab


From 18fdd819ab3fdad8322cbda8089bc06a39e7b316 Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Fri, 6 Jan 2023 16:32:34 +0100
Subject: [PATCH 169/194] Change QUAST sample by sample to all samples at once

---
 assets/multiqc_config.yaml   |  4 ++--
 main.nf                      |  6 ++----
 modules/metaquast.nf         | 16 +++++++---------
 modules/multiqc.nf           |  4 ++--
 subworkflows/02_assembly.nf  |  8 ++++++--
 subworkflows/03_filtering.nf |  6 ++++--
 6 files changed, 23 insertions(+), 21 deletions(-)

diff --git a/assets/multiqc_config.yaml b/assets/multiqc_config.yaml
index c24c305..40be5dc 100644
--- a/assets/multiqc_config.yaml
+++ b/assets/multiqc_config.yaml
@@ -52,7 +52,7 @@ module_order:
         name: 'Quast primary assembly'
         info: 'This section of the report shows primary assembly metrics.'
         path_filters:
-            - '*quast_primary/*/report.tsv'
+            - '*quast_primary/report.tsv'
     - samtools:
         name : 'Reads alignment on unfiltered assembly'
         info: 'This section reports reads alignement on contigs.'
@@ -62,7 +62,7 @@ module_order:
         name: 'Quast filtered assembly'
         info: 'This section of the report shows metrics of the filtered assemblies.'
         path_filters:
-            - '*quast_filtered/*/report.tsv'
+            - '*quast_filtered/report.tsv'
     - samtools:
         name : 'Reads alignment on final assembly'
         info: 'This section reports reads alignement on contigs.'
diff --git a/main.nf b/main.nf
index c46f90b..848dfb0 100644
--- a/main.nf
+++ b/main.nf
@@ -413,8 +413,7 @@ workflow {
     ch_idxstats = S02_ASSEMBLY.out.idxstats
     ch_unfilter_assembly_flagstat_report = S02_ASSEMBLY.out.flagstat
 
-    ch_quast = S02_ASSEMBLY.out.assembly_report
-    ch_quast_before_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+    ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
 
     ch_software_versions_S02 = S02_ASSEMBLY.out.software_versions
   }
@@ -439,8 +438,7 @@ workflow {
 
     
 
-    ch_quast = S03_FILTERING.out.quast_report
-    ch_quast_after_filter_report = ch_quast.map{ meta, quast_report -> quast_report }
+    ch_quast_after_filter_report = S03_FILTERING.out.quast_report
 
 
     ch_sam_coverage = S03_FILTERING.out.sam_coverage
diff --git a/modules/metaquast.nf b/modules/metaquast.nf
index 9414136..bc20ad7 100644
--- a/modules/metaquast.nf
+++ b/modules/metaquast.nf
@@ -1,22 +1,20 @@
 process QUAST {
-    tag "${meta.id}"
     label 'QUAST'
-    publishDir "${params.outdir}/${outdir}/", mode: 'copy', pattern: "${meta.id}/*"
+    publishDir "${params.outdir}/${outdir}/", mode: 'copy'
 
     input:
-        tuple val(meta), path(assembly)
+        path(assemblies)
         val outdir
 
     output:
-        path "${meta.id}/*", emit: all
-        tuple val(meta), path ("${meta.id}/report.tsv"), emit: report
-        path "v_quast.txt", emit: v_quast
+        path("assembly_metric/"), emit: all
+        path("assembly_metric/report.tsv"), emit: report
+        path("v_quast.txt"), emit: v_quast
 
     script:
         """
-        mkdir -p ${meta.id}/
-        touch ${meta.id}/report.tsv
-        metaquast.py --threads ${task.cpus} --rna-finding --max-ref-number 0 --min-contig 0 ${assembly} -o ${meta.id} --labels ${meta.id}
+        touch report.tsv
+        metaquast.py --threads ${task.cpus} --rna-finding --max-ref-number 0 --min-contig 0 ${assemblies} -o assembly_metric/
 
         quast -v &> v_quast.txt
         """
diff --git a/modules/multiqc.nf b/modules/multiqc.nf
index 72c5951..c2a88c7 100644
--- a/modules/multiqc.nf
+++ b/modules/multiqc.nf
@@ -11,8 +11,8 @@ process MULTIQC {
     path 'fastqc_clean_report/'
     path 'kaiju_report/'
     path "unfiltered_assembly_flagstat/"
-    path 'quast_primary/*/report.tsv'
-    path 'quast_filtered/*/report.tsv'
+    path 'quast_primary/report.tsv'
+    path 'quast_filtered/report.tsv'
     path "final_assembly_flagstat/"
     path 'prokka_report/'
     path "featureCounts_report/"
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index d202dbd..d300ba9 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -48,7 +48,11 @@ workflow STEP_02_ASSEMBLY {
     }
     
     ch_assembly_renamed = RENAME_CONTIGS(ch_assembly)
-    ASSEMBLY_QUAST( ch_assembly_renamed,"02_assembly/02_1_primary_assembly/assembly_metric/")
+    ch_assembly_quast = ch_assembly_renamed
+                        .map { meta, file -> file }
+                        .collect()
+
+    ASSEMBLY_QUAST( ch_assembly_quast,"02_assembly/02_1_primary_assembly/")
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
 
@@ -81,7 +85,7 @@ workflow STEP_02_ASSEMBLY {
     ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
     ch_samtools_v = GET_ALIGNMENT_METRICS.out.v_samtools
 
-    ch_software_versions = ch_assembler_v.first().mix( ch_quast_v.first(),
+    ch_software_versions = ch_assembler_v.first().mix( ch_quast_v,
                                                        ch_bwa_mem_v.first(),
                                                        ch_minimap2_v.first(),
                                                        ch_samtools_v.first())
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index 72572c5..6ae3938 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -101,8 +101,10 @@ workflow STEP_03_ASSEMBLY_FILTER {
   ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
   ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
 
-
-  QUAST( ch_merged_selected, "${filtering_outdir}/03_1_filtered_assembly/assembly_metric" )
+  ch_merged_quast = ch_merged_selected
+                      .map { meta, file -> file }
+                      .collect()
+  QUAST( ch_merged_quast, "${filtering_outdir}/03_1_filtered_assembly/" )
   ch_quast_report = QUAST.out.report
 
   ch_final_bam = ch_bam_post_filtering.mix(ch_bam_unchanged_by_filtering)
-- 
GitLab


From 9a4e843b73720380fe9486f782367f45b15a4f6f Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Mon, 9 Jan 2023 09:00:07 +0100
Subject: [PATCH 170/194] quantification_clusters.py: refactoring

---
 bin/quantification_clusters.py | 289 +++++++++++++++++----------------
 1 file changed, 153 insertions(+), 136 deletions(-)

diff --git a/bin/quantification_clusters.py b/bin/quantification_clusters.py
index 84c7367..b710902 100755
--- a/bin/quantification_clusters.py
+++ b/bin/quantification_clusters.py
@@ -30,154 +30,171 @@ __version__ = '0.1'
 __email__ = 'support.bioinfo.genotoul@inra.fr'
 __status__ = 'dev'
 
-# Status: dev.
-
 # Modules importation.
 import argparse
-import re
-import sys
+import logging
 from datetime import datetime
 
+### Functions
+def parse_arguments():
+    '''
+    Parse parameters.
+    '''
+    parser = argparse.ArgumentParser(description = 'Script which create a \
+    correspondence table between global cluster id and gene id and \
+    a table with number of aligned reads in each sample and for each \
+    global cluster id.')
 
-# Print time.
-print(str(datetime.now()))
-
-# Manage parameters.
-parser = argparse.ArgumentParser(description = 'Script which create a \
-correspondence table between global cluster id and gene id and \
-a table with number of aligned reads in each sample and for each \
-global cluster id.')
+    parser.add_argument('-t', '--table_of_corespondences', required = True, 
+    help = 'Correspondence table between global cluster \
+    id and intermediate cluster id.')
 
-parser.add_argument('-t', '--table_of_corespondences', required = True, 
-help = 'Correspondence table between global cluster \
-id and intermediate cluster id.')
+    parser.add_argument('-l', '--list_of_file_clusters', required = True, 
+    help = 'List of files containing correspondence tables between \
+    cluster intermediate cluster id and gene id per sample.')
 
-parser.add_argument('-l', '--list_of_file_clusters', required = True, 
-help = 'List of files containing correspondence tables between \
-cluster intermediate cluster id and gene id per sample.')
+    parser.add_argument('-c', '--list_of_file_counts', required = True, 
+    help = 'List of files storing read counts for each gene per sample.')
 
-parser.add_argument('-c', '--list_of_file_counts', required = True, 
-help = 'List of files storing read counts for each gene per sample.')
+    parser.add_argument('-oc', '--output_counts', required = True, 
+    help = 'Name of output file containing counts \
+    for each global cluster id and each sample.')
 
-parser.add_argument('-oc', '--output_counts', required = True, 
-help = 'Name of output file containing counts \
-for each global cluster id and each sample.')
+    parser.add_argument('-oid', '--output_id', required = True, 
+    help = 'Name of output file containing correspondence table \
+    between global cluster id and gene id.')
 
-parser.add_argument('-oid', '--output_id', required = True, 
-help = 'Name of output file containing correspondence table \
-between global cluster id and gene id.')
+    parser.add_argument("--verbose", help="increase output verbosity",
+    action="store_true")
 
-parser.add_argument('-v', '--version', action = 'version', \
-version = __version__)
+    parser.add_argument('-v', '--version', action = 'version', \
+    version = __version__)
 
-args = parser.parse_args()
+    args = parser.parse_args()
+    return args
 
 # Recovery of the list of file names.
-with open(args.list_of_file_counts) as fcounts_list:
-    files_of_counts = fcounts_list.read().split()
-
-# For all variable names:
-# g_clstr: global cluster,
-# int_clstr: intermediate cluster,
-# gene: gene.
-
-# Dictionnaries d_g_clstr_id_by_int_clstr_id
-# and d_count_by_g_clstr initialization.
-d_g_clstr_id_by_int_clstr_id = {}
-d_count_by_g_clstr = {}
-
-with open(args.table_of_corespondences) as fp:
-    for g_clstr_int_clstr_line in fp:
-        g_clstr, *int_clstr = g_clstr_int_clstr_line.split()
-        for clstr in int_clstr :
-            d_g_clstr_id_by_int_clstr_id[clstr] = g_clstr
-        d_count_by_g_clstr[g_clstr] = [0]*len(files_of_counts)
-
-print(d_g_clstr_id_by_int_clstr_id)
-print(d_count_by_g_clstr)
-
-
-# Initialization of dictionnary d_g_clstr_id_by_gene_id.
-d_g_clstr_id_by_gene_id = {}
-
-# Store into files_of_int_clstr_id_gene_id the list of sample files names
-# which contains correspondence between intermediate cluster id and gene id.
-with open(args.list_of_file_clusters) as fcluster_list:
-    files_of_int_clstr_id_gene_id = fcluster_list.read().split()
-
-print(files_of_int_clstr_id_gene_id)
-
-# For each line of each sample file into files_of_int_clstr_id_gene_id,
-# store the gene id (key) in the dictionnary
-# d_g_clstr_id_by_gene_id.
-# The value of d_g_clstr_id_by_gene_id is the value of
-# d_g_clstr_id_by_int_clstr_id (global cluster id).
-
-for int_clstr_gene_path in files_of_int_clstr_id_gene_id:
-    print(int_clstr_gene_path)
-    with open(int_clstr_gene_path) as fh:
-        for file_int_clstr_gene in fh:
-            line_int_clstr_gene = file_int_clstr_gene.split()
-            print(line_int_clstr_gene)
-            int_clstr_id = line_int_clstr_gene[0]
-            gene_id_from_clstr_gene_path = line_int_clstr_gene[1]
-            if 'd_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path]' not in d_g_clstr_id_by_gene_id:
-                d_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path] \
-                = d_g_clstr_id_by_int_clstr_id[int_clstr_id]
-            else:
-                d_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path]\
-                .append(d_g_clstr_id_by_int_clstr_id[int_clstr_id])
-
-print(d_g_clstr_id_by_gene_id)
-
-
-
-# For each count file (output of featureCounts), reading of lines one by one,
-# recovery of name of gene and count number and incrementing of corresponding
-# value in d_count_by_g_clstr.
-for (count_idx,counts_path) in enumerate(sorted(files_of_counts)):
-    with open(counts_path) as fh:
-        for f_gene_counts in fh:
-            if f_gene_counts.startswith('#') \
-            or f_gene_counts.startswith('Geneid'):
-                continue
-            line_gene_counts_split = f_gene_counts.split()
-            gene_id = line_gene_counts_split[0].split("_gene")[0]
-            gene_count = int(line_gene_counts_split[6])
-            d_count_by_g_clstr[d_g_clstr_id_by_gene_id[gene_id]]\
-            [count_idx] += gene_count
-
-
-
-#######################################
-# Write in the output files.
-#######################################
-
-# Write output file containing correspondence table
-# between global cluster id and gene id.
-with open(args.output_id,"w") as foutput_res_table:
-    # Heading of output file: name of columns.
-    foutput_res_table.write("seed_cluster" + "\t" + "id_gene" + "\n")
-    # Writing seed cluster ids and genes ids for each sample contained in
-    # d_g_clstr_id_by_gene_id in the output file line by line.
-    for gene_id, g_clstr_id \
-    in d_g_clstr_id_by_gene_id.items():
-        foutput_res_table.write(g_clstr_id \
-        + "\t" \
-        + gene_id \
-        + "\n")
-
-
-
-# Write output file containing global cluster id and read count for each sample.
-with open(args.output_counts,"w") as foutput_res_counts:
-    # Heading of output file: name of columns.
-    foutput_res_counts.write("seed_cluster\t" + "\t".join(files_of_counts) + "\n")
-    # Writing global cluster ids and counts for each sample contained in
-    # d_count_by_g_clstr in the output file line by line.
-    for g_clstr, count in d_count_by_g_clstr.items():
-        foutput_res_counts.write(g_clstr + "\t" \
-        + "\t".join([str(i) for i in count])\
-        + "\n")
-
+def processing_input_files(file_counts, correspondance_table, file_clusters):
+    '''
+    Recovering the list of file names.
+    For all variable names:
+    g_clstr: global cluster,
+    int_clstr: intermediate cluster,
+    gene: gene.
+    
+    '''
+    with open(file_counts) as fcounts_list:
+        files_of_counts = fcounts_list.read().split()
+
+
+    d_g_clstr_id_by_int_clstr_id = {}
+    d_count_by_g_clstr = {}
+
+    with open(correspondance_table) as fp:
+        for g_clstr_int_clstr_line in fp:
+            g_clstr, *int_clstr = g_clstr_int_clstr_line.split()
+            for clstr in int_clstr :
+                d_g_clstr_id_by_int_clstr_id[clstr] = g_clstr
+            d_count_by_g_clstr[g_clstr] = [0]*len(files_of_counts)
+    
+    d_g_clstr_id_by_gene_id = {}
+
+    # Store into files_of_int_clstr_id_gene_id the list of sample files names
+    # which contains correspondence between intermediate cluster id and gene id.
+    #
+    # For each line of each sample file into files_of_int_clstr_id_gene_id,
+    # store the gene id (key) in the dictionnary
+    # d_g_clstr_id_by_gene_id.
+    # The value of d_g_clstr_id_by_gene_id is the value of
+    # d_g_clstr_id_by_int_clstr_id (global cluster id).
+
+    with open(file_clusters) as fcluster_list:
+        files_of_int_clstr_id_gene_id = fcluster_list.read().split()
+
+    for int_clstr_gene_path in files_of_int_clstr_id_gene_id:
+        with open(int_clstr_gene_path) as fh:
+            for file_int_clstr_gene in fh:
+                line_int_clstr_gene = file_int_clstr_gene.split()
+                int_clstr_id = line_int_clstr_gene[0]
+                gene_id_from_clstr_gene_path = line_int_clstr_gene[1]
+                if 'd_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path]' not in d_g_clstr_id_by_gene_id:
+                    d_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path] \
+                    = d_g_clstr_id_by_int_clstr_id[int_clstr_id]
+                else:
+                    d_g_clstr_id_by_gene_id[gene_id_from_clstr_gene_path]\
+                    .append(d_g_clstr_id_by_int_clstr_id[int_clstr_id])
+
+    return files_of_counts, d_count_by_g_clstr, d_g_clstr_id_by_gene_id
+
+
+def linking_counts_and_clusters(files_of_counts, d_count_by_g_clstr, d_g_clstr_id_by_gene_id):
+    '''
+    For each count file (output of featureCounts), reading of lines one by one,
+    recovery of name of gene and count number and incrementing of corresponding
+    value in d_count_by_g_clstr.
+    '''
+    for (count_idx,counts_path) in enumerate(sorted(files_of_counts)):
+        with open(counts_path) as fh:
+            for f_gene_counts in fh:
+                if f_gene_counts.startswith('#') \
+                or f_gene_counts.startswith('Geneid'):
+                    continue
+                line_gene_counts_split = f_gene_counts.split()
+                gene_id = line_gene_counts_split[0].split("_gene")[0]
+                gene_count = int(line_gene_counts_split[6])
+                d_count_by_g_clstr[d_g_clstr_id_by_gene_id[gene_id]]\
+                [count_idx] += gene_count
+    
+    return d_count_by_g_clstr
+
+def writing_outputs( files_of_counts, d_count_by_g_clstr, d_g_clstr_id_by_gene_id, output_id, output_counts):
+    '''
+    # Write output file containing correspondence table
+    # between global cluster id and gene id.
+    '''
+    with open(output_id,"w") as foutput_res_table:
+        # Heading of output file: name of columns.
+        foutput_res_table.write("seed_cluster" + "\t" + "id_gene" + "\n")
+        # Writing seed cluster ids and genes ids for each sample contained in
+        # d_g_clstr_id_by_gene_id in the output file line by line.
+        for gene_id, g_clstr_id \
+        in d_g_clstr_id_by_gene_id.items():
+            foutput_res_table.write(g_clstr_id \
+            + "\t" \
+            + gene_id \
+            + "\n")
+
+    # Write output file containing global cluster id and read count for each sample.
+    with open(output_counts,"w") as foutput_res_counts:
+        # Heading of output file: name of columns.
+        foutput_res_counts.write("seed_cluster\t" + "\t".join(files_of_counts) + "\n")
+        # Writing global cluster ids and counts for each sample contained in
+        # d_count_by_g_clstr in the output file line by line.
+        for g_clstr, count in d_count_by_g_clstr.items():
+            foutput_res_counts.write(g_clstr + "\t" \
+            + "\t".join([str(i) for i in count])\
+            + "\n")
+
+def main():
+    args = parse_arguments()
+
+    if args.verbose:
+        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
+        logging.info('Mode verbose ON')
+
+    else:
+        logging.basicConfig(format="%(levelname)s: %(message)s")
+
+    # Print time.
+    logging.info(str(datetime.now()))
+
+    files_of_counts, d_count_by_g_clstr, d_g_clstr_id_by_gene_id = \
+    processing_input_files(args.list_of_file_counts, args.table_of_corespondences, args.list_of_file_clusters)
+
+    d_count_by_g_clstr = linking_counts_and_clusters(files_of_counts, d_count_by_g_clstr, d_g_clstr_id_by_gene_id)
+
+    writing_outputs( files_of_counts, d_count_by_g_clstr, d_g_clstr_id_by_gene_id, args.output_id, args.output_counts)
+
+if __name__ == '__main__':
+    main()
 
-- 
GitLab


From 02ee802a5e45270da8f20c87dbf8ed2f28e60fc7 Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Mon, 9 Jan 2023 09:02:00 +0100
Subject: [PATCH 171/194] cd_hit_produce_table_clstr.py: add fasta.clstr file
 as input and change the script's call in cd-hit.nf

---
 bin/cd_hit_produce_table_clstr.py | 77 ++++++++++++++++++++-----------
 modules/cd_hit.nf                 |  3 +-
 2 files changed, 51 insertions(+), 29 deletions(-)

diff --git a/bin/cd_hit_produce_table_clstr.py b/bin/cd_hit_produce_table_clstr.py
index 1e44d50..5fafa9b 100755
--- a/bin/cd_hit_produce_table_clstr.py
+++ b/bin/cd_hit_produce_table_clstr.py
@@ -1,30 +1,53 @@
 #!/usr/bin/env python
 import sys, re
+from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
 
-#init dictionaries:
-ref = ""
-seqs = []
-
-while 1 :
-    line = sys.stdin.readline()
-    #print line
-    if line == '' :
-        break
-    else :
-        if line[0] == ">":
-            for seq in seqs :
-                print(ref+"\t"+seq)
-            ref = ""
-            seqs = []
-        else:
-            a, b = line.split('>', 1)
-            name = b.split("...")[0]
-            rep = (line.rstrip()[-1] == '*')
-            if rep :
-                ref = name
-                seqs.append(name)
-            else :
-                seqs.append(name)
-
-for seq in seqs :
-    print(ref+"\t"+seq)
+def parse_arguments():
+    """Parse script arguments."""
+    parser = ArgumentParser(description="...",
+                            formatter_class=ArgumentDefaultsHelpFormatter)
+    parser.add_argument('-i', '--input_file', required=True, help="cd-hit output file of representating clusters.")
+
+    parser.add_argument('-o', '--output_file', required=True, help="Clusters table.")
+
+    args = parser.parse_args()
+    return args
+
+def process(input_file, output_file):
+    #init dictionaries:
+    ref = ""
+    seqs = []
+    
+    FH_out = open(output_file, 'wt')
+    FH_input = open(input_file)
+    for line in FH_input:
+        #print line
+        if line == '' :
+            break
+        else :
+            if line[0] == ">":
+                for seq in seqs :
+                    FH_out.write(ref+"\t"+seq+"\n")
+                ref = ""
+                seqs = []
+            else:
+                a, b = line.split('>', 1)
+                name = b.split("...")[0]
+                rep = (line.rstrip()[-1] == '*')
+                if rep :
+                    ref = name
+                    seqs.append(name)
+                else :
+                    seqs.append(name)
+
+    for seq in seqs :
+        FH_out.write(ref+"\t"+seq+"\n")
+
+def main():
+    args = parse_arguments()
+
+    process(args.input_file, args.output_file)
+
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
diff --git a/modules/cd_hit.nf b/modules/cd_hit.nf
index 217bc92..3896ec1 100644
--- a/modules/cd_hit.nf
+++ b/modules/cd_hit.nf
@@ -35,13 +35,12 @@ process GLOBAL_CD_HIT {
   path "All-cd-hit-est.${pct_id}.fasta", emit: fasta_clusters
   path "table_clstr.txt", emit: clstr_table
 
-
   script:
   """
   # *fasta is important to get the correct order
   cat *.fasta > All-cd-hit-est.${pct_id}
   cd-hit-est -c ${pct_id} -i All-cd-hit-est.${pct_id} -o All-cd-hit-est.${pct_id}.fasta -T ${task.cpus} -M ${task.mem} -d 150
-  cat All-cd-hit-est.${pct_id}.fasta.clstr | cd_hit_produce_table_clstr.py > table_clstr.txt
+  cd_hit_produce_table_clstr.py -i All-cd-hit-est.${pct_id}.fasta.clstr -o table_clstr.txt
   """
 }
 
-- 
GitLab


From e7c49fc1a457f701b6dddc38b9cbb6cf0814ed15 Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Mon, 9 Jan 2023 09:03:04 +0100
Subject: [PATCH 172/194] merge_contig_quantif_perlineage.py create
 generate_krona_directories() refactoring

---
 bin/merge_contig_quantif_perlineage.py | 25 ++++++++++++-------------
 bin/merge_kaiju_results.py             |  2 --
 2 files changed, 12 insertions(+), 15 deletions(-)

diff --git a/bin/merge_contig_quantif_perlineage.py b/bin/merge_contig_quantif_perlineage.py
index 8dd82ec..da9cc06 100755
--- a/bin/merge_contig_quantif_perlineage.py
+++ b/bin/merge_contig_quantif_perlineage.py
@@ -48,6 +48,15 @@ def parse_arguments():
     args = parser.parse_args()
     return args
 
+def generate_krona_directories(path, paramater,name, df_reads_count, ranks_lineage):
+    '''
+    path: Directory output name
+    paramater: paramater analyzed (either nb_reads or depth
+    '''
+    read_abd_dir = path
+    os.makedirs(read_abd_dir, exist_ok=True)
+    outfile = os.path.join(read_abd_dir, f'{name}.krona')
+    df_reads_count[[paramater ] + ranks_lineage].to_csv(outfile, index=False, header=False, sep="\t") 
 
 def main():
 
@@ -131,19 +140,9 @@ def main():
     df_reads_count = df_reads_count.replace(' None', "") 
 
     # number of reads abundance
-    read_abd_dir = "krona_reads_count_abundance"
-    os.makedirs(read_abd_dir, exist_ok=True)
-    outfile = os.path.join(read_abd_dir, f'{name}.krona')
-    df_reads_count[["nb_reads" ] + ranks_lineage].to_csv(outfile, index=False, header=False, sep="\t") 
-
-    #  mean depth abundance
-    depth_abd_dir = "krona_mean_depth_abundance"
-    os.makedirs(depth_abd_dir, exist_ok=True)
-    outfile = os.path.join(depth_abd_dir, f'{name}.krona')
-    df_reads_count[["depth" ] + ranks_lineage].to_csv(outfile, index=False, header=False, sep="\t") 
-
-
-
+    generate_krona_directories("krona_reads_count_abundance", "nb_reads", name, df_reads_count, ranks_lineage)
+    # mean depth abundance
+    generate_krona_directories("krona_mean_depth_abundance", "depth", name, df_reads_count, ranks_lineage)
 
 if __name__ == '__main__':
     main()
diff --git a/bin/merge_kaiju_results.py b/bin/merge_kaiju_results.py
index 25cdb1c..1c8994d 100755
--- a/bin/merge_kaiju_results.py
+++ b/bin/merge_kaiju_results.py
@@ -18,8 +18,6 @@ __version__ = '0.1'
 __email__ = 'support.bioinfo.genotoul@inra.fr'
 __status__ = 'dev'
 
-# Status: dev.
-
 # Modules importation.
 
 import argparse
-- 
GitLab


From 470e367584ba905dcbd9b8d5b89bdcb2eb12e8b2 Mon Sep 17 00:00:00 2001
From: VIENNE MAINA <maina.vienne@inrae.fr>
Date: Tue, 10 Jan 2023 16:15:19 +0100
Subject: [PATCH 173/194] Add coassembly

---
 conf/functional_test.config          |   2 +-
 docs/usage.md                        |   5 +-
 main.nf                              |  62 ++---------
 modules/assembly.nf                  |  26 +++--
 modules/binning.nf                   |   4 +-
 modules/cd_hit.nf                    |   3 +-
 modules/feature_counts.nf            |   6 +-
 modules/read_alignment.nf            |  16 +--
 nextflow.config                      |   2 +
 subworkflows/02_assembly.nf          | 156 +++++++++++++++++++++------
 subworkflows/03_filtering.nf         | 143 +++++++++++++++---------
 subworkflows/04_structural_annot.nf  |   2 -
 subworkflows/05_protein_alignment.nf |   2 +-
 subworkflows/06_functionnal_annot.nf |  17 ++-
 subworkflows/07_taxonomic_affi.nf    |  15 ++-
 subworkflows/08_binning.nf           |  72 +++++++++----
 16 files changed, 345 insertions(+), 188 deletions(-)

diff --git a/conf/functional_test.config b/conf/functional_test.config
index b1fa154..6268237 100644
--- a/conf/functional_test.config
+++ b/conf/functional_test.config
@@ -5,7 +5,7 @@ singularity.enabled = true
 singularity.autoMounts = true
 
 process {
-    container = "/work/project/plateforme/metaG/functional_test/singularity_img/metagwgs.sif"
+    container = "/work/project/plateforme/metaG/functional_test/singularity_img/dev_v2.4/metagwgs.sif"
     withLabel: BINNING {
         container = "/work/project/plateforme/metaG/functional_test/singularity_img/binning.sif"
     }
diff --git a/docs/usage.md b/docs/usage.md
index ed48bf6..a0907e2 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -118,7 +118,7 @@ For HiFi the fastq2 column is not needed
    > name_sample2,number_flowcell,path_sample2_R1.fastq.gz,path_sample2_R2.fastq.gz
    > ```
 
-   * **If you want to perfom cross alignment for binning on groups** :  
+   * **If you want to perfom coassembly or cross alignment for binning on groups** :  
    > ```
    > sample,group,fastq_1,fastq_2
    > name_sample1,group_name,path_sample1_flowcell1_R1.fastq.gz,path_sample1_flowcell1_R2.fastq.gz
@@ -276,6 +276,7 @@ No parameter available for this substep.
 * `--assembly` allows to indicate the assembly tool. For short reads: `["metaspades" or "megahit"]`:  Default: `metaspades`.
                                                      For HiFi reads:  `["hifiasm-meta", "metaflye"]`. Default: `hifiasm-meta`.
 
+* `--coassembly` allows to assemble together the samples labeled with the same group in the samplesheet. It will generate one assembly for each group. To co-assemble all of your samples together, you must indicate a unique group for each sample in the samplesheet.  **WARNING** With the coassembly, you can't use `--binning_cross_alignment 'group'`  because one binning will be generate for each group co-assembled and automatically mapping with every sample of his group but `--binning_cross_alignment 'all'` can be use to cross align every sample with every group. 
 
 
 **WARNING 4:** For short reads, the user can choose between `metaspades` or `megahit` for `--assembly` parameter. The choice can be based on CPUs and memory availability: `metaspades` needs more CPUs and memory than `megahit` but our tests showed that assembly metrics are better for `metaspades` than `megahit`.For PacBio HiFi reads, the user can choose between `hifiasm-meta` or `metaflye`. 
@@ -352,6 +353,8 @@ For example check the version of software in the yaml file and the singularity r
 
 * `--gtdbtk_bank`: indicates path to the GTDBTK database. 
 
+* `--metabat2_seed`: Set the seed for metabat2, for exact reproducibility of metabat2 (default: 0 (random seed))
+
 * `--binning_cross_alignment ["all","group","individual"]`: defines mapping strategy to compute co-abundances for binning. `all` means that each samples will be mapped against every assembly, `group` means that all sample from a group will be mapped against every assembly of the group, `individual` means that each sample will only be mapped against his assembly. Default `individual`
 
 
diff --git a/main.nf b/main.nf
index 848dfb0..ac14614 100644
--- a/main.nf
+++ b/main.nf
@@ -23,7 +23,7 @@ include { STEP_08_BINNING as S08_BINNING } from './subworkflows/08_binning'
 
 include { GET_SOFTWARE_VERSIONS } from './modules/get_software_versions'
 include { MULTIQC } from './modules/multiqc'
-include { MERGE_FASTQ } from './modules/merge_fastq.nf'
+
 
 
 /*
@@ -65,6 +65,7 @@ include { MERGE_FASTQ } from './modules/merge_fastq.nf'
        --stop_at_assembly            Stop the pipeline at this step
        --assembly                    Indicate the assembly tool for short reads ["metaspades" or "megahit" ]. Default: "metaspades".
                                                              or for HiFi reads ["hifiasm-meta", "metaflye"]. Default: "hifiasm-meta".
+       --coassembly                  Assemble together samples labeled with the same group in the samplesheet 
               
      S03_FILTERING options:
        --stop_at_filtering           Stop the pipeline at this step
@@ -213,6 +214,10 @@ workflow {
       exit 1, "You must specify --skip_binning or specify a GTDB-TK bank with --gtdbtk_bank"
   }
 
+  if ( params.coassembly && params.binning_cross_alignment == 'group'){
+    exit 1, "--binning_cross_alignment group must not be use use --coassembly."
+  }
+
 
 
   ////////////
@@ -228,8 +233,8 @@ workflow {
            if (hasExtension(row.fastq_1, "fastq") || hasExtension(row.fastq_1, "fq") || hasExtension(row.fastq_2, "fastq") || hasExtension(row.fastq_2, "fq")) {
               exit 1, "We do recommend to use gziped fastq file to help you reduce your data footprint."
            }
-           if (params.binning_cross_alignment == 'group' && row.group == null){
-            exit 1, "You must specify groups in the samplesheet if you want to use --binning_cross_alignment 'group'"
+           if ((params.binning_cross_alignment == 'group' || params.coassembly) && row.group == null){
+            exit 1, "You must specify groups in the samplesheet if you want to use --binning_cross_alignment 'group' or --coassembly"
            }
            ["sample":row.sample,
             "flowcell":row.flowcell,
@@ -244,7 +249,6 @@ workflow {
         def meta = [:] 
         meta.id = item.sample
         if (item.flowcell!=null) { meta.id = meta.id+"_"+item.flowcell}
-        if (item.group !=null) {meta.id = meta.id+"_"+item.group}
         meta.sample = item.sample
         meta.flowcell = item.flowcell
         meta.group = item.group
@@ -265,7 +269,6 @@ workflow {
       def meta = [:] 
       meta.id = item.sample
       if (item.flowcell!=null) { meta.id = meta.id+"_"+item.flowcell}
-      if (item.group !=null) {meta.id = meta.id+"_"+item.group}
       meta.sample = item.sample
       meta.flowcell = item.flowcell
       meta.group = item.group
@@ -346,7 +349,7 @@ workflow {
       ch_host_index,
       ch_kaiju_db
     )
-    ch_preprocessed_reads = S01_CLEAN_QC.out.preprocessed_reads
+    ch_reads = S01_CLEAN_QC.out.preprocessed_reads
     ch_cutadapt_report = S01_CLEAN_QC.out.cutadapt_report
     ch_sickle_report = S01_CLEAN_QC.out.sickle_report
 
@@ -357,54 +360,11 @@ workflow {
     ch_kaiju_report = S01_CLEAN_QC.out.kaiju_report
 
     ch_software_versions_S01 = S01_CLEAN_QC.out.software_versions
-  } else {
-    ch_preprocessed_reads = ch_reads
   }
 
   if ( !params.stop_at_clean ) {
-		if (!has_assembly & has_flowcell ){ 
-			//////////////////
-			// Manage Flowcell 
-			//////////////////
-			ch_reads_tmp = ch_preprocessed_reads
-				.map {
-					meta, fastq ->
-					[ meta.sample, meta, fastq ] 
-					}
-				.groupTuple(by: [0])
-				.branch {
-					id, meta, fastq ->
-						single  : fastq.size() == 1
-							return [[id:meta.sample.unique().join(),
-							sample:meta.sample.unique().join(),
-							flowcell:meta.flowcell.join("_"),
-							group:meta.group.unique().join(),
-							assembly:meta.assembly.unique().join(),
-							type:meta.type.unique().join()], fastq.flatten() ]
-						multiple: fastq.size() > 1
-							return [[id:meta.sample.unique().join(),
-							sample:meta.sample.unique().join(),
-							flowcell:meta.flowcell.join("_"),
-							group:meta.group.unique().join(),
-							assembly:meta.assembly.unique().join(),
-							type:meta.type.unique().join()], fastq.flatten() ]
-				}
-
-
-			MERGE_FASTQ (
-				ch_reads_tmp.multiple
-			)
-				.reads
-				.mix(ch_reads_tmp.single)
-				.set{ch_preprocessed_reads}
-		}
-		
-      /////////////////////
-      //End manage Flowcell
-      /////////////////////
-
-    S02_ASSEMBLY ( ch_preprocessed_reads, ch_assembly, has_assembly, assembly_tool )
 
+    S02_ASSEMBLY ( ch_reads, ch_assembly, has_assembly, assembly_tool, has_flowcell )
     ch_assembly = S02_ASSEMBLY.out.assembly
     ch_reads = S02_ASSEMBLY.out.reads
     ch_bam = S02_ASSEMBLY.out.bam
@@ -426,7 +386,7 @@ workflow {
 
     S03_FILTERING (
         ch_assembly,
-        ch_preprocessed_reads,
+        ch_reads,
         ch_idxstats,
         ch_bam,
         ch_min_contigs_cpm,
diff --git a/modules/assembly.nf b/modules/assembly.nf
index 98cf3c6..5c24b43 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -4,7 +4,7 @@ process METASPADES {
   label 'ASSEMBLY_SR'
 
   input:
-  tuple val(meta), path(reads)
+  tuple val(meta), path(read1), path(read2)
 
   output:
   tuple val(meta), path("metaspades_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
@@ -15,7 +15,21 @@ process METASPADES {
     (_,mem,unit) = (task.memory =~ /(\d+) ([A-Z]B)/)[0]
     if ( unit =~ /GB/ ) { 
       """
-      metaspades.py -t ${task.cpus} -m $mem -1 ${reads[0]} -2 ${reads[1]} -o metaspades_${meta.id}
+      echo "
+[
+    {
+        orientation: \\"fr\\",
+        type: \\"paired-end\\",
+        right reads: [
+            \\"${read1.join('\\",\n            \\"')}\\"
+        ],
+        left reads: [
+            \\"${read2.join('\\",\n            \\"')}\\"
+        ]
+    }
+]" > input.yaml
+
+      metaspades.py -t ${task.cpus} -m $mem --dataset input.yaml -o metaspades_${meta.id}
       mv metaspades_${meta.id}/scaffolds.fasta metaspades_${meta.id}/${meta.id}.contigs.fa
       mv metaspades_${meta.id}/spades.log metaspades_${meta.id}/${meta.id}.log
       mv metaspades_${meta.id}/params.txt metaspades_${meta.id}/${meta.id}.params.txt 
@@ -34,7 +48,7 @@ process MEGAHIT {
   label 'ASSEMBLY_SR'
 
   input:
-  tuple val(meta), path(reads)
+  tuple val(meta), path(read1), path(read2)
 
   output:
   tuple val(meta), path("megahit_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
@@ -43,7 +57,7 @@ process MEGAHIT {
 
   script:
     """
-    megahit -t ${task.cpus} -1 ${reads[0]} -2 ${reads[1]} -o megahit_${meta.id} --out-prefix "${meta.id}"
+    megahit -t ${task.cpus} -1 ${read1.join(',')} -2 ${read2.join(',')} -o megahit_${meta.id} --out-prefix "${meta.id}"
     mv megahit_${meta.id}/options.json megahit_${meta.id}/${meta.id}.params.txt
     rm -r  megahit_${meta.id}/intermediate_contigs
 
@@ -69,7 +83,7 @@ process HIFIASM_META {
   """
   mkdir hifiasm_meta_${meta.id}
 
-  hifiasm_meta -t ${task.cpus} -o ${meta.id} $reads 2> hifiasm_meta_${meta.id}/${meta.id}.log
+  hifiasm_meta -t ${task.cpus} -o ${meta.id} ${reads.join(' ')} 2> hifiasm_meta_${meta.id}/${meta.id}.log
 
   # gfa to fasta format
   awk '/^S/{print ">"\$2"\\n"\$3}' ${meta.id}.p_ctg.gfa | fold > hifiasm_meta_${meta.id}/${meta.id}.contigs.fa
@@ -98,7 +112,7 @@ process METAFLYE {
   """
   mkdir metaflye_${meta.id}
   
-  flye --pacbio-hifi $reads -o 'metaflye_${meta.id}' --meta -t ${task.cpus} 2> metaflye_${meta.id}/${meta.id}.log
+  flye --pacbio-hifi ${reads.join(' ')} -o 'metaflye_${meta.id}' --meta -t ${task.cpus} 2> metaflye_${meta.id}/${meta.id}.log
 
   mv metaflye_${meta.id}/assembly.fasta  metaflye_${meta.id}/${meta.id}.contigs.fa
   mv metaflye_${meta.id}/params.json  metaflye_${meta.id}/${meta.id}.params.json
diff --git a/modules/binning.nf b/modules/binning.nf
index c90306a..431fb01 100644
--- a/modules/binning.nf
+++ b/modules/binning.nf
@@ -30,7 +30,7 @@ process METABAT2 {
   script:
   """
   mkdir -p metabat2/bins/
-  metabat2 --inFile $fna --abdFile $depth --outFile metabat2/bins/${meta.id}_metabat2 --numThreads ${task.cpus}
+  metabat2 --inFile $fna --abdFile $depth --outFile metabat2/bins/${meta.id}_metabat2 --numThreads ${task.cpus} --seed ${params.metabat2_seed}
   echo \$(metabat2 -h 2>&1) > v_metabat2.txt
   """
 }
@@ -130,7 +130,7 @@ process METAWRAP_REFINMENT {
     path "v_metawrap.txt", emit: v_metawrap
 
 	script:
-  bins_flag = (bins3 != null) ? "-A $bins1 -B $bins2 -C $bins3" : "-A $bins2 -B $bins2 "
+  bins_flag = (bins3 != null) ? "-A $bins1 -B $bins2 -C $bins3" : "-A $bins1 -B $bins2 "
   """
 
   echo "metawrap 1.3_modified" > v_metawrap.txt
diff --git a/modules/cd_hit.nf b/modules/cd_hit.nf
index 3896ec1..b341142 100644
--- a/modules/cd_hit.nf
+++ b/modules/cd_hit.nf
@@ -15,7 +15,7 @@ process INDIVIDUAL_CD_HIT {
   script:
   """
   cd-hit-est -c ${pct_id} -i ${ffn} -o ${meta.id}.cd-hit-est.${pct_id}.fasta -T ${task.cpus} -M ${task.mem} -d 150
-  cat ${meta.id}.cd-hit-est.${pct_id}.fasta.clstr | cd_hit_produce_table_clstr.py > ${meta.id}.cd-hit-est.${pct_id}.table_cluster_contigs.txt
+  cd_hit_produce_table_clstr.py -i ${meta.id}.cd-hit-est.${pct_id}.fasta.clstr -o ${meta.id}.cd-hit-est.${pct_id}.table_cluster_contigs.txt
   echo \$(cd-hit -h 2>&1) > v_cdhit.txt
   """
 }
@@ -54,7 +54,6 @@ main:
   INDIVIDUAL_CD_HIT( ch_assembly, ch_percentage_identity )
   ch_individual_clusters = INDIVIDUAL_CD_HIT.out.clstr_fasta.collect()
   GLOBAL_CD_HIT(ch_individual_clusters , ch_percentage_identity )
-  ch_ffn = ch_assembly.flatMap{it -> it[1]}.collect()
 
 emit:
   individual_clstr_table = INDIVIDUAL_CD_HIT.out.clstr_table
diff --git a/modules/feature_counts.nf b/modules/feature_counts.nf
index 73ec38c..63eb79a 100644
--- a/modules/feature_counts.nf
+++ b/modules/feature_counts.nf
@@ -44,14 +44,12 @@ process QUANTIFICATION_TABLE {
 workflow QUANTIFICATION {
  
   take:
-    ch_gff  // channel: [ val(meta), path(gff) ]
-    ch_bam  // channel: [ val(meta), path(bam), path(bam_index) ]
+    ch_gff_and_bam  // channel: [ val(meta), path(gff), path(bam), path(bam_index) ]
     ch_individual_clstr_table
     ch_global_clstr_table
 
   main:
-    ch_gff_and_bam = ch_gff.join(ch_bam, remainder: false)
-
+  
     FEATURE_COUNTS(ch_gff_and_bam)
     ch_count_table = FEATURE_COUNTS.out.count_table.collect()
     ch_quant_report = FEATURE_COUNTS.out.summary
diff --git a/modules/read_alignment.nf b/modules/read_alignment.nf
index 881f6c8..5183c8b 100644
--- a/modules/read_alignment.nf
+++ b/modules/read_alignment.nf
@@ -1,6 +1,6 @@
 process BWA_MEM {
    tag "${meta.id}"
-   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy', pattern:"*sort*"
+   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy', pattern:"*bam*"
 
    input:
       tuple val(meta), path(fna), path(reads)
@@ -8,16 +8,16 @@ process BWA_MEM {
 
 
    output:
-      tuple val(meta), path("${meta.id}.sort.bam"), path("${meta.id}.sort.bam.bai"), emit: bam
+      tuple val(meta), path("${meta.id}.bam"), path("${meta.id}.bam.bai"), emit: bam
       path "v_bwa.txt", emit: v_bwa_mem2
       path "v_samtools.txt", emit: v_samtools
 
    script:
       """
       bwa-mem2 index ${fna} -p ${fna}
-      bwa-mem2 mem -t ${task.cpus} ${fna} ${reads[0]} ${reads[1]} | samtools view -@ ${task.cpus} -bS - | samtools sort -@ ${task.cpus} - -o ${meta.id}.sort.bam
+      bwa-mem2 mem -t ${task.cpus} ${fna} ${reads[0]} ${reads[1]} | samtools view -@ ${task.cpus} -bS - | samtools sort -@ ${task.cpus} - -o ${meta.id}.bam
       
-      samtools index -@ ${task.cpus} ${meta.id}.sort.bam
+      samtools index -@ ${task.cpus} ${meta.id}.bam
 
       bwa-mem2 version > v_bwa.txt
       samtools --version &> v_samtools.txt
@@ -27,23 +27,23 @@ process BWA_MEM {
 process MINIMAP2 {
    tag "${meta.id}"
    label 'MINIMAP2'
-   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy', pattern:"*sort*"
+   publishDir "${params.outdir}/$publishDir_path/${meta.id}", mode: 'copy', pattern:"*bam*"
 
    input:
       tuple val(meta), path(fna), path(reads)
       val(publishDir_path)
 
    output:
-      tuple val(meta), path("${meta.id}.sort.bam"), path("${meta.id}.sort.bam.bai"), emit: bam
+      tuple val(meta), path("${meta.id}.bam"), path("${meta.id}.bam.bai"), emit: bam
       path "v_minimap2.txt", emit: v_minimap2
       path "v_samtools.txt", emit: v_samtools
 
    script:
       """
       # align reads to contigs, keep only primary aln and sort resulting bam 
-      minimap2 -t ${task.cpus} -ax map-hifi $fna $reads | samtools view -@ ${task.cpus} -b -F 2304 | samtools sort -@ ${task.cpus} -o ${meta.id}.sort.bam  
+      minimap2 -t ${task.cpus} -ax map-hifi $fna $reads | samtools view -@ ${task.cpus} -b -F 2304 | samtools sort -@ ${task.cpus} -o ${meta.id}.bam  
       
-      samtools index ${meta.id}.sort.bam -@ ${task.cpus}
+      samtools index ${meta.id}.bam -@ ${task.cpus}
 
       samtools --version &> v_samtools.txt
       minimap2 --version &> v_minimap2.txt
diff --git a/nextflow.config b/nextflow.config
index 1516f4c..b0f4b71 100644
--- a/nextflow.config
+++ b/nextflow.config
@@ -21,6 +21,7 @@ params {
     gtdbtk_bank = ""
     percentage_identity = 0.95
     type = ""
+    coassembly = false
 
     // Stop after step or skip optional step/sub-step.
 
@@ -58,6 +59,7 @@ params {
     drep_threshold = 0.95
     min_completeness = 50
     max_contamination = 10
+    metabat2_seed = 0
 
     // Ressources.
     kaiju_db_dir = false
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index d300ba9..46c4da5 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -3,13 +3,15 @@ include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
 include { GET_ALIGNMENT_METRICS } from '../modules/read_alignment_manipulation'
+include { MERGE_FASTQ } from '../modules/merge_fastq.nf'
 
 workflow STEP_02_ASSEMBLY {
   take: 
-    reads
-    assembly
-    has_assembly
-    assembly_tool
+  reads
+  assembly
+  has_assembly
+  assembly_tool
+  has_flowcell
 
   main:
     ch_assembler_v = Channel.empty() 
@@ -17,36 +19,107 @@ workflow STEP_02_ASSEMBLY {
     ch_bwa_mem_v = Channel.empty()
     ch_minimap2_v = Channel.empty()
     ch_samtools_v = Channel.empty()
-  
-    if (has_assembly){
-      ch_assembly = assembly   
-    } 
-    else {
-      if(assembly_tool == 'metaspades') {
-        METASPADES(reads)
-        ch_assembly = METASPADES.out.assembly
-        ch_assembler_v = METASPADES.out.v_metaspades
-      } 
-      else if(assembly_tool == 'megahit') {
-        MEGAHIT(reads)
-        ch_assembly = MEGAHIT.out.assembly
-        ch_assembler_v = MEGAHIT.out.v_megahit
-      } 
-      else if(assembly_tool == 'hifiasm-meta') {
-        HIFIASM_META(reads)
-        ch_assembly = HIFIASM_META.out.assembly
-        ch_assembler_v = HIFIASM_META.out.v_hifiasm_meta
-        } 
-      else if(assembly_tool == 'metaflye') {
-          METAFLYE(reads)
+
+
+    ch_assembly = assembly 
+    ch_reads = reads
+
+    if (!has_assembly & has_flowcell ){ 
+			//////////////////
+			// Manage Flowcell 
+			//////////////////
+			ch_reads_flowcell = reads
+				.map { meta, fastq ->
+					   [ meta.sample, meta, fastq ] }
+				.groupTuple(by: [0])
+				.branch {	id, meta, fastq ->
+          single : fastq.size() == 1
+            return [[id:meta.sample.unique().join(),
+            sample:meta.sample.unique().join(),
+            flowcell:meta.flowcell.join("_"),
+            group:meta.group.unique().join(),
+            assembly:meta.assembly.unique().join(),
+            type:meta.type.unique().join()], fastq.flatten() ]
+          multiple: fastq.size() > 1
+            return [[id:meta.sample.unique().join(),
+            sample:meta.sample.unique().join(),
+            flowcell:meta.flowcell.join("_"),
+            group:meta.group.unique().join(),
+            assembly:meta.assembly.unique().join(),
+            type:meta.type.unique().join()], fastq.flatten() ]
+				}
+
+			MERGE_FASTQ (ch_reads_flowcell.multiple)
+				.reads
+				.mix(ch_reads_flowcell.single)
+				.set{ch_reads}
+    }
+
+    if (params.coassembly){ 
+      ch_reads.map { meta, fastq ->
+                   [ meta.group, meta, fastq] }
+        .groupTuple(by: [0])
+        .map { group, metas, fastq ->
+              def meta = [:]
+              meta.id = metas.group.unique().join()
+              meta.sample = metas.sample.join("_")
+              meta.flowcell = metas.flowcell.unique().join()
+              meta.group =  metas.group.unique().join()
+              meta.assembly = metas.assembly.unique().join()
+              meta.type = metas.type.unique().join()
+              if (params.type.toUpperCase() == "SR") {
+                return [meta, fastq.collect { it[0] }, fastq.collect { it[1] }]
+              } else {
+                return [meta, fastq ]
+              }}
+        .set { ch_reads_assembly }
+
+      if (has_assembly){ 
+        ch_assembly = assembly.map { meta, assembly ->
+                                   [ meta.group, meta, assembly] }
+                              .groupTuple(by: [0]) 
+                              .map{ group, metas, assembly ->
+                                    def meta = [:]
+                                    meta.id = metas.group.unique().join()
+                                    meta.sample = metas.sample.join("_")
+                                    meta.flowcell = metas.flowcell.unique().join()
+                                    meta.group =  metas.group.unique().join()
+                                    meta.assembly = metas.assembly.unique().join()
+                                    meta.type = metas.type.unique().join()
+                                    return [meta, assembly[0]] }
+      }
+
+    } else if (params.type.toUpperCase() == "SR") {
+        ch_reads_assembly = ch_reads
+        .map { meta, fastq ->
+            return [meta, fastq[0], fastq[1]] }
+
+    } else {
+      ch_reads_assembly = ch_reads
+    }
+
+    if (!has_assembly){
+      if (assembly_tool == 'metaspades') {
+          METASPADES(ch_reads_assembly)
+          ch_assembly = METASPADES.out.assembly
+          ch_assembler_v = METASPADES.out.v_metaspades
+      } else if (assembly_tool == 'megahit') {
+          MEGAHIT(ch_reads_assembly)
+          ch_assembly = MEGAHIT.out.assembly
+          ch_assembler_v = MEGAHIT.out.v_megahit
+      } else if (assembly_tool == 'hifiasm-meta') {
+          HIFIASM_META(ch_reads_assembly)
+          ch_assembly = HIFIASM_META.out.assembly
+          ch_assembler_v = HIFIASM_META.out.v_hifiasm_meta
+      } else if (assembly_tool == 'metaflye') {
+          METAFLYE(ch_reads_assembly)
           ch_assembly = METAFLYE.out.assembly
           ch_assembler_v = METAFLYE.out.v_metaflye
-        } 
-      else {
+      } else {
         exit 1,  "Invalid assembly parameter: ${assembly_tool}"
-        }
+      }
     }
-    
+
     ch_assembly_renamed = RENAME_CONTIGS(ch_assembly)
     ch_assembly_quast = ch_assembly_renamed
                         .map { meta, file -> file }
@@ -58,9 +131,22 @@ workflow STEP_02_ASSEMBLY {
 
     ch_idxstats = Channel.empty()
     ch_flagstat = Channel.empty()
-    ch_reads = reads
+                                          
+    if (params.coassembly){
+      ch_reads.map { meta, fastq ->
+                   [ meta.group, meta, fastq ]}
+              .set { ch_reads_tmp }
+
+      ch_assembly_renamed.map { meta, assembly ->
+                              [ meta.group, assembly ]} 
+                         .combine(ch_reads_tmp, by: 0)
+                         .map { group, assembly, meta, fastq -> 
+                              [ meta, assembly,fastq ]}
+                         .set { ch_contigs_and_reads }
+    } else {
+      ch_contigs_and_reads = ch_assembly_renamed.join(ch_reads, remainder: true)
+    }
 
-    ch_contigs_and_reads = ch_assembly_renamed.join(ch_reads, remainder: true)
     if ( params.type.toUpperCase() == "SR" ) {
 
       READS_DEDUPLICATION ( ch_contigs_and_reads )
@@ -71,10 +157,10 @@ workflow STEP_02_ASSEMBLY {
       ch_bwa_mem_v = READS_DEDUPLICATION.out.v_bwa_mem2
       
     } else {
-        MINIMAP2(ch_contigs_and_reads,"02_assembly/02_3_reads_vs_primary_assembly")
-        ch_bam = MINIMAP2.out.bam
+      MINIMAP2(ch_contigs_and_reads,"02_assembly/02_3_reads_vs_primary_assembly")
+      ch_bam = MINIMAP2.out.bam
 
-        ch_minimap2_v = MINIMAP2.out.v_minimap2
+      ch_minimap2_v = MINIMAP2.out.v_minimap2
         
     }
 
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index 6ae3938..bf92a0b 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -23,10 +23,33 @@ workflow STEP_03_ASSEMBLY_FILTER {
 
     ch_chunk_assembly_for_filter = assemblies
                                   .splitFasta(by: 100000, file: true)
-  
 
-    ch_assembly_and_idxstats = ch_chunk_assembly_for_filter
+    if (params.coassembly){ 
+      idxstats.map { meta, idxstats ->
+                   [ meta.group, meta, idxstats] }
+              .groupTuple(by: [0])
+              .map { group, metas, idxstats -> 
+                    def meta = [:]
+                    meta.id = metas.group.unique().join()
+                    meta.sample = metas.sample.join("_")
+                    meta.flowcell = metas.flowcell.unique().join()
+                    meta.group =  metas.group.unique().join()
+                    meta.assembly = metas.assembly.unique().join()
+                    meta.type = metas.type.unique().join()
+                    [ group, meta, idxstats] }
+              .set { ch_idxstats_tmp }
+      ch_chunk_assembly_for_filter.map { meta, assembly ->
+                                       [ meta.group, assembly ]} 
+                                  .combine(ch_idxstats_tmp, by: 0)
+                                  .map { group, assembly, meta, idxstats -> 
+                                       [ meta, assembly, idxstats ]}
+                                  .set { ch_assembly_and_idxstats }
+    } else {
+      ch_assembly_and_idxstats = ch_chunk_assembly_for_filter
                                 .combine(idxstats, by:0)
+    }
+
+    
 
     CHUNK_ASSEMBLY_FILTER (
       ch_assembly_and_idxstats,
@@ -52,69 +75,85 @@ workflow STEP_03_ASSEMBLY_FILTER {
     ch_merged_selected = MERGE_ASSEMBLY_FILTER.out.merged_selected
     discarded_contigs = MERGE_ASSEMBLY_FILTER.out.merged_discarded
 
+    ch_merged_selected_all = ch_merged_selected
+                            .map { meta, file -> file }
+                            .collect()
+    QUAST( ch_merged_selected_all, "${filtering_outdir}/03_1_filtered_assembly/" )
+    ch_quast_report = QUAST.out.report
 
-   // Differentiate sample with and without discarded_contigs 
-   // samples with no discarded_contigs are not going to be processed to process 
-   discarded_contigs_category = discarded_contigs.branch{
-                              without: it[1].isEmpty() 
-                              with: !it[1].isEmpty() 
-                              }
 
-  samples_without_discarded_contigs = discarded_contigs_category.without.map{ it -> it[0]}
-  samples_with_discarded_contigs = discarded_contigs_category.with.map{ it -> it[0]}
+    // Differentiate sample with and without discarded_contigs 
+    // samples with no discarded_contigs are not going to be processed to process 
+    discarded_contigs_category = discarded_contigs.branch{ 
+                                  without: it[1].isEmpty() 
+                                  with: !it[1].isEmpty() 
+                                  }
 
-
-  // make a symblink with the bam and bai from step 02 for samples that have not been affected by the filtering (no contig discarded)
-  result_path_dir = file("${params.outdir}/${filtered_assembly_bam_outdir}/")
-  result_path_dir.mkdirs()
   
-  samples_without_discarded_contigs.map { 
-        sample -> { file("${result_path_dir}/${sample.id}/").mkdir()
-                    file("${params.outdir}/${unfiltered_assembly_bam_outdir}/${sample.id}/${sample.id}.sort.bam")
-                                .mklink("${result_path_dir}/${sample.id}/${sample.id}.sort.bam", overwrite:true)
-                    file("${params.outdir}/${unfiltered_assembly_bam_outdir}/${sample.id}/${sample.id}.sort.bam.bai")
-                                .mklink("${result_path_dir}/${sample.id}/${sample.id}.sort.bam.bai", overwrite:true)
-                     }
-  }
-
-  ch_bam_unchanged_by_filtering =  samples_without_discarded_contigs.join(bam)
-
-  ch_selected_contigs_and_reads = samples_with_discarded_contigs.join(ch_merged_selected).join(reads)
-
-
+    if (params.coassembly){
+      discarded_contigs_category.without.map { meta, discarded_empty -> [ meta.group ]} 
+                                        .combine( bam.map { meta, bam, bai ->
+                                                          [ meta.group, meta, bam, bai ]}, by: 0)
+                                        .map{ group, meta, bam, bai -> 
+                                            [ meta, bam, bai ]}
+                                        .set{ ch_bam_unchanged_by_filtering }
+                                      
+      ch_selected_contigs_and_reads= discarded_contigs_category.with.map {meta, discarded_contigs -> meta.group}
+                                                                    .join( ch_merged_selected.map { meta, contigs -> 
+                                                                                                  [meta.group, meta, contigs]})
+                                                                    .combine( reads.map{ meta, reads ->
+                                                                                       [ meta.group, meta, reads ]}, by: 0)
+                                                                    .map{ group, meta_contigs, contigs, meta_reads, reads -> 
+                                                                        [ meta_reads, contigs, reads ]}
+
+    } else {
+      ch_bam_unchanged_by_filtering =  discarded_contigs_category.without.map{ it -> it[0]}
+                                                                        .join(bam)
+
+      ch_selected_contigs_and_reads = discarded_contigs_category.with.map{ it -> it[0]}
+                                                                    .join(ch_merged_selected).join(reads)
+    }
+
+    // make a symblink with the bam and bai from step 02 for samples that have not been affected by the filtering (no contig discarded)
+    result_path_dir = file("${params.outdir}/${filtered_assembly_bam_outdir}/")
+    result_path_dir.mkdirs()
+    
+    ch_bam_unchanged_by_filtering.map { meta, bam, bai ->
+         { file("${result_path_dir}/${meta.id}/").mkdir()
+           file("${params.outdir}/${unfiltered_assembly_bam_outdir}/${meta.id}/${meta.id}.bam")
+                .mklink("${result_path_dir}/${meta.id}/${meta.id}.bam", overwrite:true)
+           file("${params.outdir}/${unfiltered_assembly_bam_outdir}/${meta.id}/${meta.id}.bam.bai")
+                .mklink("${result_path_dir}/${meta.id}/${meta.id}.bam.bai", overwrite:true)
+      }
+    }
 
-  if ( params.type.toUpperCase() == "SR" ) {
-    BWA_MEM(ch_selected_contigs_and_reads, filtered_assembly_bam_outdir)
-    ch_bam_post_filtering = BWA_MEM.out.bam
-  }
-  else {
-    MINIMAP2(ch_selected_contigs_and_reads, filtered_assembly_bam_outdir)
-    ch_bam_post_filtering = MINIMAP2.out.bam
-  }
+    if ( params.type.toUpperCase() == "SR" ) {
+      BWA_MEM(ch_selected_contigs_and_reads, filtered_assembly_bam_outdir)
+      ch_bam_post_filtering = BWA_MEM.out.bam
+    }
+    else {
+      MINIMAP2(ch_selected_contigs_and_reads, filtered_assembly_bam_outdir)
+      ch_bam_post_filtering = MINIMAP2.out.bam
+    }
 
 
-  ch_all_bam = samples_without_discarded_contigs.join(bam).mix(ch_bam_post_filtering)
+    ch_all_bam = ch_bam_unchanged_by_filtering.mix(ch_bam_post_filtering)
 
-  GET_ALIGNMENT_METRICS(ch_all_bam, filtered_assembly_bam_outdir)
+    GET_ALIGNMENT_METRICS(ch_all_bam, filtered_assembly_bam_outdir)
 
 
-  ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
-  ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
+    ch_flagstat =  GET_ALIGNMENT_METRICS.out.sam_flagstat
+    ch_coverage =  GET_ALIGNMENT_METRICS.out.sam_coverage
 
-  ch_merged_quast = ch_merged_selected
-                      .map { meta, file -> file }
-                      .collect()
-  QUAST( ch_merged_quast, "${filtering_outdir}/03_1_filtered_assembly/" )
-  ch_quast_report = QUAST.out.report
+  
 
-  ch_final_bam = ch_bam_post_filtering.mix(ch_bam_unchanged_by_filtering)
 
-  emit:
-    selected_contigs = ch_merged_selected
-    quast_report = ch_quast_report
-    bam = ch_final_bam
-    sam_coverage = ch_coverage
-    sam_flagstat = ch_flagstat
+    emit:
+      selected_contigs = ch_merged_selected
+      quast_report = ch_quast_report
+      bam = ch_all_bam
+      sam_coverage = ch_coverage
+      sam_flagstat = ch_flagstat
 
 }
 
diff --git a/subworkflows/04_structural_annot.nf b/subworkflows/04_structural_annot.nf
index 49841ef..505e633 100644
--- a/subworkflows/04_structural_annot.nf
+++ b/subworkflows/04_structural_annot.nf
@@ -17,8 +17,6 @@ workflow STEP_04_STRUCTURAL_ANNOT {
 
     MERGE_ANNOTATIONS(annotations_ch)
 
-    ch_software_versions = PRODIGAL.out.v_prodigal.first()
-
     ch_software_versions = PRODIGAL.out.v_prodigal.first().mix( BARRNAP.out.v_barrnap.first(), 
                                                                 TRNASCAN_SE.out.v_tRNAscan.first())
 
diff --git a/subworkflows/05_protein_alignment.nf b/subworkflows/05_protein_alignment.nf
index 56258c4..b178755 100644
--- a/subworkflows/05_protein_alignment.nf
+++ b/subworkflows/05_protein_alignment.nf
@@ -13,7 +13,7 @@ workflow STEP_05_PROTEIN_ALIGNMENT {
         
         DIAMOND (
             prokka_faa,
-            diamond,
+            diamond
         )
 
         ch_diamond_result = DIAMOND.out.m8
diff --git a/subworkflows/06_functionnal_annot.nf b/subworkflows/06_functionnal_annot.nf
index 5b86055..ad48129 100644
--- a/subworkflows/06_functionnal_annot.nf
+++ b/subworkflows/06_functionnal_annot.nf
@@ -28,7 +28,22 @@ workflow STEP_06_FUNC_ANNOT {
         ch_global_clstr_table = CD_HIT.out.global_clstr_table
         ch_cdhit_v = CD_HIT.out.v_cdhit
 
-        QUANTIFICATION ( gff, bam, ch_individual_clstr_table, ch_global_clstr_table)
+        if (params.coassembly){
+            bam.map { meta, bam, bai ->
+                        [ meta.group, meta, bam, bai ]}
+                    .set { ch_bam_tmp }
+
+            gff.map { meta, gff ->
+                        [ meta.group, gff]} 
+                    .combine( ch_bam_tmp, by: 0)
+                    .map { group, gff, meta, bam, bai -> 
+                        [ meta, gff, bam, bai ]}
+                    .set { ch_gff_and_bam }
+        } else {
+            ch_gff_and_bam = gff.join(bam, remainder: false)
+        }
+
+        QUANTIFICATION ( ch_gff_and_bam, ch_individual_clstr_table, ch_global_clstr_table)
         ch_quant_table = QUANTIFICATION.out.quantification_table
         ch_quant_report = QUANTIFICATION.out.quant_report
         ch_featurecounts_v = QUANTIFICATION.out.v_featurecounts
diff --git a/subworkflows/07_taxonomic_affi.nf b/subworkflows/07_taxonomic_affi.nf
index 99ead6c..4f1eb9b 100644
--- a/subworkflows/07_taxonomic_affi.nf
+++ b/subworkflows/07_taxonomic_affi.nf
@@ -8,7 +8,20 @@ workflow STEP_07_TAXO_AFFI {
         diamond_result // channel: [ val(meta), path(diamond_file) ]
         sam_coverage // channel: [ val(meta), path(samtools coverage) ]
     main:
-        ch_assign_taxo_input = diamond_result.join(sam_coverage, remainder: true)
+        if (params.coassembly){
+            sam_coverage.map { meta, cov ->
+                             [ meta.group, meta, cov ]}
+                        .set { ch_sam_cov_tmp }
+
+            diamond_result.map { meta, m8 ->
+                               [ meta.group, m8]} 
+                          .combine( ch_sam_cov_tmp, by: 0)
+                          .map { group, m8, meta, cov -> 
+                               [ meta, m8, cov ]}
+                          .set { ch_assign_taxo_input }
+        } else {
+            ch_assign_taxo_input = diamond_result.join(sam_coverage, remainder: true)
+        }
 
         ASSIGN_TAXONOMY ( taxonomy, ch_assign_taxo_input )
 
diff --git a/subworkflows/08_binning.nf b/subworkflows/08_binning.nf
index 59b9c7b..32b9e32 100644
--- a/subworkflows/08_binning.nf
+++ b/subworkflows/08_binning.nf
@@ -52,21 +52,21 @@ workflow STEP_08_BINNING {
     if (params.binning_cross_alignment == 'all') {
       // combine assemblies with reads of all samples
       ch_reads_assembly = reads.combine(assembly)
-      .map{ meta_reads, reads, meta_assembly, assembly ->
-        if (meta_reads != meta_assembly){
-          [[id:meta_reads.id+"_"+meta_assembly.id, sample:meta_assembly.sample, flowcell:meta_assembly.flowcell, group:meta_assembly.group, assembly:meta_assembly.assembly, type:meta_assembly.type], assembly, reads]
-        }
-      }
+                          .map{ meta_reads, reads, meta_assembly, assembly ->
+                            if (((meta_reads.id != meta_assembly.id) && !(params.coassembly)) || (params.coassembly && (meta_reads.group != meta_assembly.group))){
+                              [[id:meta_reads.id+"_"+meta_assembly.id, sample:meta_assembly.sample, flowcell:meta_assembly.flowcell, group:meta_assembly.group, assembly:meta_assembly.assembly, type:meta_assembly.type], assembly, reads]
+                            }
+                          }
     } else if (params.binning_cross_alignment == 'group'){
       // combine assemblies with reads of samples from same group
       ch_assembly_group = assembly.map{ meta, assembly -> [ meta.group, meta, assembly ] }
       ch_reads_assembly = reads.map{ meta, reads -> [ meta.group, meta, reads ] }
-      .combine(ch_assembly_group, by: 0)
-      .map{ group, meta_reads, reads, meta_assembly, assembly ->
-        if (meta_reads != meta_assembly){
-          [[id:meta_reads.id+"_"+meta_assembly.id, sample:meta_assembly.sample, flowcell:meta_assembly.flowcell, group:meta_assembly.group, assembly:meta_assembly.assembly, type:meta_assembly.type], assembly, reads]
-        }
-      }
+                          .combine(ch_assembly_group, by: 0)
+                          .map{ group, meta_reads, reads, meta_assembly, assembly ->
+                            if (meta_reads != meta_assembly){
+                              [[id:meta_reads.id+"_"+meta_assembly.id, sample:meta_assembly.sample, flowcell:meta_assembly.flowcell, group:meta_assembly.group, assembly:meta_assembly.assembly, type:meta_assembly.type], assembly, reads]
+                            }
+                          }
     }
     // cross alignment
     if (params.type == 'SR') {
@@ -78,21 +78,51 @@ workflow STEP_08_BINNING {
     } 
     // formatting channel  
     ch_bam = ch_bam_cross_alignment.mix(bam)
-    .map { meta, bam, bai -> [ meta.sample, meta, bam, bai ]  }
-    .groupTuple(by: [0])
-    .map { sample,metas, bam, bai ->
-      [ metas.min { it.id.size() }, bam, bai ]
-    } 
+            .map { meta, bam, bai -> 
+                  if (params.coassembly){[ meta.group, meta, bam, bai ]} 
+                  else  {[ meta.sample, meta, bam, bai ]}}
+            .groupTuple(by: [0])
+            .map { sample,metas, bam, bai ->
+              [ metas.min { it.id.size() }, bam, bai ]
+            } 
   } else {
       ch_bam = bam
   }
 
+  if (params.coassembly){
+    if (params.binning_cross_alignment == 'all') {
+      ch_bam.map { meta, bam, bai -> [ meta.group, bam, bai ]  }
+            .set { ch_bam_tmp }
+    } else {
+      ch_bam.map { meta, bam, bai -> [ meta.group, meta, bam, bai ]  }
+            .groupTuple(by: [0])
+            .map { group, metas, bam, bai ->
+                [ group, bam, bai ]} 
+            .set { ch_bam_tmp }
+    }
+    assembly.map { meta, assembly ->
+                  [ meta.group, meta, assembly ]} 
+            .combine( ch_bam_tmp, by: 0)
+            .map { group, meta, assembly, bam, bai -> 
+                  [ meta, assembly, bam, bai]}
+            .tap { ch_assembly_bam }
+            .map { meta, assembly, bam, bai ->
+                  [ meta, assembly ]}
+            .tap { ch_assembly }
+
+    ch_assembly_bam.map{  meta, assembly, bam, bai ->
+                       [ meta, bam, bai ]}
+                   .set{ ch_bam}
+  } else {
+    ch_assembly_bam = assembly.join(ch_bam)
+    ch_assembly = assembly
+  }
   ///////////
   /// BINNING
   ///////////
 
   ch_depth = GENERATE_DEPTH_FILES(ch_bam)
-  ch_assembly_depth = assembly.join(ch_depth)
+  ch_assembly_depth = ch_assembly.join(ch_depth)
 
   METABAT2(ch_assembly_depth)
   ch_metabat_bins = METABAT2.out.bins.filter{ t -> t[1].list().size()}
@@ -102,8 +132,6 @@ workflow STEP_08_BINNING {
   ch_maxbin_bins = MAXBIN2.out.bins.filter{ t -> t[1].list().size()}
   ch_maxbin_v = MAXBIN2.out.v_maxbin
 
-  ch_assembly_bam = assembly.join(ch_bam)
-
   CONCOCT(ch_assembly_bam)
   ch_concoct_bins = CONCOCT.out.bins.filter{ t -> t[1].list().size()}
   ch_concoct_v = CONCOCT.out.v_concoct
@@ -120,7 +148,8 @@ workflow STEP_08_BINNING {
       (it[2] != null && it[3] != null)
       single: true
       }
-
+  
+  //bins set  with bins form at least 2 binners 
   ch_bins_multiple = ch_bins_set.multiple.map{ meta, bins1, bins2, bins3 -> 
     if ( bins1 == null ) {
       return [meta, bins2, bins3, bins1]
@@ -131,6 +160,7 @@ workflow STEP_08_BINNING {
     }
   }
 
+  //bins set  with bins form only 1 binner
   ch_bins_single = ch_bins_set.single.map{ meta, bins1, bins2, bins3 -> 
     if ( bins1 != null ) {
       return [meta, bins1]
@@ -160,7 +190,7 @@ workflow STEP_08_BINNING {
                                             .map { meta, file -> file}
                                             .collect()
   
-  ch_bins_assembly = METAWRAP_REFINMENT.out.bins.join(assembly)
+  ch_bins_assembly = METAWRAP_REFINMENT.out.bins.join(ch_assembly)
 
   UNBINNED_CONTIGS(ch_bins_assembly)
 
-- 
GitLab


From 55cd96723438aba1ef1498ef84e1fab2ac4dd5a4 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Wed, 11 Jan 2023 11:40:16 +0100
Subject: [PATCH 174/194] Fix add quast info for bin stats

---
 main.nf                             |  2 ++
 modules/sum_up_bins_informations.nf | 10 +++++++++-
 subworkflows/08_binning.nf          |  2 +-
 3 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/main.nf b/main.nf
index ac14614..7a022ef 100644
--- a/main.nf
+++ b/main.nf
@@ -446,6 +446,8 @@ workflow {
 	}
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_binning ) {
+    ch_quast=ch_quast_after_filter_report.ifEmpty(ch_quast_before_filter_report)
+    
     S08_BINNING( ch_reads, ch_assembly, ch_bam, ch_gtbdtk_db, ch_quast )
     ch_bins_abundances_report = S08_BINNING.out.bins_abundances_report
     ch_bins_stats_report = S08_BINNING.out.bins_stats_report
diff --git a/modules/sum_up_bins_informations.nf b/modules/sum_up_bins_informations.nf
index 842b43c..5cfc103 100644
--- a/modules/sum_up_bins_informations.nf
+++ b/modules/sum_up_bins_informations.nf
@@ -44,8 +44,16 @@ process ADD_QUAST_INFO_TO_BINS {
 
   script:
     """
+    awk -F"\t" '{ 
+      if (NR==1) {
+        val=-1; 
+        for(i=1;i<=NF;i++) { 
+          if (\$i ~ /${meta.id}.*/) {
+            val=i;}}} 
+      if(val != -1) print \$1 "\t" \$val} ' report.tsv > report_${meta.id}.tsv
+
     add_info_to_metawrap_stat.py -s $bins_stat \
-                                 -q $quast_report \
+                                 -q report_${meta.id}.tsv \
                                  -o "${meta.id}_bins_stat_and_quality.tsv"
     """
 }
diff --git a/subworkflows/08_binning.nf b/subworkflows/08_binning.nf
index 32b9e32..69a7962 100644
--- a/subworkflows/08_binning.nf
+++ b/subworkflows/08_binning.nf
@@ -194,7 +194,7 @@ workflow STEP_08_BINNING {
 
   UNBINNED_CONTIGS(ch_bins_assembly)
 
-  ch_metawrap_stats_and_quast =  METAWRAP_REFINMENT.out.checkm_stats.join(quast) 
+  ch_metawrap_stats_and_quast =  METAWRAP_REFINMENT.out.checkm_stats.combine(quast) 
   ch_metawrap_v = METAWRAP_REFINMENT.out.v_metawrap
   
   ADD_QUAST_INFO_TO_BINS(ch_metawrap_stats_and_quast)
-- 
GitLab


From 5bd0f3a9ba435c3b4d681413a57758c77df46f9b Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Fri, 13 Jan 2023 12:02:20 +0100
Subject: [PATCH 175/194] refactoring bin/merge_kaiju_results.py

---
 bin/merge_kaiju_results.py  | 116 +++++++++++++++++++++---------------
 bin/rename_contigs.py       |  12 ++++
 main.nf                     |   3 +
 modules/assembly.nf         |  26 ++++++++
 subworkflows/02_assembly.nf |  13 +++-
 5 files changed, 122 insertions(+), 48 deletions(-)

diff --git a/bin/merge_kaiju_results.py b/bin/merge_kaiju_results.py
index 1c8994d..016d037 100755
--- a/bin/merge_kaiju_results.py
+++ b/bin/merge_kaiju_results.py
@@ -28,57 +28,79 @@ from datetime import datetime
 
 
 # Manage parameters.
-parser = argparse.ArgumentParser(description = 'Script which join \
-kaiju results by level of taxonomy of interest for all samples.')
+def parse_args():
+    parser = argparse.ArgumentParser(description = 'Script which join \
+    kaiju results by level of taxonomy of interest for all samples.')
 
-parser.add_argument('-f', '--list_of_kaiju_files', required = True, \
-help = 'List of kaiju summary files by the level \
-of taxonomy of interest .')
+    parser.add_argument('-f', '--list_of_kaiju_files', required = True, \
+    help = 'List of kaiju summary files by the level \
+    of taxonomy of interest .')
 
-parser.add_argument('-o', '--output_file', required = True, \
-help = 'Name of output file containing counts \
-and percentage of reads in each sample for each element \
-of the level of taxonomy of interest.')
+    parser.add_argument('-o', '--output_file', required = True, \
+    help = 'Name of output file containing counts \
+    and percentage of reads in each sample for each element \
+    of the level of taxonomy of interest.')
 
-parser.add_argument('-v', '--version', action = 'version', \
-version = __version__)
+    parser.add_argument('-v', '--version', action = 'version', \
+    version = __version__)
 
-args = parser.parse_args()
+    args = parser.parse_args()
 
-# Recovery of the list of annotations files.
-with open(args.list_of_kaiju_files) as fkaiju_list:
-    kaiju_files = fkaiju_list.read().split()
+    return args
 
-# Merge kaiju results for all samples.
-for (kaiju_idx,kaiju_path) in enumerate(sorted(kaiju_files)):
-    print(kaiju_idx)
-    if(kaiju_idx==0):
-        merge  = pd.read_csv(kaiju_path, delimiter='\t', dtype=str)
-    else:
-        if(kaiju_idx==1):
-            sample_name = merge.iloc[0,0].split('_kaiju_MEM_verbose.out')
-            merge.drop('file', inplace=True, axis=1)
+
+def retrieve_annotations_files(list_kaiju_files):
+    '''
+    Recovery of the list of annotations files.
+    '''
+    with open(list_kaiju_files) as fkaiju_list:
+        kaiju_files = fkaiju_list.read().split()
+    return kaiju_files
+
+
+def merge_kaiju_files(kaiju_files):
+    '''
+    Merge kaiju results for all samples.
+    '''
+    for (kaiju_idx,kaiju_path) in enumerate(sorted(kaiju_files)):
+        if(kaiju_idx==0):
+            merge  = pd.read_csv(kaiju_path, delimiter='\t', dtype=str)
         else:
-            sample_name = kaiju_results.iloc[0,0].split('_kaiju_MEM_verbose.out')
-            merge.drop('file', inplace=True, axis=1)
-        kaiju_results = pd.read_csv(kaiju_path, delimiter='\t', dtype=str)
-        merge = pd.merge(merge,kaiju_results,left_on="taxon_name",\
-        right_on='taxon_name', how='outer', suffixes=('_'+sample_name[0],''))
-        merge['taxon_id'] = merge['taxon_id'].fillna(merge['taxon_id_' + sample_name[0]])
-        merge.drop(['taxon_id_' + sample_name[0]], inplace=True, axis=1)
-
-# Rename columns corresponding to the last kaiju file (only if number of files > 1)
-if(kaiju_idx>0):
-    sample_name = kaiju_results.iloc[0,0].split('_kaiju_MEM_verbose.out')
-else:
-    sample_name = merge.iloc[0,0].split('_kaiju_MEM_verbose.out')
-merge.rename(columns = {'percent': 'percent_' + sample_name[0], \
-'reads': 'reads_' + sample_name[0]},inplace=True)
-merge.drop('file', inplace=True, axis=1)
-merge = merge[['taxon_name', 'taxon_id']  + [col for col in merge if (col != 'taxon_name' and col != 'taxon_id')]]
-
-# Fill the NaN by 0.
-merge.fillna(0, inplace=True)
-
-# Write merge data frame in output file.
-merge.to_csv(args.output_file, sep="\t", index=False)
+            if(kaiju_idx==1):
+                sample_name = merge.iloc[0,0].split('_kaiju_MEM_verbose.out')
+                merge.drop('file', inplace=True, axis=1)
+            else:
+                sample_name = kaiju_results.iloc[0,0].split('_kaiju_MEM_verbose.out')
+                merge.drop('file', inplace=True, axis=1)
+            kaiju_results = pd.read_csv(kaiju_path, delimiter='\t', dtype=str)
+            merge = pd.merge(merge,kaiju_results,left_on="taxon_name",\
+            right_on='taxon_name', how='outer', suffixes=('_'+sample_name[0],''))
+            merge['taxon_id'] = merge['taxon_id'].fillna(merge['taxon_id_' + sample_name[0]])
+            merge.drop(['taxon_id_' + sample_name[0]], inplace=True, axis=1)
+
+    # Rename columns corresponding to the last kaiju file (only if number of files > 1)
+    if(kaiju_idx>0):
+        sample_name = kaiju_results.iloc[0,0].split('_kaiju_MEM_verbose.out')
+    else:
+        sample_name = merge.iloc[0,0].split('_kaiju_MEM_verbose.out')
+
+    merge.rename(columns = {'percent': 'percent_' + sample_name[0], \
+    'reads': 'reads_' + sample_name[0]},inplace=True)
+
+    merge.drop('file', inplace=True, axis=1)
+    merge = merge[['taxon_name', 'taxon_id']  + [col for col in merge if (col != 'taxon_name' and col != 'taxon_id')]]
+    # Fill the NaN by 0.
+    merge.fillna(0, inplace=True)
+
+    return merge
+
+
+def main():
+    args = parse_args()
+    kaiju_files = retrieve_annotations_files(args.list_of_kaiju_files)
+    merge = merge_kaiju_files(kaiju_files)
+    merge.to_csv(args.output_file, sep="\t", index=False)
+
+
+if __name__ == "__main__":
+    main()
\ No newline at end of file
diff --git a/bin/rename_contigs.py b/bin/rename_contigs.py
index 264d9cf..beb627b 100755
--- a/bin/rename_contigs.py
+++ b/bin/rename_contigs.py
@@ -67,5 +67,17 @@ def main():
         for i, (name, seq) in enumerate(pyfastx.Fasta(fna_file, build_index=False)):
             fh_fna.write(f'>{sample}_c{i+1} {name}\n{seq}\n')
 
+    sample = args.sample    
+    fna_file = args.fna_file
+    out_fna = args.out_fna
+    old2new_contig_name = "old_to_new_contig_name.tsv"
+
+
+    logging.info(f'Writting renamed fasta file in {out_fna}')
+    with open(out_fna, "w") as fh_fna, open(old2new_contig_name, 'w') as mout:
+        for i, (name, seq) in enumerate(pyfastx.Fasta(fna_file, build_index=False)):
+            fh_fna.write(f'>{sample}_c{i+1} {name}\n{seq}\n')
+            mout.write(f'{name}\t{sample}_c{i+1}\n')
+
 if __name__ == '__main__':
     main()
\ No newline at end of file
diff --git a/main.nf b/main.nf
index 7a022ef..b42462b 100644
--- a/main.nf
+++ b/main.nf
@@ -376,6 +376,9 @@ workflow {
     ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
 
     ch_software_versions_S02 = S02_ASSEMBLY.out.software_versions
+    if (params.type.toUpperCase() == 'HIFI') {
+      ch_circular = S02_ASSEMBLY.out.circular
+    }
   }
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.skip_filtering ) {
diff --git a/modules/assembly.nf b/modules/assembly.nf
index 5c24b43..0b4d56f 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -106,6 +106,7 @@ process METAFLYE {
   output:
   tuple val(meta), path("metaflye_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
   tuple val(meta.id), path("metaflye_${meta.id}/${meta.id}.log"), path("metaflye_${meta.id}/${meta.id}.params.json"), emit: report
+  tuple val(meta.id), path("metaflye_${meta.id}/assembly_info.txt"), emit: infos
   path "v_metaflye.txt", emit: v_metaflye
 
   script:
@@ -121,6 +122,31 @@ process METAFLYE {
   """
 }
 
+process CIRCULAR_CONTIGS {
+  tag "${meta.id}"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
+  label 'PYTHON'
+
+  input:
+    val(assembler)
+    tuple val(meta), path("${meta.id}.fna")
+    path(infos)
+
+  output:
+    tuple val(meta), path("${meta.id}.circular.contigs.fna"), emit: circular
+
+  script:
+  """
+    if [ $assembler == 'metaflye' ]
+    then
+      retrieve_circular_contigs.py -a metaflye -f ${meta.id}.fna -i $infos -o ${meta.id}.circular.contigs.fna
+    elif [ $assembler == 'hifiasm-meta' ]
+    then 
+      retrieve_circular_contigs.py -a hifiasm-meta -f ${meta.id}.fna -o ${meta.id}.circular.contigs.fna
+    fi
+  """
+}
+
 process RENAME_CONTIGS {
   tag "${meta.id}"
   publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 46c4da5..ba94a90 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -1,4 +1,4 @@
-include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; RENAME_CONTIGS } from '../modules/assembly'
+include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; CIRCULAR_CONTIGS; RENAME_CONTIGS } from '../modules/assembly'
 include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
@@ -99,6 +99,7 @@ workflow STEP_02_ASSEMBLY {
     }
 
     if (!has_assembly){
+      ch_circular = Channel.empty() 
       if (assembly_tool == 'metaspades') {
           METASPADES(ch_reads_assembly)
           ch_assembly = METASPADES.out.assembly
@@ -108,12 +109,14 @@ workflow STEP_02_ASSEMBLY {
           ch_assembly = MEGAHIT.out.assembly
           ch_assembler_v = MEGAHIT.out.v_megahit
       } else if (assembly_tool == 'hifiasm-meta') {
+          ch_infos = Channel.empty()
           HIFIASM_META(ch_reads_assembly)
           ch_assembly = HIFIASM_META.out.assembly
           ch_assembler_v = HIFIASM_META.out.v_hifiasm_meta
       } else if (assembly_tool == 'metaflye') {
           METAFLYE(ch_reads_assembly)
           ch_assembly = METAFLYE.out.assembly
+          ch_infos = METAFLYE.out.infos
           ch_assembler_v = METAFLYE.out.v_metaflye
       } else {
         exit 1,  "Invalid assembly parameter: ${assembly_tool}"
@@ -125,6 +128,13 @@ workflow STEP_02_ASSEMBLY {
                         .map { meta, file -> file }
                         .collect()
 
+    if ( params.type.toUpperCase() == "HIFI" ) {
+
+      CIRCULAR_CONTIGS(assembly_tool, ch_reads_assembly, ch_infos)
+      ch_circular = CIRCULAR_CONTIGS.out.circular
+
+    }
+
     ASSEMBLY_QUAST( ch_assembly_quast,"02_assembly/02_1_primary_assembly/")
     ch_assembly_report = ASSEMBLY_QUAST.out.report
     ch_quast_v = ASSEMBLY_QUAST.out.v_quast
@@ -179,6 +189,7 @@ workflow STEP_02_ASSEMBLY {
 
   emit:
     assembly = ch_assembly_renamed
+    circular = ch_circular
     reads = ch_reads
     bam = ch_bam
 
-- 
GitLab


From ee77858b9dac37227279a022ccca25613cc4b209 Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Fri, 13 Jan 2023 15:15:40 +0100
Subject: [PATCH 176/194] refactoring bin/merge_kaiju_results.py

---
 bin/merge_kaiju_results.py | 1 -
 1 file changed, 1 deletion(-)

diff --git a/bin/merge_kaiju_results.py b/bin/merge_kaiju_results.py
index 016d037..6d21cb4 100755
--- a/bin/merge_kaiju_results.py
+++ b/bin/merge_kaiju_results.py
@@ -26,7 +26,6 @@ import sys
 import pandas as pd
 from datetime import datetime
 
-
 # Manage parameters.
 def parse_args():
     parser = argparse.ArgumentParser(description = 'Script which join \
-- 
GitLab


From 814ddf913907a68b4e7a81de0d74521aebfa1b5e Mon Sep 17 00:00:00 2001
From: Vincent Darbot <vincent.darbot@inrae.fr>
Date: Sat, 14 Jan 2023 11:59:02 +0100
Subject: [PATCH 177/194] IN PROGRESS: circular contigs

---
 bin/retrieve_circular_contigs.py | 61 ++++++++++++++++++++++++++++++++
 subworkflows/02_assembly.nf      |  3 +-
 2 files changed, 62 insertions(+), 2 deletions(-)
 create mode 100755 bin/retrieve_circular_contigs.py

diff --git a/bin/retrieve_circular_contigs.py b/bin/retrieve_circular_contigs.py
new file mode 100755
index 0000000..565190f
--- /dev/null
+++ b/bin/retrieve_circular_contigs.py
@@ -0,0 +1,61 @@
+#!/usr/bin/env python3
+
+## Imports
+from Bio import SeqIO
+import pandas as pd
+import argparse
+
+## Functions
+
+def parse_metaflye(input_fasta, info_file, circular_fasta):
+    """
+    metaflye fasta contains no information.
+    This is contained in the assembly_info.txt file.
+    """
+    df = pd.read_csv(info_file, sep='\t')
+    # this file may have changed symbols for yes, possibilities include a Y or +
+    circular_contigs = list(df[df['circ.'].isin(['Y', '+'])]["#seq_name"])
+
+    with open(circular_fasta, 'wt') as fh_out:
+        for rec in SeqIO.parse(input_fasta, "fasta"):
+            if rec.id in circular_contigs:
+                fh_out.write(rec.format("fasta"))
+
+def parse_hifiasm(input_fasta, circular_fasta):
+    """
+    hifiasm-meta circular contig names will have an "c" suffix.
+    """
+    with open(circular_fasta, 'wt') as fh_out:
+       for rec in SeqIO.parse(input_fasta, "fasta"):
+            if rec.id.endswith('c'):
+                fh_out.write(rec.format("fasta"))
+
+def main():
+    # Manage parameters
+    parser = argparse.ArgumentParser( description='Retrieve circular contigs from long-reads assemblies.')
+    # Inputs
+    group_input = parser.add_argument_group( 'Inputs' )
+    group_input.add_argument('-a', '--assembler', required=True, choices=['metaflye', 'hifiasm-meta'], help='Assembler where the assemblies come from.')
+    group_input.add_argument('-f', '--input-fasta', required=True, help='The path of assembly fasta file.')
+    
+    group_input_otu_table = parser.add_argument_group( ' Metaflye ' )
+    group_input_otu_table.add_argument('-i','--info-file', default=None, help="The path of metaflye asembly info file.")
+    # output
+    group_output = parser.add_argument_group( 'Outputs' )
+    group_output.add_argument('-o','--output-fasta', default='circular_contigs.fna', help="The path of circular contigs fasta file. [Default: %(default)s]" )
+
+    args = parser.parse_args()
+
+    # Check for inputs
+    if args.assembler == "metaflye":
+        if args.info_file is None:
+            parser.error("\n\n#ERROR : --info-file is required with metaflye assembler.")
+        else:
+            parse_metaflye(args.input_fasta, args.info_file, args.output_fasta)
+
+    elif args.assembler == "hifiasm-meta":
+        parse_hifiasm(args.input_fasta, args.output_fasta)
+
+
+if __name__ == '__main__':
+    main()
\ No newline at end of file
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index ba94a90..b53a0d3 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -129,8 +129,7 @@ workflow STEP_02_ASSEMBLY {
                         .collect()
 
     if ( params.type.toUpperCase() == "HIFI" ) {
-
-      CIRCULAR_CONTIGS(assembly_tool, ch_reads_assembly, ch_infos)
+      CIRCULAR_CONTIGS(assembly_tool, ch_assembly_renamed, ch_infos)
       ch_circular = CIRCULAR_CONTIGS.out.circular
 
     }
-- 
GitLab


From fd55b25067532381419f86a9c3d58546c2d66c61 Mon Sep 17 00:00:00 2001
From: Maina Vienne <maina.vienne@inrae.fr>
Date: Mon, 16 Jan 2023 16:30:43 +0100
Subject: [PATCH 178/194] Replace metawrap bin_refinement with binette

---
 README.md                                     |   2 +-
 ...tawrap_stat.py => add_info_to_bin_stat.py} |   6 +-
 bin/bin_refinement.sh                         | 549 ------------------
 bin/metawrap/add_metrics_to_checkm.py         | 134 -----
 bin/metawrap/binning_refiner.py               | 269 ---------
 .../consolidate_multiple_bins_sets.py         | 260 ---------
 bin/metawrap/dereplicate_contigs.py           |  74 ---
 bin/metawrap/dereplicate_contigs_in_bins.py   | 150 -----
 bin/metawrap/get_contig_length.py             |  73 ---
 bin/metawrap/plot_binning_results.py          | 246 --------
 bin/metawrap/print_comment.py                 |  36 --
 .../setup_indermediate_checkm2_files.py       | 171 ------
 conf/base.config                              |   2 +-
 conf/test.config                              |   2 +-
 docs/output.md                                |   2 +-
 env/Singularity_recipe_binning                |  18 +-
 env/binning.yml                               |  21 +-
 modules/binning.nf                            |  35 +-
 modules/checkm2.nf                            |   2 +-
 modules/get_db_versions.nf                    |   2 +-
 modules/sum_up_bins_informations.nf           |   2 +-
 subworkflows/08_binning.nf                    |  82 +--
 22 files changed, 83 insertions(+), 2055 deletions(-)
 rename bin/{add_info_to_metawrap_stat.py => add_info_to_bin_stat.py} (96%)
 delete mode 100755 bin/bin_refinement.sh
 delete mode 100755 bin/metawrap/add_metrics_to_checkm.py
 delete mode 100755 bin/metawrap/binning_refiner.py
 delete mode 100755 bin/metawrap/consolidate_multiple_bins_sets.py
 delete mode 100755 bin/metawrap/dereplicate_contigs.py
 delete mode 100755 bin/metawrap/dereplicate_contigs_in_bins.py
 delete mode 100755 bin/metawrap/get_contig_length.py
 delete mode 100755 bin/metawrap/plot_binning_results.py
 delete mode 100755 bin/metawrap/print_comment.py
 delete mode 100644 bin/metawrap/setup_indermediate_checkm2_files.py

diff --git a/README.md b/README.md
index 1a3736b..b15d396 100644
--- a/README.md
+++ b/README.md
@@ -41,7 +41,7 @@ Many of these steps are optional and their necessity depends on the desired anal
 ![](docs/08_binning.png)
    * aligns reads samples against assemblies (according to the strategy used) ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2))
    * performs metagenome binning ([METABAT2](https://bitbucket.org/berkeleylab/metabat/src/master/) + [MAXBIN2](https://sourceforge.net/projects/maxbin/) + [CONCOCT](https://github.com/BinPro/CONCOCT))
-   * refines bin sets ([bin_refinement.sh](bin/bin_refinement.sh) adapt from [METAWRAP](https://github.com/bxlab/metaWRAP) bin_refinement)
+   * refines bin sets ([BINETTE](https://forgemia.inra.fr/jean.mainguy/binette/))
    * dereplicates bins between samples ([DREP](https://github.com/MrOlm/drep))
    * taxonomically affiliates the bins ([GTDBTK](https://github.com/Ecogenomics/GTDBTk))
    * calculates bins abundances between samples ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2) + [SAMTOOLS](http://www.htslib.org/))
diff --git a/bin/add_info_to_metawrap_stat.py b/bin/add_info_to_bin_stat.py
similarity index 96%
rename from bin/add_info_to_metawrap_stat.py
rename to bin/add_info_to_bin_stat.py
index 3e6ff74..5389c9d 100755
--- a/bin/add_info_to_metawrap_stat.py
+++ b/bin/add_info_to_bin_stat.py
@@ -32,7 +32,7 @@ def parse_arguments():
                             formatter_class=ArgumentDefaultsHelpFormatter)
 
     parser.add_argument('-s', '--bins_stat', required=True, help="Bins stat file.")
-    parser.add_argument('-q', '--quast_report', required=True, help="Bins stat file.")
+    parser.add_argument('-q', '--quast_report', required=True, help="Quast report.")
 
     parser.add_argument('-o', '--output_file', type=str,
                         default="bins_stat_and_quality.tsv", 
@@ -90,8 +90,8 @@ def main():
     df.loc['Not_binned', "Quality"] = 'Not-binned'
     df.loc['Not_binned', "genome"] = 'Not_binned'
     
-    # remove checkm2 specific columns 
-    df = df.drop(['Completeness_Model_Used', 'Additional_Notes'], axis=1)
+    # # remove checkm2 specific columns 
+    # df = df.drop(['Completeness_Model_Used', 'Additional_Notes'], axis=1)
 
     # Writting out table
     df.to_csv(args.output_file, sep="\t", index=False)
diff --git a/bin/bin_refinement.sh b/bin/bin_refinement.sh
deleted file mode 100755
index 66eb7a5..0000000
--- a/bin/bin_refinement.sh
+++ /dev/null
@@ -1,549 +0,0 @@
-#!/usr/bin/env bash
-
-##############################################################################################################################################################
-#
-# This script is a reimplementation of metaWRAP bin_refinement script.
-# 
-# We thank the author of the orginal metawrap: German Uritskiy.
-# Check metaWRAP github: https://github.com/bxlab/metaWRAP
-# 
-##############################################################################################################################################################
-
-
-help_message () {
-	echo ""
-	echo "Usage: metaWRAP bin_refinement [options] -o output_dir -A bin_folderA [-B bin_folderB -C bin_folderC]"
-	echo "Note: the contig names in different bin folders must be consistant (must come from the same assembly)."
-	echo ""
-	echo "Options:"
-	echo ""
-	echo "	-o STR          output directory"
-	echo "	-t INT          number of threads (default=1)"
-	echo "	-m INT			memory available (default=40)"
-	echo "	-c INT          minimum % completion of bins. (default=50)"
-	echo "	-x INT          maximum % contamination of bins that is acceptable (default=10)"
-	echo ""
-	echo "	-A STR		folder with metagenomic bins (files must have .fa or .fasta extension)"
-	echo "	-B STR		another folder with metagenomic bins"
-	echo "	-C STR		another folder with metagenomic bins" 
-	echo ""
-	echo "	--skip-refinement	dont use binning_refiner to come up with refined bins based on combinations of binner outputs"
-	echo "	--skip-checkm		dont run CheckM to assess bins"
-	echo "	--skip-consolidation	choose the best version of each bin from all bin refinement iteration"
-	echo "	--keep-ambiguous	for contigs that end up in more than one bin, keep them in all bins (default: keeps them only in the best bin)"
-	echo "	--remove-ambiguous	for contigs that end up in more than one bin, remove them in all bins (default: keeps them only in the best bin)"
-	echo "";}
-
-comm () { ${SOFT}/print_comment.py "$1" "-"; }
-error () { ${SOFT}/print_comment.py "$1" "*"; exit 1; }
-warning () { ${SOFT}/print_comment.py "$1" "*"; }
-announcement () { ${SOFT}/print_comment.py "$1" "#"; }
-
-# makes checkm plot on a folder of bins if run_checkm has already been run
-plot_checkm () {
-	comm "Making CheckM plot of $1 bins"
-	checkm bin_qa_plot -x fa ${1}.checkm $1 ${1}.plot
-	if [[ ! -s ${1}.plot/bin_qa_plot.png ]]; then warning "Something went wrong with making the CheckM plot. Exiting."; fi
-	mv ${1}.plot/bin_qa_plot.png ${1}.png
-	rm -r ${1}.plot
-}
-
-
-########################################################################################################
-########################               LOADING IN THE PARAMETERS                ########################
-########################################################################################################
-
-
-# setting scripts and databases from config file (should be in same folder as main script)
-# config_file=$(which config-metawrap)
-# source $config_file
-SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
-SOFT=$SCRIPT_DIR/metawrap/
-# mw_path=$(which bin_refinement.sh)
-# SOFT=${mw_path%/*}
-
-# default params
-threads=1; mem=40; out="false"; comp=70; cont=10; x=10; c=70; 
-bins1=None; bins2=None; bins3=None
-# long options defaults
-run_checkm=true; refine=true; cherry_pick=true; dereplicate=partial
-
-# load in params
-OPTS=`getopt -o ht:m:o:x:c:A:B:C: --long help,skip-checkm,skip-refinement,skip-consolidation,keep-ambiguous,remove-ambiguous -- "$@"`
-# make sure the params are entered correctly
-if [ $? -ne 0 ]; then help_message; exit 1; fi
-
-# loop through input params
-while true; do
-        case "$1" in
-                -t) threads=$2; shift 2;;
-		-m) mem=$2; shift 2;;
-                -o) out=$2; shift 2;;
-		-x) cont=$2; shift 2;;
-		-c) comp=$2; shift 2;;
-		-A) bins1=$2; shift 2;;
-		-B) bins2=$2; shift 2;;
-		-C) bins3=$2; shift 2;;
-                -h | --help) help_message; exit 0; shift 1;;
-		--skip-checkm) run_checkm=false; shift 1;;
-		--skip-refinement) refine=false; shift 1;;
-		--skip-consolidation) cherry_pick=false; shift 1;;
-		--keep-ambiguous) dereplicate=false; shift 1;;
-		--remove-ambiguous) dereplicate=complete; shift 1;;
-                --) help_message; exit 1; shift; break ;;
-                *) break;;
-        esac
-done
-
-########################################################################################################
-########################           MAKING SURE EVERYTHING IS SET UP             ########################
-########################################################################################################
-
-# check if all parameters are entered
-if [[ $out == false ]] || [[  $bins1 == false ]] ; then 
-	comm "Non-optional parameters -o and/or -A were not entered"
-	help_message; exit 1
-fi
-
-# Checks SOFT variable 
-if [ ! -d $SOFT ]; then
-	error "The folder $SOFT doesnt exist."
-fi
-
-# determine --pplacer_threads count. It is either the max thread count or RAM/40, whichever is higher
-ram_max=$(($mem / 40))
-if (( $ram_max < $threads )); then
-	p_threads=$ram_max
-else
-	p_threads=$threads
-fi
-
-comm "There is $mem RAM and $threads threads available, and each pplacer thread uses >40GB, so I will use $p_threads threads for pplacer"
-
-
-########################################################################################################
-########################               BEGIN REFINEMENT PIPELINE!               ########################
-########################################################################################################
-announcement "BEGIN PIPELINE!"
-comm "setting up output folder and copying over bins..."
-if [[ ! -d $out ]]; then
-        mkdir $out
-	if [[ ! -d $out ]]; then error "cannot make $out"; fi
-else
-        warning "Warning: $out already exists. Attempting to clean."
-	rm -r ${out}/binsA
-	rm -r ${out}/binsB
-	rm -r ${out}/binsC
-	rm -r ${out}/binsAB
-	rm -r ${out}/binsBC
-	rm -r ${out}/binsAC
-	rm -r ${out}/binsABC
-	rm ${out}/bin.*
-fi
-
-
-n_binnings=0
-if [[ -d $bins1 ]]; then 
-	mkdir ${out}/binsA
-	for F in ${bins1}/*; do
-		SIZE=$(stat -c%s "$F")
-		if (( $SIZE > 50000)) && (( $SIZE < 20000000)); then 
-			BASE=${F##*/}
-			cp $F ${out}/binsA/${BASE%.*}.fa
-		else 
-			echo "Skipping $F because the bin size is not between 50kb and 20Mb"
-		fi
-	done
-	n_binnings=$((n_binnings +1))
-	comm "there are $(ls ${out}/binsA | wc -l) bins in binsA"
-	if [[ $(ls ${out}/binsA | wc -l) -eq 0 ]]; then error "Please provide valid input. Exiting..."; fi
-else
-	error "$bins1 is not a valid directory. Exiting."
-fi
-
-if [[ -d $bins2 ]]; then 
-	mkdir ${out}/binsB
-	for F in ${bins2}/*; do
-		SIZE=$(stat -c%s "$F")
-		if (( $SIZE > 50000)) && (( $SIZE < 20000000)); then 
-			BASE=${F##*/}
-			cp $F ${out}/binsB/${BASE%.*}.fa
-		else 
-			echo "Skipping $F because the bin size is not between 50kb and 20Mb"
-		fi
-        done
-	n_binnings=$((n_binnings +1))
-	comm "there are $(ls ${out}/binsB | wc -l) bins in binsB"
-	if [[ $(ls ${out}/binsB | wc -l) -eq 0 ]]; then error "Please provide valid input. Exiting..."; fi
-fi
-
-if [[ -d $bins3 ]]; then 
-	mkdir ${out}/binsC
-	for F in ${bins3}/*; do
-		SIZE=$(stat -c%s "$F")
-		if (( $SIZE > 50000)) && (( $SIZE < 20000000)); then 
-			BASE=${F##*/}
-			cp $F ${out}/binsC/${BASE%.*}.fa
-		else 
-			echo "Skipping $F because the bin size is not between 50kb and 20Mb"
-		fi
-        done
-	n_binnings=$((n_binnings +1))
-	comm "there are $(ls ${out}/binsC | wc -l) bins in binsC"
-	if [[ $(ls ${out}/binsC | wc -l) -eq 0 ]]; then error "Please provide valid input. Exiting..."; fi
-fi
-
-comm "There are $n_binnings bin sets!"
-
-comm "Get all contig length..."
-${SOFT}/get_contig_length.py --seq_dirs ${out}/bins*  -v -x 'fa' -o ${out}/contig_to_length.tsv
-
-
-# I have to switch directories here - Binning_refiner dumps everything into the current dir"
-home=$(pwd)
-cd $out
-
-if [ "$refine" == "true" ] && [[ ! -s work_files/binsA.stats ]]; then
-	announcement "BEGIN BIN REFINEMENT"	
-	if [[ $n_binnings -eq 1 ]]; then
-		comm "There is only one bin folder, so no refinement of bins possible. Moving on..."
-	elif [[ $n_binnings -eq 2 ]]; then
-		comm "There are two bin folders, so we can consolidate them into a third, more refined bin set."
-		${SOFT}/binning_refiner.py -i binsA binsB -o Refined_AB
-		comm "there are $(ls Refined_AB/refined_bins | grep ".fa" | wc -l) refined bins in binsAB"
-		mv Refined_AB/refined_bins binsAB
-		if [[ $? -ne 0 ]]; then error "Bin_refiner did not finish correctly. Exiting..."; fi
-		rm -r Refined_AB
-	elif [[ $n_binnings -eq 3 ]]; then
-		comm "There are three bin folders, so there 4 ways we can refine the bins (A+B, B+C, A+C, A+B+C). Will try all four in parallel!"
-		
-		${SOFT}/binning_refiner.py -i binsA binsB binsC -o Refined_ABC &
-		${SOFT}/binning_refiner.py -i binsA binsB -o Refined_AB &
-		${SOFT}/binning_refiner.py -i binsB binsC  -o Refined_BC &
-		${SOFT}/binning_refiner.py -i binsA binsC -o Refined_AC &
-		
-		wait
-	
-		comm "there are $(ls Refined_AB/refined_bins | grep ".fa" | wc -l) refined bins in binsAB"
-		comm "there are $(ls Refined_BC/refined_bins | grep ".fa" | wc -l) refined bins in binsBC"
-		comm "there are $(ls Refined_AC/refined_bins | grep ".fa" | wc -l) refined bins in binsAC"
-		comm "there are $(ls Refined_ABC/refined_bins | grep ".fa" | wc -l) refined bins in binsABC"
-
-		
-
-		mv Refined_ABC/refined_bins binsABC
-		if [[ $? -ne 0 ]]; then error "Bin_refiner did not finish correctly with A+B+C. Exiting..."; fi
-		rm -r Refined_ABC
-		
-		mv Refined_AB/refined_bins binsAB
-		if [[ $? -ne 0 ]]; then error "Bin_refiner did not finish correctly with A+B. Exiting..."; fi
-		rm -r Refined_AB
-	
-		mv Refined_BC/refined_bins binsBC
-		if [[ $? -ne 0 ]]; then error "Bin_refiner did not finish correctly with B+C. Exiting..."; fi
-		rm -r Refined_BC
-		
-		mv Refined_AC/refined_bins binsAC
-		if [[ $? -ne 0 ]]; then error "Bin_refiner did not finish correctly with A+C. Exiting..."; fi
-		rm -r Refined_AC
-	else
-		error "Something is off here - somehow there are not 1, 2, or 3 bin folders ($n_binnings)"
-	fi
-	comm "Bin refinement finished successfully!"
-elif [ "$refine" == "true" ] && [[ -s work_files/binsM.stats ]]; then
-	comm "Previous bin refinment files found. If this was not intended, please re-run with a clear output directory. Skipping refinement..."
-else
-	comm "Skipping bin refinement. Will proceed with the $n_binnings bins specified."
-fi
-	
-comm "fixing bin naming to .fa convention for consistancy..."
-for i in $(ls); do 
-	for j in $(ls $i | grep .fasta); do 
-		mv ${i}/${j} ${i}/${j%.*}.fa
-	done
-done
-
-comm "making sure every refined bin set contains bins..."
-for bin_set in $(ls | grep bins); do 
-	if [[ $(ls $bin_set|grep -c fa) == 0 ]]; then
-		comm "Removing bin set $bin_set because it yielded 0 refined bins ... "
-		rm -r $bin_set
-	fi
-done
-
-
-########################################################################################################
-########################              RUN CHECKM ON ALL BIN SETS                ########################
-########################################################################################################
-if [ "$run_checkm" == "true" ] && [[ ! -s work_files/binsM.stats ]]; then
-	announcement "RUNNING CHECKM ON ALL SETS OF BINS"
-
-
-	out_checkM2_tmp="checkm2_tmp_results/"
-	mkdir -p $out_checkM2_tmp
-	comm "Dereplicate and concat all contigs."
-	bin_sets=$(ls | grep -v tmp | grep -v stats | grep bins)
-	${SOFT}/dereplicate_contigs.py -v  \
-								--seq_dirs $bin_sets \
-								-o ${out_checkM2_tmp}/all_contigs.fna
-
-	
-
-	comm "Launching pprodigal on all contigs"
-
-	# cp ../all_contigs_genes.faa ${out_checkM2_tmp}/all_contigs_genes.faa
-	time pprodigal -T $threads -p meta \
-			-m -f gff \
-			-g 11 -a ${out_checkM2_tmp}/all_contigs_genes.faa \
-			-d ${out_checkM2_tmp}/all_contigs_genes.fna \
-			-i  ${out_checkM2_tmp}/all_contigs.fna > ${out_checkM2_tmp}/all_contigs_genes.gff 
-
-	
-	comm "Launching DIAMOND on all proteins"
-	
-	checkm2_database=$(checkm2 database --current 2>&1 | rev | cut -f1 -d' ' | rev)
-	
-	cp ../DIAMOND_RESULTS.tsv ${out_checkM2_tmp}/DIAMOND_RESULTS.tsv  
-	time diamond blastp --outfmt 6 --max-target-seqs 1 \
-				   --query ${out_checkM2_tmp}/all_contigs_genes.faa \
-				   -o ${out_checkM2_tmp}/DIAMOND_RESULTS.tsv \
-				   --threads $threads --db $checkm2_database \
-				   --query-cover 80 --subject-cover 80 --id 30 \
-				   --evalue 1e-05 --block-size 0.5
-	
-	
-	for bin_set in $(ls | grep -v tmp | grep -v stats | grep bins); do
-
-		
-		if [[ -d ${bin_set}.checkm ]]; then rm -r ${bin_set}.checkm; fi
-		if [[ ! -d ${bin_set}.tmp ]]; then mkdir ${bin_set}.tmp; fi
-
-		comm "Setting up checkm2 output to use resume flag."
-
-		python ${SOFT}/setup_indermediate_checkm2_files.py -b $bin_set \
-														   -d  ${out_checkM2_tmp}/DIAMOND_RESULTS.tsv \
-														   -f ${out_checkM2_tmp}/all_contigs_genes.faa \
-														   -o ${bin_set}.checkm -v 
-		
-		comm "Running CheckM on $bin_set bins with resume flag"
-
-		checkm2 predict -x fa --threads $threads --input $bin_set --output-directory ${bin_set}.checkm --resume 
-		
-
-		if [[ ! -s ${bin_set}.checkm/quality_report.tsv ]]; then error "Something went wrong with running CheckM. Exiting..."; fi
-		
-		${SOFT}/add_metrics_to_checkm.py \
-							--bin_dir ${bin_set} \
-							--contig_to_length_tsv contig_to_length.tsv \
-							--checkm2_result ${bin_set}.checkm/quality_report.tsv \
-							-o ${bin_set}.stats
-
-		if [[ $? -ne 0 ]]; 
-		then 
-			error "Cannot add metrics checkm summary file. Exiting."; 
-		fi
-
-		rm -r ${bin_set}.checkm; rm -r ${bin_set}.tmp
-
-		num=$(cat ${bin_set}.stats | awk -v c="$comp" -v x="$cont" '{if ($2>=c && $2<=100 && $3>=0 && $3<=x) print $1 }' | wc -l)
-		comm "There are $num 'good' bins found in $bin_set! (>${comp}% completion and <${cont}% contamination)"
-	done
-	# cp ../backup_stats/* .
-elif [ "$run_checkm" == "true" ] && [[ -s work_files/binsM.stats ]]; then
-	comm "Previous bin refinement files found. If this was not intended, please re-run with a clear output directory. Skipping CheckM runs..."
-	rm -r bins*
-	cp -r work_files/binsA* ./
-	cp -r work_files/binsB* ./
-	cp -r work_files/binsC* ./
-else
-	comm "Skipping CheckM. Warning: bin consolidation will not be possible."
-fi
-
-########################################################################################################
-########################               CONSOLIDATE ALL BIN SETS                 ########################
-########################################################################################################
-if [ "$cherry_pick" == "true" ]; then
-	announcement "CONSOLIDATING ALL BIN SETS BY CHOOSING THE BEST VERSION OF EACH BIN"
-	if [[ $n_binnings -eq 1 ]]; then
-	        comm "There is only one original bin folder, so no refinement of bins possible. Moving on..."
-		best_bin_set=binsA
-	elif [[ $n_binnings -eq 2 ]] || [[ $n_binnings -eq 3 ]]; then
-		comm "There are $n_binnings original bin folders, plus the refined bins."
-		rm -r binsM binsM.stats
-
-		stats=$(ls | grep .stats | grep -v binsM)
-		bins=$(ls | grep bins | grep -v .stats | grep -v binsM)
-		
-		comm "merging all $bins"
-		echo $bins $stats
-		${SOFT}/consolidate_multiple_bins_sets.py  --bin_dirs $bins --bin_stats $stats \
-												   -l contig_to_length.tsv -v -o binsM \
-												   --min_completeness $comp --max_contamination $cont
-												
-		
-		exitcode=$?
-
-		if [[ exitcode -ne 0 ]]; then 
-			comm "Something went wrong with merging two sets of bins"
-			exit $exitcode;
-
-		fi
-		
-		if [[ $dereplicate == false ]]; then
-			comm "Skipping dereplication of contigs between bins..."
-			mv binsM binsO
-			mv binsM.stats binsO.stats
-		elif [[ $dereplicate == partial ]]; then
-			comm "Scanning to find duplicate contigs between bins and only keep them in the best bin..."
-			${SOFT}/dereplicate_contigs_in_bins.py  --bins_stat binsM.stats  --bin_dir binsM --out_bin_dir binsO -v 
-		elif [[ $dereplicate == complete ]]; then
-			comm "Scanning to find duplicate contigs between bins and deleting them in all bins..."
-			${SOFT}/dereplicate_contigs_in_bins.py  --bins_stat binsM.stats  --bin_dir binsM --out_bin_dir binsO -v --remove
-		else
-			error "there was an error in deciding how to dereplicate contigs"
-		fi
-
-		best_bin_set=binsO
-	else
-		error "Something went wrong with determining the number of bin folders... The number was ${n_binnings}. Exiting."
-	fi
-	
-	
-elif [ "$cherry_pick" == "false" ]; then
-	comm "Skipping bin consolidation. Will try to pick the best binning folder without mixing bins from different sources."
-	if [ $run_checkm = false ]; then 
-		comm "cannot decide on best bin set because CheckM was not run. Will assume its binsA (first bin set)"
-		best_bin_set=binsA
-	elif [ $run_checkm = true ]; then
-		max=0
-		best_bin_set=none
-		for bin_set in $(ls | grep .stats); do
-			num=$(cat $bin_set | awk -v c="$comp" -v x="$cont" '{if ($2>=c && $2<=100 && $3>=0 && $3<=x) print $1 }' | wc -l)
-			comm "There are $num 'good' bins found in ${bin_set%.*}! (>${comp}% completion and <${cont}% contamination)"
-			if [ "$num" -gt "$max" ]; then
-				max=$num
-				best_bin_set=${bin_set%.*}
-			fi
-		done
-		if [[ ! -d $best_bin_set ]]; then error "Something went wrong with deciding on the best bin set. Exiting."; fi
-		comm "looks like the best bin set is $best_bin_set"
-	else
-		error "something is wrong with the run_checkm option (${run_checkm})"
-	fi
-else
-	error "something is wrong with the cherry_pick option (${cherry_pick})"
-fi
-
-comm "You will find the best non-reassembled versions of the bins in $best_bin_set"
-
-
-########################################################################################################
-########################               FINALIZING THE REFINED BINS              ########################
-########################################################################################################
-announcement "FINALIZING THE REFINED BINS"
-
-
-if [ "$run_checkm" == "true" ] && [ $dereplicate != "false" ]; then
-
-	mkdir binsO.tmp
-	comm "Setting up checkm2 output to use resume flag on binsO."
-	
-	python ${SOFT}/setup_indermediate_checkm2_files.py -b binsO \
-													-d  ${out_checkM2_tmp}/DIAMOND_RESULTS.tsv \
-													-f ${out_checkM2_tmp}/all_contigs_genes.faa \
-													-o binsO.checkm -v 
-
-	comm "Re-running CheckM on binsO bins"
-
-	checkm2 predict -x fa --threads $threads --input binsO --output-directory binsO.checkm --resume
-
-	
-	if [[ ! -s binsO.checkm/quality_report.tsv ]]; then error "Something went wrong with running CheckM. Exiting..."; fi
-	rm -r binsO.tmp
-
-	${SOFT}/add_metrics_to_checkm.py \
-								--bin_dir binsO \
-								--contig_to_length_tsv contig_to_length.tsv \
-								--checkm2_result binsO.checkm/quality_report.tsv -o binsO.stats 
-
-	if [[ $? -ne 0 ]]; then error "Cannot make checkm summary file. Exiting."; fi
-	rm -r binsO.checkm
-	num=$(cat binsO.stats | awk -v c="$comp" -v x="$cont" '{if ($2>=c && $2<=100 && $3>=0 && $3<=x) print $1 }' | wc -l)
-	comm "There are $num 'good' bins found in binsO.checkm! (>${comp}% completion and <${cont}% contamination)"
-	
-	comm "Removing bins that are inadequate quality..."
-	for bin_name in $(cat binsO.stats | grep -v compl | awk -v c="$comp" -v x="$cont" '{if ($2<c || $2>100 || $3<0 || $3>x) print $1 }' | cut -f1); do
-		echo "${bin_name} will be removed because it fell below the quality threshhold after de-replication of contigs..."
-		rm binsO/${bin_name}.fa
-	done
-	head -n 1 binsO.stats > binsO.stats.tmp
-	cat binsO.stats | awk -v c="$comp" -v x="$cont" '$2>=c && $2<=100 && $3>=0 && $3<=x' >> binsO.stats.tmp
-	mv binsO.stats.tmp binsO.stats
-	n=$(cat binsO.stats | grep -v comp | wc -l)
-	comm "Re-evaluating bin quality after contig de-replication is complete! There are still $n high quality bins."
-fi
-
-
-if [ "$run_checkm" == "true" ]; then
-	comm "making completion and contamination ranking plots for all refinement iterations"
-	${SOFT}/plot_binning_results.py $comp $cont $(ls | grep ".stats")
-	mkdir figures
-	mv binning_results.png figures/intermediate_binning_results.png
-fi
-
-########################################################################################################
-########################               MOVING OVER TEMPORARY FILES              ########################
-########################################################################################################
-announcement "MOVING OVER TEMPORARY FILES"
-
-if [ "${bins1:$((${#bins1}-1)):1}" = "/" ]; then bins1=${bins1%/*}; fi
-if [ "${bins2:$((${#bins2}-1)):1}" = "/" ]; then bins2=${bins2%/*}; fi
-if [ "${bins3:$((${#bins3}-1)):1}" = "/" ]; then bins3=${bins3%/*}; fi
-
-
-if [[ -s work_files/binsM.stats ]]; then
-	rm -r work_files/bins*
-	rm -r ${bins1##*/}* ${bins2##*/}* ${bins3##*/}*
-fi
-
-if [[ $n_binnings -ne 1 ]]; then
-	mkdir work_files
-	for f in binsA* binsB* binsC* binsM* binsO*; do
-		mv $f work_files/
-	done
-fi
-
-
-cp -r work_files/binsO metawrap_${comp}_${cont}_bins
-cp work_files/binsO.stats metawrap_${comp}_${cont}_bins.stats
-
-cp -r work_files/binsA ${bins1##*/}
-cp work_files/binsA.stats ${bins1##*/}.stats
-
-cp -r work_files/binsB ${bins2##*/}
-cp work_files/binsB.stats ${bins2##*/}.stats
-
-if [[ $n_binnings -eq 3 ]]; then
-	cp -r work_files/binsC ${bins3##*/}
-	cp work_files/binsC.stats ${bins3##*/}.stats
-fi
-
-
-if [ "$run_checkm" == "true" ]; then
-        comm "making completion and contamination ranking plots of final outputs"
-        ${SOFT}/plot_binning_results.py $comp $cont $(ls | grep ".stats")
-	mv binning_results.png figures/binning_results.png
-	
-	comm "making contig membership files (for Anvio and other applications)"
-	for dir in *_bins; do
-		echo "summarizing $dir ..."
-		for i in ${dir}/*.fa; do f=${i##*/}; for c in $(cat $i | grep ">"); do echo -e "${c##*>}\t${f%.*}"; done; done > ${dir}.contigs
-	done
-fi
-
-cd $home
-
-########################################################################################################
-########################     BIN_REFINEMENT PIPELINE SUCCESSFULLY FINISHED!!!   ########################
-########################################################################################################
-announcement "BIN_REFINEMENT PIPELINE FINISHED SUCCESSFULLY!"
\ No newline at end of file
diff --git a/bin/metawrap/add_metrics_to_checkm.py b/bin/metawrap/add_metrics_to_checkm.py
deleted file mode 100755
index ca4e8fa..0000000
--- a/bin/metawrap/add_metrics_to_checkm.py
+++ /dev/null
@@ -1,134 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-Add N50 and size of bins to checkm2 results. 
-
-:Example:
-add_metrics_to_checkm.py -h
-"""
-
-# Metadata
-__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2022 INRAE'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-
-from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import logging
-from Bio import SeqIO
-import os
-import pandas as pd
-
-
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(description="...",
-                            formatter_class=ArgumentDefaultsHelpFormatter)
-
-    parser.add_argument("-r", '--checkm2_result', required=True, help="result file made by checkm2.")
-    parser.add_argument("-l", '--contig_to_length_tsv', required=True, help="Contig to length file.")
-    parser.add_argument("-b", '--bin_dir', required=True, help="Bin set directory.")
-    
-    parser.add_argument("-o", "--outfile", default='checkm2_result_with_metrics.tsv' )
-    parser.add_argument('-x', '--extension', help='Extension of input files. [Default: .fa]', default='.fa')
-
-    parser.add_argument("-v", "--verbose", help="increase output verbosity",
-                        action="store_true")
-
-    args = parser.parse_args()
-    return args
-
-
-def compute_N50(list_of_lengths):
-    """Calculate N50 for a sequence of numbers.
-
-    Args:
-        list_of_lengths (list): List of numbers.
-
-    Returns:
-        int: N50 value.
-
-    """
-
-    list_of_lengths = sorted(list_of_lengths)
-
-    sum_len = sum(list_of_lengths)
-
-    cum_length = 0
-    for length in list_of_lengths:
-        if cum_length + length >= sum_len/2:
-            return length
-        cum_length += length
-    return length
-
-
-def get_bin_composition(fasta_bins):
-
-    bin2contigs = {}
-
-    for seq_file in fasta_bins:
-        bin2contigs['.'.join(os.path.basename(seq_file).split('.')[:-1])] = [record.id for record in SeqIO.parse(seq_file, "fasta")]
-
-    return bin2contigs
-
-
-def get_bin_N50(bin_id, bin2contigs, df_len):
-    contigs = bin2contigs[(str(bin_id))]
-    lengths = df_len.loc[contigs, "length"]
-    return compute_N50(lengths)
-
-
-def get_bin_size(bin_id, bin2contigs, df_len):
-    contigs = bin2contigs[(str(bin_id))]
-    return df_len.loc[contigs, "length"].sum()
-
-
-def main():
-
-    args = parse_arguments()
-
-    if args.verbose:
-        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
-        logging.info('Mode verbose ON')
-
-    else:
-        logging.basicConfig(format="%(levelname)s: %(message)s")
-    
-    
-    contig_to_length_tsv = args.contig_to_length_tsv
-    bin_dir = args.bin_dir
-    fasta_extension = args.extension
-
-    checkm2_result = args.checkm2_result
-
-    logging.info(f"Parsing {contig_to_length_tsv}.")
-
-    df_len = pd.read_csv(contig_to_length_tsv, sep="\t", index_col="seqid")
-
-    logging.info("Get bin composition by parsing bin fasta files.")
-
-    bin_files = [os.path.join(bin_dir, seq_file) for seq_file in os.listdir(bin_dir) if seq_file.endswith(fasta_extension)]
-
-    bin2contigs = get_bin_composition(bin_files)
-
-    logging.info("Parse checkM2 results")
-    df_checkm = pd.read_csv(checkm2_result, sep="\t")
-
-    df_checkm["N50"] = df_checkm["Name"].apply(
-        lambda x: get_bin_N50(x, bin2contigs, df_len)
-    )
-    df_checkm["Size"] = df_checkm["Name"].apply(
-        lambda x: get_bin_size(x, bin2contigs, df_len)
-    )
-
-    # metawrap identifies header with completeness in lower case
-    df_checkm = df_checkm.rename(columns={"Name":"genome", "Completeness": "completeness", "Contamination": "contamination"})
-
-    df_checkm.to_csv(args.outfile, sep="\t", index=False)
-
-
-if __name__ == "__main__":
-    main()
diff --git a/bin/metawrap/binning_refiner.py b/bin/metawrap/binning_refiner.py
deleted file mode 100755
index fdf255f..0000000
--- a/bin/metawrap/binning_refiner.py
+++ /dev/null
@@ -1,269 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-This script version 1.4.0 (2019-04-19) has been taken from https://github.com/songweizhi/Binning_refiner.
-
-"""
-
-
-# Copyright (C) 2017, Weizhi Song, Torsten Thomas.
-# songwz03@gmail.com or t.thomas@unsw.edu.au
-
-# Binning_refiner is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Affero General Public License as published by
-# the Free Software Foundation, either version 3 of the License, or
-# (at your option) any later version.
-
-# Binning_refiner is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-# GNU Affero General Public License for more details.
-
-# You should have received a copy of the GNU Affero General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-import os
-import shutil
-import argparse
-from Bio import SeqIO
-from datetime import datetime
-import sys
-
-
-def force_create_folder(folder_to_create):
-    if os.path.isdir(folder_to_create):
-        shutil.rmtree(folder_to_create, ignore_errors=True)
-        if os.path.isdir(folder_to_create):
-            shutil.rmtree(folder_to_create, ignore_errors=True)
-            if os.path.isdir(folder_to_create):
-                shutil.rmtree(folder_to_create, ignore_errors=True)
-                if os.path.isdir(folder_to_create):
-                    shutil.rmtree(folder_to_create, ignore_errors=True)
-    os.mkdir(folder_to_create)
-
-
-def get_no_hidden_folder_list(wd):
-
-    folder_list = []
-    for each_folder in os.listdir(wd):
-        if not each_folder.startswith('.'):
-            folder_list.append(each_folder)
-
-    folder_list_sorte = sorted(folder_list)
-
-    return folder_list_sorte
-
-
-######################################## CONFIGURATION #######################################
-
-parser = argparse.ArgumentParser()
-
-parser.add_argument('-i',       required=True,  nargs='+',  help='input bin folders')
-parser.add_argument('-o',       required=False, default='Refined_results',      help='output directory, default: Refined_results')
-parser.add_argument('-m',       required=False, default=512,  type=int, help='minimal size (Kbp) of refined bin, default: 512')
-parser.add_argument("-s",       help="Write stats files on refined bins.", action="store_true")
-parser.add_argument('-q',       required=False, default=False,          help='silent progress report')
-
-args = vars(parser.parse_args())
-
-pwd_bin_subfolders =      args['i']
-output_dir =     args['o']
-minBin_size_Kbp =       args['m']
-keep_quiet =            args['q']
-write_stat_files =  args['s']
-
-################################### define output filename ###################################
-
-pwd_report_file_sources_and_length = os.path.join(output_dir, 'sources_and_length.txt')
-pwd_report_file_contigs = os.path.join(output_dir, 'contigs.txt')
-pwd_report_file_for_sankey = os.path.join(output_dir, 'sankey.txt')
-pwd_output_bin_folder = os.path.join(output_dir, 'refined_bins')
-
-force_create_folder(output_dir)
-force_create_folder(pwd_output_bin_folder)
-
-time_format = '[%Y-%m-%d %H:%M:%S]'
-
-
-################################### precheck of input files ##################################
-
-for pwd_bin_subfolder in pwd_bin_subfolders:
-
-    bin_subfolder = os.path.basename(pwd_bin_subfolder)
-
-    # get bin file list in each input bin subfolder
-    bin_file_list = get_no_hidden_folder_list(pwd_bin_subfolder)
-
-    bin_ext_list = set()
-    for each_bin in bin_file_list:
-        each_bin_ext = each_bin.split('.')[-1]
-        bin_ext_list.add(each_bin_ext)
-
-    if len(bin_ext_list) > 1:
-        print('Program exited, please make sure all bins within %s folder have the same extension' % bin_subfolder, file=sys.stderr)
-        exit(1)
-
-
-##################################### refine input bins ######################################
-
-# progress report
-if keep_quiet is False:
-    print('%s Processing %s input bin folders' % ((datetime.now().strftime(time_format)), len(pwd_bin_subfolders)))
-
-ctg_length_dict = {}
-ctg_to_bin_dict = {}
-for pwd_bin_subfolder in pwd_bin_subfolders:
-
-    bin_subfolder = os.path.basename(pwd_bin_subfolder)
-
-    # get bin file list in each input bin subfolder
-    bin_file_list = get_no_hidden_folder_list(pwd_bin_subfolder)
-    
-
-    # progress report
-    if keep_quiet is False:
-        print('%s Read in %s %s bins' % ((datetime.now().strftime(time_format)), len(bin_file_list), bin_subfolder))
-
-
-    for each_bin in bin_file_list:
-        pwd_each_bin = os.path.join(pwd_bin_subfolder, each_bin)
-
-        for each_seq in SeqIO.parse(pwd_each_bin, 'fasta'):
-            each_seq_id = str(each_seq.id)
-            each_seq_len = len(each_seq.seq)
-
-            # store contig length into dict
-            if each_seq_id not in ctg_length_dict:
-                ctg_length_dict[each_seq_id] = each_seq_len
-
-            # store contig to bin info into dict
-            if each_seq_id not in ctg_to_bin_dict:
-                ctg_to_bin_dict[each_seq_id] = [each_bin]
-            else:
-                ctg_to_bin_dict[each_seq_id].append(each_bin)
-
-
-# progress report
-if keep_quiet is False:
-    print('%s Refine input bins' % (datetime.now().strftime(time_format)))
-
-
-# only keep contigs existed in all bin sets
-ctg_to_bin_dict_shared = {}
-for each_ctg in ctg_to_bin_dict:
-    if len(ctg_to_bin_dict[each_ctg]) == len(pwd_bin_subfolders):
-        ctg_to_bin_dict_shared[each_ctg] = '___'.join(ctg_to_bin_dict[each_ctg])
-
-
-# get concatenated_bins_to_ctg_dict
-concatenated_bins_to_ctg_dict = {}
-concatenated_bins_length_dict = {}
-for each_shared_ctg in ctg_to_bin_dict_shared:
-
-    concatenated_bins = ctg_to_bin_dict_shared[each_shared_ctg]
-
-    if concatenated_bins not in concatenated_bins_to_ctg_dict:
-        concatenated_bins_to_ctg_dict[concatenated_bins] = [each_shared_ctg]
-        concatenated_bins_length_dict[concatenated_bins] = ctg_length_dict[each_shared_ctg]
-    else:
-        concatenated_bins_to_ctg_dict[concatenated_bins].append(each_shared_ctg)
-        concatenated_bins_length_dict[concatenated_bins] += ctg_length_dict[each_shared_ctg]
-
-
-# remove short length
-concatenated_bins_to_ctg_dict_short_removed = {}
-concatenated_bins_length_dict_short_removed = {}
-maximum_length = 0
-for concatenated_bins in concatenated_bins_length_dict:
-    concatenated_bins_length = concatenated_bins_length_dict[concatenated_bins]
-    if concatenated_bins_length >= minBin_size_Kbp * 1024:
-        concatenated_bins_to_ctg_dict_short_removed[concatenated_bins] = concatenated_bins_to_ctg_dict[concatenated_bins]
-        concatenated_bins_length_dict_short_removed[concatenated_bins] = concatenated_bins_length_dict[concatenated_bins]
-
-        if concatenated_bins_length_dict[concatenated_bins] > maximum_length:
-            maximum_length = concatenated_bins_length_dict[concatenated_bins]
-
-
-# add leading zero to length
-concatenated_bins_length_dict_short_removed_str = {}
-for each_length in concatenated_bins_length_dict_short_removed:
-    concatenated_bins_length_dict_short_removed_str[each_length] = ("{:0%sd}" % len(str(maximum_length))).format(concatenated_bins_length_dict_short_removed[each_length])
-
-
-concatenated_bins_list = []
-for each_concatenated_bin in concatenated_bins_length_dict_short_removed_str:
-    concatenated_bins_list.append('%s___%s' % (concatenated_bins_length_dict_short_removed_str[each_concatenated_bin], each_concatenated_bin))
-
-
-# sort concatenated_bins
-concatenated_bins_list_sorted = sorted(concatenated_bins_list, reverse=True)
-
-
-# progress report
-if keep_quiet is False:
-    print('%s Got %s refined bins with size larger than %s Kbp' % ((datetime.now().strftime(time_format)), len(concatenated_bins_list_sorted), minBin_size_Kbp))
-
-
-# progress report
-if keep_quiet is False:
-    print('%s %s' % ((datetime.now().strftime(time_format)), 'Extract sequences for refined bins'))
-
-if write_stat_files:
-    # extract sequences and write out report file
-    pwd_report_file_sources_and_length_handle = open(pwd_report_file_sources_and_length, 'w')
-    pwd_report_file_sources_and_length_handle.write('Refined_bin\tSize(Kbp)\tSource\n')
-
-    pwd_report_file_contigs_handle = open(pwd_report_file_contigs, 'w')
-    pwd_report_file_contigs_handle.write('Refined_bin\tContigs\n')
-
-    pwd_report_file_for_sankey_handle = open(pwd_report_file_for_sankey, 'w')
-    pwd_report_file_for_sankey_handle.write('C1,C2,Length_Kbp\n')
-
-refined_bin_index = 1
-for refined_bin in concatenated_bins_list_sorted:
-    refined_bin_id = f"refined_bin{refined_bin_index}"
-
-    refined_bin_split = refined_bin.split('___')
-    pwd_ctg_source = os.path.join(pwd_bin_subfolders[0], refined_bin_split[1])
-    pwd_refined_bin = os.path.join(pwd_output_bin_folder, f"{refined_bin_id}.fasta")
-
-    refined_bin_ctgs = concatenated_bins_to_ctg_dict['___'.join(refined_bin_split[1:])]
-
-    # extract sequences for refined bin
-    with  open(pwd_refined_bin, 'w') as pwd_refined_bin_handle:
-        for each_source_ctg in SeqIO.parse(pwd_ctg_source, 'fasta'):
-            if str(each_source_ctg.id) in refined_bin_ctgs:
-                SeqIO.write(each_source_ctg, pwd_refined_bin_handle, 'fasta')
-
-
-    if write_stat_files:
-
-        refined_bin_source = refined_bin_split[1:]
-
-        # write out sources_and_length file
-        refined_bin_length = concatenated_bins_length_dict_short_removed['___'.join(refined_bin_split[1:])]
-        refined_bin_length_Kbp = float("{0:.2f}".format(refined_bin_length/1024))
-        pwd_report_file_sources_and_length_handle.write('%s\t%s\t%s\n' % (refined_bin_id, refined_bin_length_Kbp, ','.join(refined_bin_source)))
-
-        # write out contig file
-        pwd_report_file_contigs_handle.write('%s\t%s\n' % (refined_bin_id, ','.join(sorted(refined_bin_ctgs))))
-
-        # write out file for sankey plot
-        n = 0
-        while n <= len(refined_bin_source) - 2:
-            pwd_report_file_for_sankey_handle.write('%s\n' % ','.join([refined_bin_source[n], refined_bin_source[n+1], str(refined_bin_length_Kbp)]))
-            n += 1
-
-
-    refined_bin_index += 1
-
-    
-if write_stat_files:
-    pwd_report_file_sources_and_length_handle.close()
-    pwd_report_file_contigs_handle.close()
-    pwd_report_file_for_sankey_handle.close()
-
-
-# progress report
-if keep_quiet is False:
-    print('%s %s' % ((datetime.now().strftime(time_format)), 'Done!'))
diff --git a/bin/metawrap/consolidate_multiple_bins_sets.py b/bin/metawrap/consolidate_multiple_bins_sets.py
deleted file mode 100755
index 460342c..0000000
--- a/bin/metawrap/consolidate_multiple_bins_sets.py
+++ /dev/null
@@ -1,260 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-This script takes multiple folders containing bins from different methods and their metrics files generated by CheckM. 
-Then start by matching corresponding bins in the two first sets based on a minimum of 80% overlap (by length) of the bins and decides which of the two
-bin versions is best in that particular bin, making a new bins set. 
-This new bin set is then used in the same way with the third bins sets.
-
-Then it makes a new folder into which it puts the best version of each bin (changing the naming in
-the process), and also makes a new .stats file which is consistant with the new bin folder.
-
-:Example:
-consolidate_multiple_bins_sets.py --bin_dirs binsA binsAB binsABC --bin_stats binsABC.stats binsAB.stats binsA.stats -l contig_to_length.tsv
-"""
-
-# Metadata
-__author__ = "Mainguy Jean - Plateforme bioinformatique Toulouse"
-__copyright__ = "Copyright (C) 2022 INRAE"
-__license__ = "GNU General Public License"
-__version__ = "0.1"
-__email__ = "support.bioinfo.genotoul@inra.fr"
-__status__ = "dev"
-
-
-from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import logging
-import os
-import pandas as pd
-from Bio import SeqIO
-from collections import defaultdict
-import shutil
-from functools import reduce
-import sys
-pd.set_option('display.max_rows', 200)
-
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(
-        description="...", formatter_class=ArgumentDefaultsHelpFormatter
-    )
-
-    parser.add_argument("--bin_stats", required=True, nargs="+", 
-                            help="Stat file on bins sets.")
-    parser.add_argument("--bin_dirs", required=True,
-                        nargs="+", help="Directories of bins sets.")
-
-    parser.add_argument("-l", '--contig_to_length_tsv',
-                        required=True, help="Contig to length file.")
-
-    parser.add_argument('-o', "--out_bin", default="consolidated_bins", help="Consolidated final bins set name. Create a directory <out_bin> and a tsv with bins stat <out_bin>.stats")
-
-    parser.add_argument("--min_completeness", default=50, type=int, help="Bin minimum completeness treshold.")
-
-    parser.add_argument("--max_contamination", default=10, type=int, help="Bin maximum contamination threshold.")
-    parser.add_argument("--min_overlap", default=80, type=int, help="Minimum overlap percentage (by length) between two bins to consider them corresponding.")
-
-    parser.add_argument(
-        "-v", "--verbose", help="increase output verbosity", action="store_true"
-    )
-
-    args = parser.parse_args()
-    return args
-
-
-def get_bin_contigs(seqfile):
-    return {record.id for record in SeqIO.parse(seqfile, "fasta")}
-
-
-def get_bin_file(bin_dir, bin_id):
-    bin_file = os.path.join(bin_dir, f"{bin_id}.fa")
-    if not os.path.isfile(bin_file):
-        raise FileNotFoundError(f"Bin file {bin_id}.fa does not exists in {bin_dir}")
-    return bin_file
-
-
-def parse_bin_set_stats(bin_dir, stat_file, min_complet, max_conta):
-    logging.info(f"Parsing {stat_file} and {bin_dir}")
-
-    df = pd.read_csv(stat_file, sep="\t")
-
-    df["genome"] = df["genome"].astype(str)
-
-    df["bin_file"] = df["genome"].apply(lambda x: get_bin_file(bin_dir, x))
-
-    df = df.set_index("bin_file", drop=False)
-
-    # # keep only good bin.
-    good_bin_filt = (df["completeness"] >= min_complet) & (
-        df["contamination"] <= max_conta
-    )
-    df = df.loc[good_bin_filt]
-
-    # score each bin
-
-    df["score"] = df["completeness"] - df["contamination"] * 5
-
-    # get contigs of each bin
-
-    df["contigs"] = df["bin_file"].apply(lambda x: get_bin_contigs(x))
-
-    df['origin'] = bin_dir
-
-    return df
-
-
-def check_input_files_consistency(bin_dirs, stat_files):
-    logging.info("Checking input files consistency.")
-    if len(bin_dirs) != len(stat_files):
-        logging.error(
-            f"Number of bin dirs ({len(bin_dirs)}) and stat files ({len(stat_files)}) given to the script are different."
-        )
-        exit(1)
-
-    bin_name2bin_dir = {
-        os.path.basename(os.path.normpath(bin_dir)): bin_dir for bin_dir in bin_dirs
-    }
-    bin_dir_stat_file_tuples = []
-
-    for stat_file in stat_files:
-
-        bins_set_name = ".".join(os.path.basename(stat_file).split(".")[:-1])
-        try:
-            bin_dir = bin_name2bin_dir[bins_set_name]
-        except KeyError:
-            raise FileNotFoundError(
-                f"Stat file {stat_file} has no matching bin dir. Expecting bin dir basename: {bins_set_name}"
-            )
-
-        if not os.path.isdir(bin_dir):
-            raise FileNotFoundError(f"Bin dir does not exists: {bin_dirs}.")
-
-        bin_dir_stat_file_tuples.append((bin_dir, stat_file))
-
-    return bin_dir_stat_file_tuples
-
-
-def consolidate_two_bins_sets(df_bins_1, df_bins_2, df_len, min_overlap):
-    df_bins_1 = df_bins_1[~df_bins_1.index.duplicated(keep='first')]
-    df_bins_2 = df_bins_2[~df_bins_2.index.duplicated(keep='first')]
-    #logging.info(f"consolidate {set(df_bins_1['origin'])} with {set(df_bins_2['origin'])} ")
-
-    df_bins = pd.concat([df_bins_1, df_bins_2])
-
-    bin_pairs, lonely_bins_2 = get_overlapping_bins(df_bins_1, df_bins_2, df_len, min_overlap )
-
-    selected_bins = []
-    # go through all overlapping bins and chose the best ones
-    for bin_1, bins_2 in bin_pairs.items():
-
-        index_bins = [bin_1] + bins_2
-        if len(bins_2) > 1:
-            logging.info(f"The bin {bin_1} overlap with multiple bins: {bins_2}")
-
-        df_bin_group = df_bins.loc[index_bins]
-
-        selected_bin = df_bin_group.loc[df_bin_group['score'].idxmax()]
-        selected_bins.append(selected_bin)
-        
-
-    selected_bins += [df_bins.loc[bin_file] for bin_file in lonely_bins_2]
-    df_select = pd.DataFrame(selected_bins)
-    return df_select
-
-def get_overlapping_bins(bins_1, bins_2, df_len, min_overlap ):
-
-    bin_pairs = {}
-    set2_paired_bins = set()
-
-    for index1, row1 in bins_1.iterrows():
-        bin_pairs[index1] = []
-        for index2, row2 in bins_2.iterrows():
-
-            shared_contigs = row1['contigs'] & row2['contigs']
-
-            if len(shared_contigs) == 0:
-                 continue
-
-            bin1_size =  df_len.loc[list(row1['contigs']), 'length'].sum()
-            bin2_size =  df_len.loc[list(row2['contigs']), 'length'].sum()
-
-            shared_length = df_len.loc[list(shared_contigs), 'length'].sum()
-
-            # chose the highest % ID, depending of which bin is a subset of the other
-            bin_overlaping_prct = 100 * max([shared_length/bin1_size, shared_length/bin2_size])
-
-            if bin_overlaping_prct >= min_overlap:
-
-                bin_pairs[index1].append(index2)
-
-                set2_paired_bins.add(index2)
-                
-    logging.info(f"There are {len(bins_1)} bins in bins1 and {len(bin_pairs)} of them are pairing with bins_2")
-    
-    logging.info(f"There are  {len(bins_2)} bins in bins2 and {len(set2_paired_bins)} of them  are pairing with bins1")
-
-    lonely_bins_2 = set(bins_2.index) -  set2_paired_bins 
-    return bin_pairs, lonely_bins_2
-
-def main():
-
-    args = parse_arguments()
-
-    if args.verbose:
-        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
-        logging.info("Mode verbose ON")
-
-    else:
-        logging.basicConfig(format="%(levelname)s: %(message)s")
-
-    min_complet = args.min_completeness
-    max_conta =  args.max_contamination
-
-    min_overlap = 80
-
-    contig_to_length_tsv = args.contig_to_length_tsv
-
-    checkm_results = (args.bin_stats)
-    bin_dirs = args.bin_dirs
-
-
-    out_bin = args.out_bin
-    out_bin_stats = f"{out_bin}.stats"
-    os.makedirs(out_bin, exist_ok=True)
-
-    df_len = pd.read_csv(contig_to_length_tsv, sep='\t', index_col="seqid")
-    
-    bin_dir_stat_file_tuples = check_input_files_consistency(bin_dirs, checkm_results)
-
-    logging.info(f'Consolidating {len(bin_dir_stat_file_tuples)} bins sets.')
-
-    df_bins_iter = (
-        parse_bin_set_stats(bin_dir, stat, min_complet, max_conta)
-        for bin_dir, stat in bin_dir_stat_file_tuples
-    )
-
-    final_bins_set_stat = reduce(lambda b1, b2 : consolidate_two_bins_sets(b1, b2, df_len, min_overlap), df_bins_iter)
-    if len(final_bins_set_stat) == 0:
-        logging.warning(f"None of the bins meet minimum completeness and maximun contamination thresholds")
-        sys.exit(255)
-
-    logging.info('Writting final bins set ')
-
-    final_bins_set_stat['genome']  = 'bins.' + final_bins_set_stat.reset_index().index.astype(str)
-    
-    # cleaning bin stat columns
-    final_bins_set_stat = final_bins_set_stat.drop(["bin_file", "score", "contigs"], axis=1)
-    final_bins_set_stat = final_bins_set_stat[~final_bins_set_stat.index.duplicated(keep='first')]
-
-    logging.info(f'Writing final bin set in : {out_bin}')
-    for bin_file in final_bins_set_stat.index:
-
-        new_bin_id =  final_bins_set_stat.loc[bin_file, "genome"]
-        outfile = os.path.join(out_bin, f"{new_bin_id}.fa")
-        shutil.copyfile(bin_file, outfile)
-
-    logging.info(f'Writing final bin set stats: {out_bin_stats}')
-    final_bins_set_stat.to_csv(out_bin_stats, sep="\t", index=False)
-
-if __name__ == "__main__":
-    main()
diff --git a/bin/metawrap/dereplicate_contigs.py b/bin/metawrap/dereplicate_contigs.py
deleted file mode 100755
index 4c497e9..0000000
--- a/bin/metawrap/dereplicate_contigs.py
+++ /dev/null
@@ -1,74 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-From a list of directory of sequences fasta files, get a uniq file containing all sequences once.
-
-:Example:
-python template.py -v
-"""
-
-# Metadata
-__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2022 INRAE'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-
-from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import logging
-from Bio import SeqIO
-import os
-
-
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(description="...",
-                            formatter_class=ArgumentDefaultsHelpFormatter)
-
-    parser.add_argument('--seq_dirs', nargs='+')
-    parser.add_argument("-o", "--outfile", default='uniq_concat_sequences.fasta' )
-    parser.add_argument("-v", "--verbose", help="increase output verbosity",
-                        action="store_true")
-    parser.add_argument('-x', '--extension', help='Extension of input files. [Default: .fa]', default='.fa')
-
-    args = parser.parse_args()
-    return args
-
-
-def main():
-
-    args = parse_arguments()
-
-    if args.verbose:
-        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
-        logging.info('Mode verbose ON')
-
-    else:
-        logging.basicConfig(format="%(levelname)s: %(message)s")
-    
-
-    fasta_extension = args.extension
-
-    all_seq_files = []
-    for seq_dir in args.seq_dirs:
-        all_seq_files += [os.path.join(seq_dir, seq_file) for seq_file in os.listdir(seq_dir) if seq_file.endswith(fasta_extension)]
-    
-    logging.info(f"Found {len(all_seq_files)}  seq files to parse.")
-    
-    seqs_processed = []
-    with open(args.outfile, 'w') as f_out:
-        for seq_file in all_seq_files:
-            
-            with open(seq_file, "r") as handle:
-                for record in SeqIO.parse(handle, "fasta"):
-                    if record.id not in seqs_processed:
-                        
-                        SeqIO.write(record, f_out, "fasta")
-                        seqs_processed.append(record.id)
-
-    logging.info(f'Have written {len(seqs_processed)} uniq sequences in {args.outfile}')
-
-if __name__ == '__main__':
-    main()
diff --git a/bin/metawrap/dereplicate_contigs_in_bins.py b/bin/metawrap/dereplicate_contigs_in_bins.py
deleted file mode 100755
index d3d0465..0000000
--- a/bin/metawrap/dereplicate_contigs_in_bins.py
+++ /dev/null
@@ -1,150 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-Dereplicate contigs in bins. 
-
-When a contig is found in multiple bins, it is kept only in the best bin or it is remove from the bins set when --remove flag is on.
-
-:Example:
-dereplicate_contigs_in_bins.py  --bins_stat binsM.stats  --bin_dir binsM --out_bin_dir binsO
-"""
-
-# Metadata
-__author__ = "Mainguy Jean - Plateforme bioinformatique Toulouse"
-__copyright__ = "Copyright (C) 2022 INRAE"
-__license__ = "GNU General Public License"
-__version__ = "0.1"
-__email__ = "support.bioinfo.genotoul@inra.fr"
-__status__ = "dev"
-
-
-from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import logging
-from Bio import SeqIO
-import os
-import pandas as pd
-import sys
-from collections import defaultdict
-
-
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(
-        description="...", formatter_class=ArgumentDefaultsHelpFormatter
-    )
-
-    parser.add_argument(
-        "-r",
-        "--bins_stat",
-        required=True,
-        help="bin set stat file with completeness, contamination and N50 metrics.",
-    )
-
-    parser.add_argument("-b", "--bin_dir", required=True, help="Bin set directory.")
-
-    parser.add_argument(
-        "-o",
-        "--out_bin_dir",
-        required=True,
-    )
-    parser.add_argument(
-        "-x",
-        "--extension",
-        help="Extension of input files. [Default: fa]",
-        default="fa",
-    )
-
-    parser.add_argument(
-        "--remove",
-        help="Remove contigs that end up in more than one bin",
-        action="store_true",
-    )
-
-    parser.add_argument(
-        "-v", "--verbose", help="increase output verbosity", action="store_true"
-    )
-
-    args = parser.parse_args()
-    return args
-
-
-def get_contig2bins(fasta_bins):
-
-    contig2bins = defaultdict(list)
-
-    for seq_file in fasta_bins:
-        bin_id = ".".join(os.path.basename(seq_file).split(".")[:-1])
-        for record in SeqIO.parse(seq_file, "fasta"):
-            contig2bins[record.id].append(bin_id)
-
-    return contig2bins
-
-
-def main():
-
-    args = parse_arguments()
-
-    if args.verbose:
-        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
-        logging.info("Mode verbose ON")
-
-    else:
-        logging.basicConfig(format="%(levelname)s: %(message)s")
-
-    bins_stats = args.bins_stat
-    bin_dir = args.bin_dir
-    out_bin_dir = args.out_bin_dir
-    fasta_extension = args.extension
-    remove_flag = args.remove
-
-    os.makedirs(out_bin_dir, exist_ok=True)
-
-    logging.info("Loading bin completion and contamination scores...")
-    df = pd.read_csv(bins_stats, sep="\t", index_col="genome")
-    df["score"] = df["completeness"] - 5 * df["contamination"] + 1e-10 * df["N50"]
-
-
-
-    logging.info("Loading in contigs in each bin...")
-
-    bin_files = [
-        os.path.join(bin_dir, seq_file)
-        for seq_file in os.listdir(bin_dir)
-        if seq_file.endswith(fasta_extension)
-    ]
-
-    contig2bins = get_contig2bins(bin_files)
-
-
-    logging.info("Get dereplicated contig list per bin...")
-
-    bin2uniqcontigs = defaultdict(list)
-
-    for contig, bins in contig2bins.items():
-        if len(bins) > 1 and remove_flag:
-            logging.info(
-                f"{contig} is removed because it is found in more than one bin. (remove flag is on)"
-            )
-            continue
-
-        best_bin = df.loc[bins, "score"].idxmax()
-
-        bin2uniqcontigs[best_bin].append(contig)
-
-    # go over the bin files again and make a new dereplicated version of each bin file
-    logging.info(
-        f"Making a new dereplicated version of each bin file and writting them in {out_bin_dir}"
-    )
-    for bin_id, contigs in bin2uniqcontigs.items():
-
-        bin_file = os.path.join(bin_dir, f"{bin_id}.{fasta_extension}")
-        out_bin_file = os.path.join(out_bin_dir, f"{bin_id}.{fasta_extension}")
-
-        with open(bin_file) as in_fh, open(out_bin_file, "w") as out_fh:
-            for record in SeqIO.parse(in_fh, "fasta"):
-                if record.id in contigs:
-                    SeqIO.write(record, out_fh, "fasta")
-
-
-if __name__ == "__main__":
-    main()
diff --git a/bin/metawrap/get_contig_length.py b/bin/metawrap/get_contig_length.py
deleted file mode 100755
index 22ad5fa..0000000
--- a/bin/metawrap/get_contig_length.py
+++ /dev/null
@@ -1,73 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-Get lengths of contigs
-
-:Example:
-python template.py -v
-"""
-
-# Metadata
-__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2022 INRAE'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-
-from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import logging
-from Bio import SeqIO
-import os
-
-
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(description="...",
-                            formatter_class=ArgumentDefaultsHelpFormatter)
-
-    parser.add_argument('--seq_dirs', nargs='+')
-    parser.add_argument("-o", "--outfile", default='contig_to_length.tsv' )
-    parser.add_argument("-v", "--verbose", help="increase output verbosity",
-                        action="store_true")
-    parser.add_argument('-x', '--extension', help='Extension of input files. [Default: .fa]', default='.fa')
-
-    args = parser.parse_args()
-    return args
-
-
-def main():
-
-    args = parse_arguments()
-
-    if args.verbose:
-        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
-        logging.info('Mode verbose ON')
-
-    else:
-        logging.basicConfig(format="%(levelname)s: %(message)s")
-    
-
-    fasta_extension = args.extension
-
-    seqid2length = {}
-    all_seq_files = []
-    for seq_dir in args.seq_dirs:
-        all_seq_files += [os.path.join(seq_dir, seq_file) for seq_file in os.listdir(seq_dir) if seq_file.endswith(fasta_extension)]
-    
-    logging.info(f"Found {len(all_seq_files)}  seq files to parse.")
-    
-    for seq_file in all_seq_files:
-        with open(seq_file, "r") as handle:
-            for record in SeqIO.parse(handle, "fasta"):
-                if record.id not in seqid2length:
-                    seqid2length[record.id] = len(record.seq)
-                    
-    seqid2length_iter = (f"{seqid}\t{length}" for seqid, length in seqid2length.items())
-    with open(args.outfile, 'w') as fl:
-        fl.write(f"seqid\tlength\n")
-        fl.write('\n'.join(seqid2length_iter))
-
-if __name__ == '__main__':
-    main()
diff --git a/bin/metawrap/plot_binning_results.py b/bin/metawrap/plot_binning_results.py
deleted file mode 100755
index ef1a133..0000000
--- a/bin/metawrap/plot_binning_results.py
+++ /dev/null
@@ -1,246 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-This script is coming from metaWRAP bin_refinement pipeline.
-
-We thank the author of the orginal metawrap: German Uritskiy.
-Check metaWRAP github: https://github.com/bxlab/metaWRAP
-"""
-
-
-# USAGE:
-# ./script file1.stats file2.stats file3.stats
-
-import sys
-import matplotlib.pyplot as plt
-plt.switch_backend('agg')
-
-max_contamination=int(sys.argv[2])
-min_completion=int(sys.argv[1])
-
-####################################################################################################################################
-############################################         MAKE THE COMPLETION PLOT           ############################################
-####################################################################################################################################
-print("Loading completion info....")
-data={}
-max_x=0
-# loop over all bin .stats files
-for file_name in sys.argv[3:]:
-    print(file_name)
-    bin_set=".".join(file_name.split("/")[-1].split(".")[:-1])
-    data[bin_set]=[]
-    for line in open(file_name):
-        # skip header
-        if "compl" in line: continue
-
-        # skip bins that are too contaminated or very incomplete
-        if float(line.split("\t")[2])>max_contamination: continue
-        if float(line.split("\t")[1])<min_completion: continue
-
-        # save the completion value of each bin into a list
-        data[bin_set].append(float(line.split("\t")[1]))
-    if len(data[bin_set])>max_x: max_x=len(data[bin_set])
-
-# sort the completion data sets
-for bin_set in data:
-    data[bin_set].sort(reverse=True)
-
-print("Plotting completion data...")
-# MAKING THE PLOT PRETTY!!!!
-# set some color schemes
-tableau20 = [(214, 39, 40), (31, 119, 180), (255, 127, 14),    
-             (44, 160, 44), (255, 152, 150),    
-             (148, 103, 189), (197, 176, 213), (140, 86, 75), (196, 156, 148),    
-             (227, 119, 194), (247, 182, 210), (127, 127, 127), (199, 199, 199),    
-             (188, 189, 34), (219, 219, 141), (23, 190, 207), (158, 218, 229)]
-
-for i in range(len(tableau20)):    
-    r, g, b = tableau20[i]    
-    tableau20[i] = (r / 255., g / 255., b / 255.)
-plot_colors={}
-for i, label in enumerate(sys.argv[1:]):
-    bin_set=".".join(label.split("/")[-1].split(".")[:-1])
-    plot_colors[bin_set]=tableau20[i]
-
-
-
-# set figure size
-plt.figure(figsize=(16, 8))
-plt.style.use('ggplot')
-
-# Remove the plot frame lines. They are unnecessary chartjunk.    
-ax = plt.subplot(121)
-ax.spines["top"].set_visible(False)
-ax.spines["bottom"].set_linewidth(0.5)
-ax.spines['bottom'].set_color('black')
-ax.spines["right"].set_visible(False)
-ax.spines["left"].set_visible(False)
-#ax.set_facecolor('white')
-ax.set_facecolor("white")
-
-# Ensure that the axis ticks only show up on the bottom and left of the plot.    
-ax.get_xaxis().tick_bottom()
-ax.get_yaxis().tick_left()
-
-# Limit the range of the plot to only where the data is.    
-plt.ylim(min_completion, 105)
-max_x=0
-for k in data:
-    if len(data[k])>max_x: max_x=len(data[k])
-plt.xlim(0, max_x)
-
-# Make sure your axis ticks are large enough to be easily read.    
-plt.yticks(list(range(min_completion, 105, 10)), [str(x) + "%" for x in range(min_completion, 105, 10)], fontsize=14)    
-plt.xticks(fontsize=14)    
-
-# Provide tick lines across the plot to help your viewers trace along    
-for y in range(min_completion, 105, 10):    
-    plt.axhline(y=y, linestyle="--", lw=0.5, color="black", alpha=0.3)
-for x in range(0, 1000, 20):
-    plt.axvline(x=x, linestyle="--", lw=0.5, color="black", alpha=0.3)
-  
-# Remove the tick marks; they are unnecessary with the tick lines we just plotted.    
-plt.tick_params(axis="both", which="both", bottom=False, top=False, labelbottom=True, left=False, right=False, labelleft=True)    
-
-
-# PLOTTING THE DATA
-
-# prepare labeles
-labels = []
-for k in data: labels.append(k)
-
-# plot the data and labels
-N = len(labels)
-y_increment = (100-min_completion)/N/2
-y_pos = 100-y_increment
-
-for rank, bin_set in enumerate(labels):
-    # chose a color!
-    c=plot_colors[bin_set]
-
-    # plot the data
-    plt.plot(data[bin_set], lw=2.5, color=c)
-    
-    # add bin set label to plot
-    for x_pos,y in enumerate(data[bin_set]):
-        if y<y_pos:
-            break
-    plt.text(x_pos, y_pos, bin_set, fontsize=18, color=c)
-    y_pos-=y_increment
-
-# add plot and axis titles and adjust edges
-plt.title("Bin completion ranking", fontsize=26) 
-plt.xlabel("Descending completion rank", fontsize=16)
-plt.ylabel("Estimated bin completion", fontsize=16)
-
-
-
-
-####################################################################################################################################
-############################################         MAKE THE CONTAMINATION PLOT        ############################################
-####################################################################################################################################
-print("Loading contamination info...")
-
-data={}
-# loop over all bin .stats files
-for file_name in sys.argv[3:]:
-    bin_set=".".join(file_name.split("/")[-1].split(".")[:-1])
-    data[bin_set]=[]
-    for line in open(file_name):
-        # skip header
-        if "compl" in line: continue
-
-        # skip bins that are too incomplete or way too contaminated
-        if float(line.split("\t")[1])<min_completion: continue
-        if float(line.split("\t")[2])>max_contamination: continue
-
-        # save the contamination value of each bin into a list
-        data[bin_set].append(float(line.split("\t")[2]))
-
-# sort the contamination data sets
-for bin_set in data:
-    data[bin_set].sort(reverse=False)
-
-print("Plotting the contamination data...")
-# MAKING THE PLOT PRETTY!!!!
-# Remove the plot frame lines. They are unnecessary chartjunk.    
-ax = plt.subplot(122)
-ax.spines["top"].set_visible(False)
-ax.spines["bottom"].set_linewidth(0.5)
-ax.spines['bottom'].set_color('black')
-ax.spines["right"].set_visible(False)
-ax.spines["left"].set_visible(False)
-#ax.set_facecolor('white')
-ax.set_facecolor("white")
-
-# Ensure that the axis ticks only show up on the bottom and left of the plot.    
-ax.get_xaxis().tick_bottom()
-ax.get_yaxis().tick_left()
-
-# Limit the range of the plot to only where the data is.    
-#plt.gca().invert_yaxis()
-plt.ylim(0, max_contamination+1)
-#ax.set_yscale('log')
-max_x=0
-for k in data:
-    if len(data[k])>max_x: max_x=len(data[k])
-plt.xlim(0, max_x)
-
-# Make sure your axis ticks are large enough to be easily read.
-plt.yticks(list(range(-0, max_contamination+1, 1)), [str(x) + "%" for x in range(-0, max_contamination+1, 1)], fontsize=14)
-plt.xticks(fontsize=14)
-
-# Provide tick lines across the plot to help your viewers trace along
-for y in range(0, max_contamination+1, 1):
-        plt.axhline(y=y, linestyle="--", lw=0.5, color="black", alpha=0.3)
-for x in range(0, 1000, 20):
-        plt.axvline(x=x, linestyle="--", lw=0.5, color="black", alpha=0.3)
-
- 
-# Remove the tick marks; they are unnecessary with the tick lines we just plotted.    
-plt.tick_params(axis="both", which="both", bottom=False, top=False, labelbottom=True, left=False, right=False, labelleft=True)    
-
-
-# PLOTTING THE DATA
-# prepare labeles
-labels = []
-for k in data: labels.append(k)
-
-# plot the data and labels
-N = len(labels)
-y_increment = max_contamination/N/2
-y_pos = y_increment
-
-for rank, bin_set in enumerate(labels):
-        # chose a color!
-        c=plot_colors[bin_set]
-
-        # plot the data
-        plt.plot(data[bin_set], lw=2.5, color=c)
-
-        # add bin set label to plot
-        for x_pos,y in enumerate(data[bin_set]):
-                if y>y_pos:
-                        break
-        plt.text(x_pos, y_pos, bin_set, fontsize=18, color=c)
-        y_pos+=y_increment
-
-
-# add plot and axis titles and adjust the edges
-plt.title("Bin contamination ranking", fontsize=26) 
-plt.xlabel("Acending contamination rank", fontsize=16)
-plt.ylabel("Estimated bin contamination (log scale)", fontsize=16)
-plt.gcf().subplots_adjust(right=0.9)
-
-# save figure
-print("Saving figures binning_results.eps and binning_results.png ...")
-plt.tight_layout(w_pad=10)
-plt.subplots_adjust(top=0.92, right=0.90, left=0.08)
-plt.savefig("binning_results.png",format='png', dpi=300)
-#plt.show()
-
-
-
-
-
-
diff --git a/bin/metawrap/print_comment.py b/bin/metawrap/print_comment.py
deleted file mode 100755
index be1ef7d..0000000
--- a/bin/metawrap/print_comment.py
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-This script is coming from metaWRAP bin_refinement pipeline.
-
-We thank the author of the orginal metawrap: German Uritskiy.
-Check metaWRAP github: https://github.com/bxlab/metaWRAP
-"""
-
-# This script prints any comment in a structured and prety way.
-import sys
-comm=sys.argv[1]
-delim=sys.argv[2]
-
-print('\n'+delim*120)
-
-max_len=90
-
-cut=comm.split(" ")
-line=""
-for word in cut:
-    if (len(line) + 1 + len(word))>max_len:
-        edge1=int((120-len(line))/2 - 5)
-        edge2=120-edge1-len(line) - 10
-        print(delim*5 + " "*edge1 + line + " "*edge2 + delim*5)
-        line=word
-    else:
-        line = line+" "+word
-edge1=int((120-len(line))/2 - 5)
-edge2=120-edge1-len(line) - 10
-print(delim*5 + " "*edge1 + line + " "*edge2 + delim*5)
-
-print(delim*120+'\n')
-
-
-
diff --git a/bin/metawrap/setup_indermediate_checkm2_files.py b/bin/metawrap/setup_indermediate_checkm2_files.py
deleted file mode 100644
index 094d7fd..0000000
--- a/bin/metawrap/setup_indermediate_checkm2_files.py
+++ /dev/null
@@ -1,171 +0,0 @@
-#!/usr/bin/env python3
-
-"""
-Setup intermediate files of checkm2 of bin sets 
-to skip prodigal and diamond steps in checkm2
-
-:Example:
-python template.py -v
-"""
-
-# Metadata
-__author__ = 'Mainguy Jean - Plateforme bioinformatique Toulouse'
-__copyright__ = 'Copyright (C) 2022 INRAE'
-__license__ = 'GNU General Public License'
-__version__ = '0.1'
-__email__ = 'support.bioinfo.genotoul@inra.fr'
-__status__ = 'dev'
-
-
-from argparse import ArgumentParser, ArgumentDefaultsHelpFormatter
-import logging
-from Bio import SeqIO
-import os
-from collections import defaultdict
-import os
-import errno
-import sys
-import pandas as pd
-
-def parse_arguments():
-    """Parse script arguments."""
-    parser = ArgumentParser(description="...",
-                            formatter_class=ArgumentDefaultsHelpFormatter)
-
-    parser.add_argument('-b', '--bin_dir', required=True, help="Bin directory.",)
-    parser.add_argument('-f', '--faa_raw', required=True, help="Protein sequences predicted with prodigal on all contigs.",)
-    parser.add_argument('-d', '--diamond_raw', required=True, help="Results from diamond launched on all contigs.",)
-    parser.add_argument("-o", "--outdir", required=True)
-    parser.add_argument("-v", "--verbose", help="increase output verbosity",
-                        action="store_true")
-    parser.add_argument('-x', '--extension', help='Extension of input files. [Default: .fa]', default='.fa')
-
-    args = parser.parse_args()
-    return args
-
-def get_contig2bin(fasta_bins):
-
-    contig2bin = {}
-
-    for seq_file in fasta_bins:
-        bin_id = '.'.join(os.path.basename(seq_file).split('.')[:-1])
-        contig2bin.update({record.id:bin_id for record in SeqIO.parse(seq_file, "fasta")}) 
-
-    return contig2bin
-
-def make_sure_path_exists(path):
-    """
-    Create directory if it does not exist.
-    
-    Taken from Checkm2. https://github.com/chklovski/CheckM2/blob/e563159f005344d798defb60cea4189e0be8ec92/checkm2/fileManager.py#L218
-    """
-    
-    if not path:
-        return
-
-    try:
-        os.makedirs(path)
-    except OSError as exception:
-        if exception.errno != errno.EEXIST:
-            logging.error('Specified path does not exist: ' + path + '\n')
-            sys.exit(1)
-
-def from_faa_to_bin(faa_id, contig2bin):
-    contig = "_".join(faa_id.split('_')[:-1])
-    
-    try:
-        bin_id = contig2bin[contig]
-    except KeyError:
-        bin_id = None
-        
-    return bin_id
-
-def get_bin2faa_seq(faa_file, contig2bin):
-
-    bin2faa_seq  = defaultdict(list)
-    contigs_not_in_bin = set()
-    # load all faa sequences into memory and make a bin2sequencerecord
-    for record in SeqIO.parse(faa_file, "fasta"):
-        
-        contig = '_'.join(record.id.split('_')[:-1])
-
-        if contig not in contig2bin:
-            contigs_not_in_bin.add(contig)
-            continue
-
-        bin_id = contig2bin[contig]
-        bin2faa_seq[bin_id].append(record)
-        
-    logging.info(f"{len(contigs_not_in_bin)} contigs have been ignored as they do not belong to any bins.")
-    return bin2faa_seq
-
-def main():
-
-    args = parse_arguments()
-
-    if args.verbose:
-        logging.basicConfig(format="%(levelname)s: %(message)s", level=logging.DEBUG)
-        logging.info('Mode verbose ON')
-
-    else:
-        logging.basicConfig(format="%(levelname)s: %(message)s")
-
-    bin_dir = args.bin_dir
-    fasta_extension = args.extension
-
-    diamond_outname = "DIAMOND_RESULTS.tsv"
-
-    diamond_raw = args.diamond_raw
-
-    prodigal_outdir_name = "protein_files"
-    diamond_outdir_name = "diamond_output"
-    
-    diamond_header_separator = 'Ω'
-    
-    prodigal_out_path = os.path.join(args.outdir, prodigal_outdir_name)
-    diamond_out_path = os.path.join(args.outdir, diamond_outdir_name)
-
-    make_sure_path_exists(prodigal_out_path)
-    make_sure_path_exists(diamond_out_path)
-
-
-    diamond_output = os.path.join(diamond_out_path, diamond_outname)
-
-
-    logging.info("Get bin composition by parsing bin fasta files.")
-
-    bin_files = [os.path.join(bin_dir, seq_file) for seq_file in os.listdir(bin_dir) if seq_file.endswith(fasta_extension)]
-    contig2bin = get_contig2bin(bin_files)
-    
-    logging.info("Setting up faa output.")
-
-    bin2faa_seq = get_bin2faa_seq(args.faa_raw, contig2bin)
-
-    logging.info(f"Writting faa into {len(bin2faa_seq)} bin files in {prodigal_out_path}.")
-
-    for bin_id, faa_seq in bin2faa_seq.items():
-
-        bin_out_file = os.path.join(prodigal_out_path, f'{bin_id}.faa')
-        SeqIO.write(faa_seq, bin_out_file, "fasta")
-
-    logging.info("Setting up DIAMOND output.")
-    
-    headers = ['query_id', "subject_id"] + [f"_{i}" for i in range(10)]
-    df = pd.read_csv(diamond_raw, sep='\t', names= headers)
-
-    # Get bin id for each query id
-    df['bin'] = df['query_id'].apply(lambda x: from_faa_to_bin(x,contig2bin))
-
-    # remove line that are from query that does not belong to current bin set
-    df = df.loc[ ~ df['bin'].isna()]
-
-    # concat binid and query id with checkm2 separator 
-    df['query_id'] = df['bin'] + diamond_header_separator + df['query_id']
-    df = df.drop('bin', axis=1)
-
-    df.to_csv(diamond_output, sep="\t", index=False, header=False)
-
-    return
-
-if __name__ == '__main__':
-    main()
diff --git a/conf/base.config b/conf/base.config
index 721713b..8bac4a7 100644
--- a/conf/base.config
+++ b/conf/base.config
@@ -100,7 +100,7 @@ process {
         memory = { 30.GB * task.attempt }
         cpus = 20
     }
-    withName: METAWRAP_REFINMENT {
+    withName: BINETTE {
         memory = { 20.GB * task.attempt }
         cpus = 20
     }
diff --git a/conf/test.config b/conf/test.config
index 8b437cd..1a57d0d 100644
--- a/conf/test.config
+++ b/conf/test.config
@@ -103,7 +103,7 @@ process {
         memory = { 1.GB * task.attempt }
         executor = "local"
     }
-    withName: METAWRAP_REFINMENT {
+    withName: BINETTE {
         memory = { 12.GB * task.attempt }
         cpus = 8
     }
diff --git a/docs/output.md b/docs/output.md
index ea47fa6..f5622a6 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -240,7 +240,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/concoct`| This directory contains bins fasta files from the individual binning tool CONCOCT (see informations [here](https://concoct.readthedocs.io/en/latest/)). |
 | `SAMPLE_NAME/maxbin2`| This directory contains bins fasta files from the individual binning tool MaxBin2(see informations [here](https://academic.oup.com/bioinformatics/article/32/4/605/1744462)). |
 | `SAMPLE_NAME/metabat2`| This directory contains bins fasta files from the individual binning tool MetaBAT2                     (see informations [here](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6662567/)). |
-| `SAMPLE_NAME/bin_refinement`| This directory contains bins fasta files from the aggregate binning module bin_refinement from metaWRAP tool, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://microbiomejournal.biomedcentral.com/articles/10.1186/s40168-018-0541-1)). |
+| `SAMPLE_NAME/bin_refinement`| This directory contains bins fasta files and statistics from the aggregate binning tool BINETTE, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://forgemia.inra.fr/jean.mainguy/binette)). |
 | `SAMPLE_NAME/bin_refinement/unbinned_contigs.fasta`| Contigs from the sample assembly that are not retrieved in any bin. The proportion of non-binned contigs to the global size of the sample assembly can be seen in the MultiQC report, in the section Bins Size (bp) quality. |
 
 #### **08_binning/08_2_dereplicated_bins**
diff --git a/env/Singularity_recipe_binning b/env/Singularity_recipe_binning
index 00f6e2f..4221b25 100644
--- a/env/Singularity_recipe_binning
+++ b/env/Singularity_recipe_binning
@@ -6,16 +6,22 @@ IncludeCmd: yes
 env/binning.yml /
 
 %post
-apt-get update && apt-get install -y procps && apt-get clean -y
-/opt/conda/bin/mamba env create -f /binning.yml && /opt/conda/bin/conda clean -a
+# build-essential g++ are needed to pip install checkm2
+apt-get update && apt-get install -y procps build-essential g++ && apt-get clean -y
+/opt/conda/bin/mamba env create -f /binning.yml  && /opt/conda/bin/conda clean -a
 
-git clone --recursive https://github.com/JeanMainguy/CheckM2.git
+export PATH=/opt/conda/envs/binning/bin:$PATH
+git clone https://forgemia.inra.fr/jean.mainguy/binette.git
 
-export PATH=/opt/conda/envs/binning/bin:/CheckM2/bin/:$PATH
-checkm2 database --download --path '.'
+git clone --recursive https://github.com/chklovski/checkm2.git
+
+pip install checkm2/
+
+checkm2 database --download --path '.' || echo checkm2 database failed but it is probably ok
 
 %environment
-export PATH=/opt/conda/envs/binning/bin:/CheckM2/bin/:$PATH
+export PATH=/opt/conda/envs/binning/bin/:/checkm2/bin/:/binette/binette/:$PATH
 
 %runscript
      "$@"
+ 
diff --git a/env/binning.yml b/env/binning.yml
index ead356b..7577e2b 100644
--- a/env/binning.yml
+++ b/env/binning.yml
@@ -1,16 +1,9 @@
 name: binning
 channels:
-  - conda-forge
   - bioconda
   - defaults
+  - conda-forge
 dependencies:
-  - biopython
-  - matplotlib
-  - metabat2=2.15
-  - maxbin2=2.2.7
-  - concoct=1.1.0
-  - gtdbtk=2.1
-  - drep=3.0.0
   - python>=3.6
   - scikit-learn=0.23.2
   - h5py=2.10.0
@@ -21,8 +14,18 @@ dependencies:
   - pandas
   - scipy
   - prodigal>=2.6.3
-  - pprodigal
   - setuptools
   - requests
   - packaging
   - tqdm
+  - networkx
+  - pyfastx
+  - pyrodigal
+  - biopython
+  - matplotlib
+  - metabat2=2.15
+  - maxbin2=2.2.7
+  - concoct=1.1.0
+  - gtdbtk=2.1
+  - drep=3.0.0
+  - pprodigal
diff --git a/modules/binning.nf b/modules/binning.nf
index 431fb01..9cc6879 100644
--- a/modules/binning.nf
+++ b/modules/binning.nf
@@ -112,37 +112,40 @@ process CONCOCT {
 }
 
 
-process METAWRAP_REFINMENT {
+process BINETTE {
   errorStrategy { task.exitStatus == 255 ? 'ignore' : 'finish' }
   tag "${meta.id}"
   publishDir "${params.outdir}/08_binning/08_1_binning_per_sample/${meta.id}", mode: 'copy'
   label 'BINNING'
 
   input:
-    tuple val(meta), val(bins1), val(bins2), val(bins3) 
+    tuple val(meta), val(bins), path(contigs)
     val min_completeness
     val max_contamination
       
   output:
-    path "bin_refinement/figures/*"
-    tuple val(meta), path("bin_refinement/metawrap_*_bins/*"), emit: bins
-    tuple val(meta), path('bin_refinement/metawrap_*_bins.stats'), emit: checkm_stats
-    path "v_metawrap.txt", emit: v_metawrap
+    tuple val(meta), path("bin_refinement/final_bins/*"), emit: bins
+    tuple val(meta), path('bins_stats.tsv'), emit: checkm_stats
+    path "v_binette.txt", emit: v_binette
 
 	script:
-  bins_flag = (bins3 != null) ? "-A $bins1 -B $bins2 -C $bins3" : "-A $bins1 -B $bins2 "
   """
+    binette.py -v -m 0 -t ${task.cpus} -d ${bins.join(' ')} -c ${contigs} -o bin_refinement/
 
-  echo "metawrap 1.3_modified" > v_metawrap.txt
-  
-  bin_refinement.sh -t ${task.cpus} -c $min_completeness -x $max_contamination -o bin_refinement/ $bins_flag
-  cd bin_refinement/metawrap_${min_completeness}_${max_contamination}_bins/
-  for filename in *fa; 
-  do 
-    mv \$filename "${meta.id}_\$filename"; 
-    sed -i 's/^bin/${meta.id}_bin/' ../metawrap_${min_completeness}_${max_contamination}_bins.stats 
-  done
+    sed -i 's/size/Size/' bin_refinement/final_bins_quality_reports.tsv 
+    sed -i 's/^/${meta.id}_bin_/' bin_refinement/final_bins_quality_reports.tsv 
+    sed -i 's/^${meta.id}_bin_bin_id/genome/' bin_refinement/final_bins_quality_reports.tsv 
+    cut -f 2,3 --complement bin_refinement/final_bins_quality_reports.tsv > bins_stats.tsv 
+
+    cd bin_refinement/final_bins
+
+    for filename in *fa; 
+    do 
+      mv \$filename "${meta.id}_\$filename"
+    done
 
+    cd ../..
+    touch v_binette.txt
   """
 }
 
diff --git a/modules/checkm2.nf b/modules/checkm2.nf
index 08b4376..94fc69c 100644
--- a/modules/checkm2.nf
+++ b/modules/checkm2.nf
@@ -10,7 +10,7 @@ process CHECKM2 {
 
   script:
   """
-    checkm2 predict -x fa --threads ${task.cpus} --input $bins --output-directory checkm2/ 
+    checkm2 predict -x fa --threads ${task.cpus} --input ${bins.join(' ')} --output-directory checkm2/ 
 
     echo "\$(checkm2 --version)_modified" > v_checkm2.txt
   """ 
diff --git a/modules/get_db_versions.nf b/modules/get_db_versions.nf
index d41ecbe..9805a29 100644
--- a/modules/get_db_versions.nf
+++ b/modules/get_db_versions.nf
@@ -48,7 +48,7 @@ process GET_DB_VERSIONS {
     echo "GTDBTK ${gtdbtk}" > gtdbtk_db.txt
   fi
 
-  checkm2=\$(checkm2 database --current 2>&1 | awk '{ print \$5 }')
+  checkm2=\$(checkm2 database --current 2>&1 |  tail -n1 |awk '{ print \$5 }')
   echo "Diamond_checkm2 \$checkm2" > checkm2_db.txt
 
   if [[ `ls | grep db.txt` ]]
diff --git a/modules/sum_up_bins_informations.nf b/modules/sum_up_bins_informations.nf
index 5cfc103..e4df705 100644
--- a/modules/sum_up_bins_informations.nf
+++ b/modules/sum_up_bins_informations.nf
@@ -52,7 +52,7 @@ process ADD_QUAST_INFO_TO_BINS {
             val=i;}}} 
       if(val != -1) print \$1 "\t" \$val} ' report.tsv > report_${meta.id}.tsv
 
-    add_info_to_metawrap_stat.py -s $bins_stat \
+    add_info_to_bin_stat.py -s $bins_stat \
                                  -q report_${meta.id}.tsv \
                                  -o "${meta.id}_bins_stat_and_quality.tsv"
     """
diff --git a/subworkflows/08_binning.nf b/subworkflows/08_binning.nf
index 69a7962..df6ca95 100644
--- a/subworkflows/08_binning.nf
+++ b/subworkflows/08_binning.nf
@@ -1,4 +1,4 @@
-include { GENERATE_DEPTH_FILES; METABAT2; MAXBIN2; CONCOCT; METAWRAP_REFINMENT; UNBINNED_CONTIGS } from '../modules/binning'
+include { GENERATE_DEPTH_FILES; METABAT2; MAXBIN2; CONCOCT; BINETTE; UNBINNED_CONTIGS } from '../modules/binning'
 include { CHECKM2 } from '../modules/checkm2'
 include { DREP } from '../modules/drep'
 include { BWA_MEM;BWA_MEM as BWA_MEM_CROSS_ALIGNMENT; MINIMAP2; MINIMAP2 as MINIMAP2_CROSS_ALIGNMENT } from '../modules/read_alignment'
@@ -25,7 +25,7 @@ workflow STEP_08_BINNING {
   ch_metabat2_v = Channel.empty()
   ch_maxbin_v = Channel.empty()
   ch_concoct_v = Channel.empty()
-  ch_metawrap_v = Channel.empty()
+  ch_binette_v = Channel.empty()
   ch_checkm2_v = Channel.empty()
   ch_dRep_v = Channel.empty()
   ch_gtdbtk_v = Channel.empty()
@@ -140,64 +140,37 @@ workflow STEP_08_BINNING {
   //////////////////
   //// BIN REFINEMENT  
   //////////////////
-  ch_bins_set = ch_metabat_bins.join(ch_concoct_bins, remainder:true)
-  .join(ch_maxbin_bins, remainder:true)
-  .branch{
-      multiple: (it[1] != null && it[2] != null) || 
-      (it[1] != null && it[3] != null) ||
-      (it[2] != null && it[3] != null)
-      single: true
-      }
-  
-  //bins set  with bins form at least 2 binners 
-  ch_bins_multiple = ch_bins_set.multiple.map{ meta, bins1, bins2, bins3 -> 
-    if ( bins1 == null ) {
-      return [meta, bins2, bins3, bins1]
-    } else if ( bins2 == null ) { 
-      return [meta, bins1, bins3, bins2]
-    } else { 
-      return [meta, bins1, bins2, bins3]
-    }
-  }
-
-  //bins set  with bins form only 1 binner
-  ch_bins_single = ch_bins_set.single.map{ meta, bins1, bins2, bins3 -> 
-    if ( bins1 != null ) {
-      return [meta, bins1]
-    } else if ( bins2 != null ) { 
-      return [meta, bins2]
-    } else { 
-      return [meta, bins3]
-    }
-  }
-
-  CHECKM2(ch_bins_single)
+  ch_bins_set = ch_metabat_bins.mix(ch_concoct_bins, ch_maxbin_bins)
+                                .groupTuple(by: [0])
+                                .branch{ meta, bins ->
+                                    multiple: bins.size() > 1
+                                    single: bins.size() == 1
+                                }
+
+  CHECKM2(ch_bins_set.single)
   ch_checkm2_v = CHECKM2.out.v_checkm2
 
 
   ch_all_bins_stats = Channel.empty()
-  ch_metawrap_stats_and_quast = Channel.empty()
-  ch_metawrap_bins = Channel.empty()
-  ch_metawrap_bins = Channel.empty()
-  ch_metawrap_stats_and_quast = Channel.empty()
+  ch_binette_stats_and_quast = Channel.empty()
+  ch_binette_bins = Channel.empty()
+  ch_binette_stats = Channel.empty()
   ch_bins_assembly = Channel.empty()
 
-  METAWRAP_REFINMENT(ch_bins_multiple, params.min_completeness, params.max_contamination)
-  ch_metawrap_bins = METAWRAP_REFINMENT.out.bins
-                                           .map { meta, file -> file}
-                                           .collect()
-  ch_metawrap_stats = METAWRAP_REFINMENT.out.checkm_stats
-                                            .map { meta, file -> file}
-                                            .collect()
+  ch_bins_assembly = ch_bins_set.multiple.join(ch_assembly)
+
+  BINETTE(ch_bins_assembly, params.min_completeness, params.max_contamination)
+  ch_binette_bins = BINETTE.out.bins
+  ch_binette_stats = BINETTE.out.checkm_stats
   
-  ch_bins_assembly = METAWRAP_REFINMENT.out.bins.join(ch_assembly)
+  ch_bins_assembly = ch_binette_bins.join(ch_assembly)
 
   UNBINNED_CONTIGS(ch_bins_assembly)
 
-  ch_metawrap_stats_and_quast =  METAWRAP_REFINMENT.out.checkm_stats.combine(quast) 
-  ch_metawrap_v = METAWRAP_REFINMENT.out.v_metawrap
+  ch_binette_stats_and_quast =  ch_binette_stats.combine(quast) 
+  ch_binette_v = BINETTE.out.v_binette
   
-  ADD_QUAST_INFO_TO_BINS(ch_metawrap_stats_and_quast)
+  ADD_QUAST_INFO_TO_BINS(ch_binette_stats_and_quast)
   
   ch_all_bins_stats = ADD_QUAST_INFO_TO_BINS.out.bins_stats.collect()
 
@@ -211,8 +184,13 @@ workflow STEP_08_BINNING {
   ////////////////////////
 
   ch_bins_drep = Channel.empty()
+  ch_binette_bins = ch_binette_bins.map { meta, file -> file}
+                                   .collect()
+
+  ch_binette_stats = ch_binette_stats.map { meta, file -> file}
+                                     .collect()
   
-  DREP(ch_metawrap_stats, ch_metawrap_bins, params.drep_threshold)
+  DREP(ch_binette_stats, ch_binette_bins, params.drep_threshold)
   ch_bins_drep = DREP.out.drep_bins_folder
   ch_dRep_v = DREP.out.v_dRep
 
@@ -260,10 +238,10 @@ workflow STEP_08_BINNING {
                                                   ch_metabat2_v.first(),
                                                   ch_maxbin_v.first(),
                                                   ch_concoct_v.first(),
-                                                  ch_metawrap_v,
+                                                  ch_binette_v,
                                                   ch_checkm2_v.first(),
                                                   ch_dRep_v,
-                                                  ch_gtdbtk_v,
+                                                  ch_gtdbtk_v
                                                   )
 
   emit:
-- 
GitLab


From 2c447579a5e69927f02d848748e70aea0c17dff0 Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Wed, 18 Jan 2023 15:37:50 +0100
Subject: [PATCH 179/194] add mapping file to map original and new contig name

---
 bin/rename_contigs.py       | 4 +++-
 docs/output.md              | 3 +--
 modules/assembly.nf         | 3 ++-
 subworkflows/02_assembly.nf | 4 +++-
 4 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/bin/rename_contigs.py b/bin/rename_contigs.py
index beb627b..c6556e1 100755
--- a/bin/rename_contigs.py
+++ b/bin/rename_contigs.py
@@ -37,6 +37,8 @@ def parse_arguments():
     parser.add_argument('-i', '--fna_file', help='Original fasta file of contigs.', required=True)
 
     parser.add_argument('-o', '--out_fna', help='Output fasta file with renamed contigs.', required=True)
+    
+    parser.add_argument('-t', '--contig_names_table', help='Tabular table with 2 fields : orignal and new name.', default="original_to_new_contig_name.tsv")
 
     parser.add_argument("-v", "--verbose", help="increase output verbosity",
                         action="store_true")
@@ -70,7 +72,7 @@ def main():
     sample = args.sample    
     fna_file = args.fna_file
     out_fna = args.out_fna
-    old2new_contig_name = "old_to_new_contig_name.tsv"
+    old2new_contig_name = args.contig_names_table
 
 
     logging.info(f'Writting renamed fasta file in {out_fna}')
diff --git a/docs/output.md b/docs/output.md
index f5622a6..26ce39a 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -88,8 +88,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME.fna`              | unfiltered assembly (primary assembly) with renamed contigs. Contig names follow this pattern: `<sample_name>_c<contig_number>`. |
 | `assembly_metric`              | Contains metaQUAST quality control files of contigs.                                                                             |
 | `<assembly_tool>_SAMPLE_NAME/` | output files of the assembly tool. It contains logs and original fasta files of the assembly before renaming.                    |
-
-
+| `SAMPLE_NAME_original_to_new_contig_name.tsv` | Tabular file with two fields: original contig name from the assembly tool and the new contig name given by the pipeline.                   |
 
 #### **02_assembly/02_2_deduplicated_reads**
 
diff --git a/modules/assembly.nf b/modules/assembly.nf
index 0b4d56f..8a7827c 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -157,10 +157,11 @@ process RENAME_CONTIGS {
 
   output:
     tuple val(meta), path("${meta.id}.fna"), emit: fna
+    path("${meta.id}_original_to_new_contig_name.tsv")
 
   script:
   """
-    rename_contigs.py --sample ${meta.id}  --fna_file ${meta.id}.raw.fna --out_fna ${meta.id}.fna -v
+    rename_contigs.py --sample ${meta.id}  --fna_file ${meta.id}.raw.fna --out_fna ${meta.id}.fna -v -t ${meta.id}_original_to_new_contig_name.tsv 
 
   """
 }
\ No newline at end of file
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index b53a0d3..ef0d29f 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -123,7 +123,9 @@ workflow STEP_02_ASSEMBLY {
       }
     }
 
-    ch_assembly_renamed = RENAME_CONTIGS(ch_assembly)
+    RENAME_CONTIGS(ch_assembly)
+    ch_assembly_renamed = RENAME_CONTIGS.out.fna
+
     ch_assembly_quast = ch_assembly_renamed
                         .map { meta, file -> file }
                         .collect()
-- 
GitLab


From 9fcc0021f6f6f18981ff847abdecada2fd09ee31 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Wed, 18 Jan 2023 17:22:07 +0100
Subject: [PATCH 180/194] update doc, remove warning

---
 docs/usage.md | 23 +++++++----------------
 1 file changed, 7 insertions(+), 16 deletions(-)

diff --git a/docs/usage.md b/docs/usage.md
index a0907e2..a62d587 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -303,30 +303,21 @@ No parameter available for this substep.
 No parameters.
 
 **WARNING 6:** `S04_STRUCTURAL_ANNOT` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY` and `S03_FILTERING` steps (if you use it). You need to use the mandatory files of these four steps to run `S04_STRUCTURAL_ANNOT`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 6**.
-<!-- 
-**WARNING 7:** if you haven't previously done `S03_FILTERING`, calculation time of `S04_STRUCTURAL_ANNOT` can be important. Some cluster queues have defined calculation time, you need to adapt the queue you use to your data.
-> For example, if you are on [genologin cluster](http://bioinfo.genotoul.fr/) and you haven't done the `S03_FILTERING` step, you can write a `nextflow.config` file in your working directory containing these lines:
-> ```bash
-> withName: PROKKA {
->  queue = 'unlimitq'
-> }
-> ```
-> This will launch the `Prokka` command line of step `04_STRUCTURAL_ANNOT` on a calculation queue (`unlimitq`) where the job can last more than 4 days (which is not the case for the usual `workq` queue). -->
 
 #### **`S05_ALIGNMENT` step:**
 
-**WARNING 8:** `S05_ALIGNMENT` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY`, `S03_FILTERING` (if you use it) and `S04_STRUCTURAL_ANNOT` steps. You need to use the mandatory files of these five steps to run `S05_ALIGNMENT`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 8**.
+**WARNING 7:** `S05_ALIGNMENT` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY`, `S03_FILTERING` (if you use it) and `S04_STRUCTURAL_ANNOT` steps. You need to use the mandatory files of these five steps to run `S05_ALIGNMENT`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 7**.
 
 * `--diamond_bank "<PATH>/bank.dmnd"`: path to diamond bank used to align protein sequence of genes. This bank must be previously built with [diamond makedb](https://github.com/bbuchfink/diamond/wiki). Default `""`.
 
 Make sure that the version of the tools corresponds to the version of the bank specified in the parameter.
 For example check the version of software in the yaml file and the singularity recipe in env/ repository and be sure that you specified the appropriate databank version.
 
-**WARNING 9:** You need to use a NCBI reference to have functional links in the output file _Quantifications_and_functional_annotations.tsv_ of `S06_FUNC_ANNOT` step
+**WARNING 8:** You need to use a NCBI reference to have functional links in the output file _Quantifications_and_functional_annotations.tsv_ of `S06_FUNC_ANNOT` step
 
 #### **`S06_FUNC_ANNOT` step:**
 
-**WARNING 10:** `S06_FUNC_ANNOT` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY`, `S03_FILTERING` (if you use it), `S04_STRUCTURAL_ANNOT` and `S05_ALIGNMENT` steps. You need to use the mandatory files of these six steps to run `S06_FUNC_ANNOT`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 9**.
+**WARNING 9:** `S06_FUNC_ANNOT` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY`, `S03_FILTERING` (if you use it), `S04_STRUCTURAL_ANNOT` and `S05_ALIGNMENT` steps. You need to use the mandatory files of these six steps to run `S06_FUNC_ANNOT`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 8**.
 
 * `--percentage_identity [number]`: corresponds to cd-hit-est -c option to indicate sequence percentage identity for clustering genes. Default: `0.95` corresponding to 95% of sequence identity. Use: `number` must be between 0 and 1, and use `.` when you want to use a float.
 
@@ -337,17 +328,17 @@ For example check the version of software in the yaml file and the singularity r
 Make sure that the version of the tools corresponds to the version of the bank specified in the parameter.
 For example check the version of software in the yaml file and the singularity recipe in env/ repository and be sure that you specified the appropriate databank version.
 
-**WARNING 11:** you need to use either `--eggnogmapper_db_download` or `--eggnog_mapper_db_dir`. If it is not the case, an error message will occur.
+**WARNING 10:** you need to use either `--eggnogmapper_db_download` or `--eggnog_mapper_db_dir`. If it is not the case, an error message will occur.
 
 #### **`S07_TAXO_AFFI` step:**
 
-**WARNING 12:** `S07_TAXO_AFFI` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY`, `S03_FILTERING` (if you use it), `S04_STRUCTURAL_ANNOT` and `S05_ALIGNMENT` steps. You need to use the mandatory files of these six steps to run `S07_TAXO_AFFI`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 9**.
+**WARNING 11:** `S07_TAXO_AFFI` step depends on `S01_CLEAN_QC`, `S02_ASSEMBLY`, `S03_FILTERING` (if you use it), `S04_STRUCTURAL_ANNOT` and `S05_ALIGNMENT` steps. You need to use the mandatory files of these six steps to run `S07_TAXO_AFFI`. See [II. Input files](usage.md#ii-input-files) and **WARNINGS 1 to 8**.
 
 * `--accession2taxid "<PATH>/prot.accession2taxid.FULL.gz"`: indicates the local path or FTP adress of the NCBI file `prot.accession2taxid.FULL.gz`. Default: `"ftp://ftp.ncbi.nih.gov/pub/taxonomy/accession2taxid/prot.accession2taxid.FULL.gz"`.  The local file can be gzip or not. 
 
 * `--taxdump "<PATH>/new_taxdump.tar.gz"`: indicates the local path or the FTP adress of the NCBI file `taxdump.tar.gz`. Default `"ftp://ftp.ncbi.nih.gov/pub/taxonomy/new_taxdump/new_taxdump.tar.gz"`. The local file can be either a tar.gz archive or the extracted `new_taxdump` directory. 
 
-**WARNING 13:** To have contigs and genes taxonomic affiliation your protein database used in the step 05_alignment has to come from ncbi and your taxdump and prot.accession2taxid files must be coherent, i.e. downloaded at the same time as the protein database used in 05_alignment step.
+**WARNING 12:** To have contigs and genes taxonomic affiliation your protein database used in the step 05_alignment has to come from ncbi and your taxdump and prot.accession2taxid files must be coherent, i.e. downloaded at the same time as the protein database used in 05_alignment step.
 
 #### **`S08_binning` step:**
 
@@ -382,4 +373,4 @@ See the description of output files in [this part](output.md) of the documentati
 
 > If you have an account on the [genologin cluster](http://bioinfo.genotoul.fr/) and you would like to familiarize yourself with metagWGS, see the tutorial available in the [use case documentation page](use_case.md). It allows the analysis of big test datasets with metagWGS. (WARNING: use_case documentation is not up-to-date, needs to be updated)
 
-**WARNING 16:** the test dataset in `metagwgs-test-datasets/small` used in [I. Basic Usage](usage.md#i-basic-usage) is a small test dataset which allows to test all steps but with few CPUs and memory.
+**WARNING 13:** the test dataset in `metagwgs-test-datasets/small` used in [I. Basic Usage](usage.md#i-basic-usage) is a small test dataset which allows to test all steps but with few CPUs and memory.
-- 
GitLab


From ec756bfbdab6d483a0cc2c5b954fa1da2d580f07 Mon Sep 17 00:00:00 2001
From: Maina Vienne <maina.vienne@inrae.fr>
Date: Wed, 18 Jan 2023 17:29:53 +0100
Subject: [PATCH 181/194] Update singularity image of metagWGS and binning

---
 env/Singularity_recipe_binning |  9 ++++++---
 env/metagWGS.yml               | 26 ++++++++++++++------------
 2 files changed, 20 insertions(+), 15 deletions(-)

diff --git a/env/Singularity_recipe_binning b/env/Singularity_recipe_binning
index 4221b25..91b90c6 100644
--- a/env/Singularity_recipe_binning
+++ b/env/Singularity_recipe_binning
@@ -11,17 +11,20 @@ apt-get update && apt-get install -y procps build-essential g++ && apt-get clean
 /opt/conda/bin/mamba env create -f /binning.yml  && /opt/conda/bin/conda clean -a
 
 export PATH=/opt/conda/envs/binning/bin:$PATH
-git clone https://forgemia.inra.fr/jean.mainguy/binette.git
 
 git clone --recursive https://github.com/chklovski/checkm2.git
 
 pip install checkm2/
+export PATH=/opt/conda/envs/binning/bin/:/checkm2/bin/:$PATH
 
 checkm2 database --download --path '.' || echo checkm2 database failed but it is probably ok
 
+git clone https://github.com/genotoul-bioinfo/Binette.git
+pip install Binette/
+
 %environment
-export PATH=/opt/conda/envs/binning/bin/:/checkm2/bin/:/binette/binette/:$PATH
+export PATH=/opt/conda/envs/binning/bin/:/checkm2/bin/:$PATH
 
 %runscript
      "$@"
- 
+ 
\ No newline at end of file
diff --git a/env/metagWGS.yml b/env/metagWGS.yml
index 6a0b710..463510d 100644
--- a/env/metagWGS.yml
+++ b/env/metagWGS.yml
@@ -4,29 +4,31 @@ channels:
   - bioconda
   - defaults
 dependencies:
+  - barrnap=0.9
   - bcbio-gff=0.6.9
   - bwa-mem2=2.2.1
   - cd-hit=4.8.1
-  - cutadapt=4.1
+  - cutadapt=4.2
   - diamond=2.0.15
   - eggnog-mapper=2.1.9
   - fastqc=0.11.9
+  - flye=2.9.1
   - genometools-genometools=1.6.2
-  - kaiju=1.9.0
+  - hifiasm_meta=hamtv0.3
+  - kaiju=1.9.2
   - krona=2.8.1
   - megahit=1.2.9
   - minimap2=2.24
-  - multiqc=1.13
-  - pandas=1.1.5
-  - prokka=1.14.6
-  - python=3.7.12
+  - multiqc=1.14
+  - pandas=1.5.2
+  - plotly
+  - prodigal=2.6.3
+  - pyfastx
+  - python=3.10.8
   - quast=5.2.0
   - samtools=1.15.1
+  - scipy=1.9.3
   - sickle-trim=1.33
   - spades=3.15.5
-  - subread=2.0.1
-  - flye=2.9.1
-  - hifiasm_meta=hamtv0.3
-  - plotly
-  - trnascan-se=2.0.11
-  - pyfastx
+  - subread=2.0.3
+  - trnascan-se=2.0.11
\ No newline at end of file
-- 
GitLab


From 0f7b98f6a26e84c6ff078755bf9ff94ff185da64 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Wed, 18 Jan 2023 17:33:07 +0100
Subject: [PATCH 182/194] Fix for long read feature Count with option -L

---
 modules/feature_counts.nf | 31 ++++++++++++++++---------------
 1 file changed, 16 insertions(+), 15 deletions(-)

diff --git a/modules/feature_counts.nf b/modules/feature_counts.nf
index 63eb79a..79413f0 100644
--- a/modules/feature_counts.nf
+++ b/modules/feature_counts.nf
@@ -1,23 +1,24 @@
 // Quantification of reads on each gene in each sample.
 process FEATURE_COUNTS {
-   tag "${meta.id}"
-   label 'QUANTIFICATION'
-   publishDir "${params.outdir}/06_func_annot/06_2_quantification", mode: 'copy', pattern: "${meta.id}.featureCounts*"
+  tag "${meta.id}"
+  label 'QUANTIFICATION'
+  publishDir "${params.outdir}/06_func_annot/06_2_quantification", mode: 'copy', pattern: "${meta.id}.featureCounts*"
 
-   input:
-     tuple val(meta), file(gff_prokka), file(bam), file(bam_index)
+  input:
+    tuple val(meta), file(gff_prokka), file(bam), file(bam_index)
 
-   output:
-     path "${meta.id}.featureCounts.tsv", emit: count_table
-     path "${meta.id}.featureCounts.tsv.summary", emit: summary
-     path "${meta.id}.featureCounts.stdout"
-     path "v_featurecounts.txt", emit: v_featurecounts
+  output:
+    path "${meta.id}.featureCounts.tsv", emit: count_table
+    path "${meta.id}.featureCounts.tsv.summary", emit: summary
+    path "${meta.id}.featureCounts.stdout"
+    path "v_featurecounts.txt", emit: v_featurecounts
 
-   script:
-     """
-     featureCounts -T ${task.cpus} -p -O -t gene -g ID -a ${gff_prokka} -o ${meta.id}.featureCounts.tsv ${bam} &> ${meta.id}.featureCounts.stdout
-     featureCounts -v &> v_featurecounts.txt
-     """
+  script:
+    if (meta.type=="SR"){ option = "-p --countReadPairs" } else { option = "-L" }
+    """
+    featureCounts -T ${task.cpus} $option -O -t gene -g ID -a ${gff_prokka} -o ${meta.id}.featureCounts.tsv ${bam} &> ${meta.id}.featureCounts.stdout
+    featureCounts -v &> v_featurecounts.txt
+    """
 }
 
 // Create table with sum of reads for each global cluster of genes in each sample.
-- 
GitLab


From 7e63686252675775af6cf7aa7e11a9a712e97dfa Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Wed, 18 Jan 2023 17:42:59 +0100
Subject: [PATCH 183/194] Small fix for reproductible output for metaquast

---
 modules/metaquast.nf         | 3 +--
 subworkflows/02_assembly.nf  | 8 ++++----
 subworkflows/03_filtering.nf | 2 +-
 3 files changed, 6 insertions(+), 7 deletions(-)

diff --git a/modules/metaquast.nf b/modules/metaquast.nf
index bc20ad7..a143cf3 100644
--- a/modules/metaquast.nf
+++ b/modules/metaquast.nf
@@ -7,13 +7,12 @@ process QUAST {
         val outdir
 
     output:
-        path("assembly_metric/"), emit: all
+        path("assembly_metric/*"), emit: all
         path("assembly_metric/report.tsv"), emit: report
         path("v_quast.txt"), emit: v_quast
 
     script:
         """
-        touch report.tsv
         metaquast.py --threads ${task.cpus} --rna-finding --max-ref-number 0 --min-contig 0 ${assemblies} -o assembly_metric/
 
         quast -v &> v_quast.txt
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index ef0d29f..12f75cd 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -39,15 +39,15 @@ workflow STEP_02_ASSEMBLY {
             flowcell:meta.flowcell.join("_"),
             group:meta.group.unique().join(),
             assembly:meta.assembly.unique().join(),
-            type:meta.type.unique().join()], fastq.flatten() ]
+            type:meta.type.unique().join()], fastq.flatten().sort{ it.baseName }  ]
           multiple: fastq.size() > 1
             return [[id:meta.sample.unique().join(),
             sample:meta.sample.unique().join(),
             flowcell:meta.flowcell.join("_"),
             group:meta.group.unique().join(),
             assembly:meta.assembly.unique().join(),
-            type:meta.type.unique().join()], fastq.flatten() ]
-				}
+            type:meta.type.unique().join()], fastq.flatten().sort{ it.baseName }  ]
+        }
 
 			MERGE_FASTQ (ch_reads_flowcell.multiple)
 				.reads
@@ -128,7 +128,7 @@ workflow STEP_02_ASSEMBLY {
 
     ch_assembly_quast = ch_assembly_renamed
                         .map { meta, file -> file }
-                        .collect()
+                        .collect(sort:{it.baseName})
 
     if ( params.type.toUpperCase() == "HIFI" ) {
       CIRCULAR_CONTIGS(assembly_tool, ch_assembly_renamed, ch_infos)
diff --git a/subworkflows/03_filtering.nf b/subworkflows/03_filtering.nf
index bf92a0b..810b5e6 100644
--- a/subworkflows/03_filtering.nf
+++ b/subworkflows/03_filtering.nf
@@ -77,7 +77,7 @@ workflow STEP_03_ASSEMBLY_FILTER {
 
     ch_merged_selected_all = ch_merged_selected
                             .map { meta, file -> file }
-                            .collect()
+                            .collect(sort:{it.baseName})
     QUAST( ch_merged_selected_all, "${filtering_outdir}/03_1_filtered_assembly/" )
     ch_quast_report = QUAST.out.report
 
-- 
GitLab


From 2a68704611a44936f1b8e45bf2198c35d0d33510 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Thu, 19 Jan 2023 12:13:47 +0100
Subject: [PATCH 184/194] Retrieve circular contigs for HiFi on step 02

---
 bin/retrieve_circular_contigs.py | 42 ++++++++++++++++++++---------
 modules/assembly.nf              | 46 +-------------------------------
 modules/circular_contigs.nf      | 34 +++++++++++++++++++++++
 modules/rename_contigs.nf        | 20 ++++++++++++++
 subworkflows/02_assembly.nf      | 24 ++++++++++-------
 5 files changed, 98 insertions(+), 68 deletions(-)
 create mode 100644 modules/circular_contigs.nf
 create mode 100644 modules/rename_contigs.nf

diff --git a/bin/retrieve_circular_contigs.py b/bin/retrieve_circular_contigs.py
index 565190f..7c18ab4 100755
--- a/bin/retrieve_circular_contigs.py
+++ b/bin/retrieve_circular_contigs.py
@@ -4,10 +4,11 @@
 from Bio import SeqIO
 import pandas as pd
 import argparse
+import os
 
 ## Functions
 
-def parse_metaflye(input_fasta, info_file, circular_fasta):
+def parse_metaflye(input_fasta, info_file, outdir):
     """
     metaflye fasta contains no information.
     This is contained in the assembly_info.txt file.
@@ -16,19 +17,31 @@ def parse_metaflye(input_fasta, info_file, circular_fasta):
     # this file may have changed symbols for yes, possibilities include a Y or +
     circular_contigs = list(df[df['circ.'].isin(['Y', '+'])]["#seq_name"])
 
-    with open(circular_fasta, 'wt') as fh_out:
-        for rec in SeqIO.parse(input_fasta, "fasta"):
-            if rec.id in circular_contigs:
-                fh_out.write(rec.format("fasta"))
+    for count, rec in enumerate(SeqIO.parse(input_fasta, "fasta")):
+        if rec.id in circular_contigs:
+            outfile = os.path.join(outdir, f"bin_{count}.fa")
+            with open(outfile, 'wt') as outfl:
+                outfl.write(rec.format("fasta"))
 
-def parse_hifiasm(input_fasta, circular_fasta):
+    # with open(circular_fasta, 'wt') as fh_out:
+    #     for rec in SeqIO.parse(input_fasta, "fasta"):
+    #         if rec.id in circular_contigs:
+    #             fh_out.write(rec.format("fasta"))
+
+def parse_hifiasm(input_fasta, outdir):
     """
     hifiasm-meta circular contig names will have an "c" suffix.
     """
-    with open(circular_fasta, 'wt') as fh_out:
-       for rec in SeqIO.parse(input_fasta, "fasta"):
-            if rec.id.endswith('c'):
-                fh_out.write(rec.format("fasta"))
+    for count, rec in enumerate(SeqIO.parse(input_fasta, "fasta")):
+        if rec.description.endswith('c'):
+            outfile = os.path.join(outdir, f"bin_{count}.fa")
+            with open(outfile, 'wt') as outfl:
+                outfl.write(rec.format("fasta"))
+
+    # with open(circular_fasta, 'wt') as fh_out:
+    #     for rec in SeqIO.parse(input_fasta, "fasta"):
+    #             if rec.id.endswith('c'):
+    #                 fh_out.write(rec.format("fasta"))
 
 def main():
     # Manage parameters
@@ -42,19 +55,22 @@ def main():
     group_input_otu_table.add_argument('-i','--info-file', default=None, help="The path of metaflye asembly info file.")
     # output
     group_output = parser.add_argument_group( 'Outputs' )
-    group_output.add_argument('-o','--output-fasta', default='circular_contigs.fna', help="The path of circular contigs fasta file. [Default: %(default)s]" )
+    group_output.add_argument('-o','--outdir', default='circular_contigs', help="The path of circular contigs directory. [Default: %(default)s]" )
 
     args = parser.parse_args()
 
+    outdir = args.outdir
+    os.makedirs(outdir, exist_ok=True)
+
     # Check for inputs
     if args.assembler == "metaflye":
         if args.info_file is None:
             parser.error("\n\n#ERROR : --info-file is required with metaflye assembler.")
         else:
-            parse_metaflye(args.input_fasta, args.info_file, args.output_fasta)
+            parse_metaflye(args.input_fasta, args.info_file, outdir)
 
     elif args.assembler == "hifiasm-meta":
-        parse_hifiasm(args.input_fasta, args.output_fasta)
+        parse_hifiasm(args.input_fasta, outdir)
 
 
 if __name__ == '__main__':
diff --git a/modules/assembly.nf b/modules/assembly.nf
index 8a7827c..4b7f87f 100644
--- a/modules/assembly.nf
+++ b/modules/assembly.nf
@@ -106,7 +106,7 @@ process METAFLYE {
   output:
   tuple val(meta), path("metaflye_${meta.id}/${meta.id}.contigs.fa"), emit: assembly
   tuple val(meta.id), path("metaflye_${meta.id}/${meta.id}.log"), path("metaflye_${meta.id}/${meta.id}.params.json"), emit: report
-  tuple val(meta.id), path("metaflye_${meta.id}/assembly_info.txt"), emit: infos
+  tuple val(meta), path("metaflye_${meta.id}/assembly_info.txt"), emit: infos
   path "v_metaflye.txt", emit: v_metaflye
 
   script:
@@ -120,48 +120,4 @@ process METAFLYE {
 
   flye --version &> v_metaflye.txt
   """
-}
-
-process CIRCULAR_CONTIGS {
-  tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
-  label 'PYTHON'
-
-  input:
-    val(assembler)
-    tuple val(meta), path("${meta.id}.fna")
-    path(infos)
-
-  output:
-    tuple val(meta), path("${meta.id}.circular.contigs.fna"), emit: circular
-
-  script:
-  """
-    if [ $assembler == 'metaflye' ]
-    then
-      retrieve_circular_contigs.py -a metaflye -f ${meta.id}.fna -i $infos -o ${meta.id}.circular.contigs.fna
-    elif [ $assembler == 'hifiasm-meta' ]
-    then 
-      retrieve_circular_contigs.py -a hifiasm-meta -f ${meta.id}.fna -o ${meta.id}.circular.contigs.fna
-    fi
-  """
-}
-
-process RENAME_CONTIGS {
-  tag "${meta.id}"
-  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
-  label 'PYTHON'
-
-  input:
-    tuple val(meta), path("${meta.id}.raw.fna")
-
-  output:
-    tuple val(meta), path("${meta.id}.fna"), emit: fna
-    path("${meta.id}_original_to_new_contig_name.tsv")
-
-  script:
-  """
-    rename_contigs.py --sample ${meta.id}  --fna_file ${meta.id}.raw.fna --out_fna ${meta.id}.fna -v -t ${meta.id}_original_to_new_contig_name.tsv 
-
-  """
 }
\ No newline at end of file
diff --git a/modules/circular_contigs.nf b/modules/circular_contigs.nf
new file mode 100644
index 0000000..b7bae04
--- /dev/null
+++ b/modules/circular_contigs.nf
@@ -0,0 +1,34 @@
+process CIRCULAR_CONTIGS_METAFLYE {
+  tag "${meta.id}"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
+  label 'PYTHON'
+
+  input:
+    tuple val(meta), path("${meta.id}.fna"), path(infos)
+
+  output:
+    tuple val(meta), path("circular_contigs/"), emit: circular
+
+  script:
+    """
+    retrieve_circular_contigs.py -a 'metaflye' -f ${meta.id}.fna -i ${infos} -o circular_contigs/
+    """
+}
+
+
+process CIRCULAR_CONTIGS_HIFIASM {
+  tag "${meta.id}"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
+  label 'PYTHON'
+
+  input:
+    tuple val(meta), path("${meta.id}.fna")
+
+  output:
+    tuple val(meta), path("circular_contigs/"), emit: circular
+
+  script:
+    """
+    retrieve_circular_contigs.py -a 'hifiasm-meta' -f ${meta.id}.fna -o circular_contigs/
+    """
+}
\ No newline at end of file
diff --git a/modules/rename_contigs.nf b/modules/rename_contigs.nf
new file mode 100644
index 0000000..d6b67a9
--- /dev/null
+++ b/modules/rename_contigs.nf
@@ -0,0 +1,20 @@
+process RENAME_CONTIGS {
+  tag "${meta.id}"
+  publishDir "${params.outdir}/02_assembly/02_1_primary_assembly", mode: 'copy'
+  label 'PYTHON'
+
+  input:
+    tuple val(meta), path("${meta.id}.raw.fna")
+    
+
+
+  output:
+    tuple val(meta), path("${meta.id}.fna"), emit: fna
+    path("${meta.id}_original_to_new_contig_name.tsv")
+
+  script:
+  """
+    rename_contigs.py --sample ${meta.id}  --fna_file ${meta.id}.raw.fna --out_fna ${meta.id}.fna -v -t ${meta.id}_original_to_new_contig_name.tsv 
+
+  """
+}
\ No newline at end of file
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 12f75cd..94e1771 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -1,4 +1,6 @@
-include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE; CIRCULAR_CONTIGS; RENAME_CONTIGS } from '../modules/assembly'
+include { METASPADES; MEGAHIT; HIFIASM_META; METAFLYE } from '../modules/assembly'
+include { CIRCULAR_CONTIGS_METAFLYE; CIRCULAR_CONTIGS_HIFIASM } from '../modules/circular_contigs.nf'
+include { RENAME_CONTIGS } from '../modules/rename_contigs.nf'
 include { QUAST as ASSEMBLY_QUAST} from '../modules/metaquast'
 include { READS_DEDUPLICATION } from '../modules/reads_deduplication'
 include { MINIMAP2 } from '../modules/read_alignment'
@@ -19,7 +21,8 @@ workflow STEP_02_ASSEMBLY {
     ch_bwa_mem_v = Channel.empty()
     ch_minimap2_v = Channel.empty()
     ch_samtools_v = Channel.empty()
-
+    ch_infos_metaflye = Channel.empty()
+    ch_circular = Channel.empty() 
 
     ch_assembly = assembly 
     ch_reads = reads
@@ -47,7 +50,7 @@ workflow STEP_02_ASSEMBLY {
             group:meta.group.unique().join(),
             assembly:meta.assembly.unique().join(),
             type:meta.type.unique().join()], fastq.flatten().sort{ it.baseName }  ]
-        }
+				}
 
 			MERGE_FASTQ (ch_reads_flowcell.multiple)
 				.reads
@@ -99,7 +102,6 @@ workflow STEP_02_ASSEMBLY {
     }
 
     if (!has_assembly){
-      ch_circular = Channel.empty() 
       if (assembly_tool == 'metaspades') {
           METASPADES(ch_reads_assembly)
           ch_assembly = METASPADES.out.assembly
@@ -109,14 +111,13 @@ workflow STEP_02_ASSEMBLY {
           ch_assembly = MEGAHIT.out.assembly
           ch_assembler_v = MEGAHIT.out.v_megahit
       } else if (assembly_tool == 'hifiasm-meta') {
-          ch_infos = Channel.empty()
           HIFIASM_META(ch_reads_assembly)
           ch_assembly = HIFIASM_META.out.assembly
           ch_assembler_v = HIFIASM_META.out.v_hifiasm_meta
       } else if (assembly_tool == 'metaflye') {
           METAFLYE(ch_reads_assembly)
           ch_assembly = METAFLYE.out.assembly
-          ch_infos = METAFLYE.out.infos
+          ch_infos_metaflye = METAFLYE.out.infos
           ch_assembler_v = METAFLYE.out.v_metaflye
       } else {
         exit 1,  "Invalid assembly parameter: ${assembly_tool}"
@@ -130,10 +131,13 @@ workflow STEP_02_ASSEMBLY {
                         .map { meta, file -> file }
                         .collect(sort:{it.baseName})
 
-    if ( params.type.toUpperCase() == "HIFI" ) {
-      CIRCULAR_CONTIGS(assembly_tool, ch_assembly_renamed, ch_infos)
-      ch_circular = CIRCULAR_CONTIGS.out.circular
-
+    if (assembly_tool == 'hifiasm-meta') {
+      CIRCULAR_CONTIGS_HIFIASM(ch_assembly_renamed)
+      ch_circular = CIRCULAR_CONTIGS_HIFIASM.out.circular
+    } else if (assembly_tool == 'metaflye') {
+      ch_assembly_metaflye_infos = ch_assembly_renamed.join(ch_infos_metaflye)
+      CIRCULAR_CONTIGS_METAFLYE(ch_assembly_metaflye_infos)
+      ch_circular = CIRCULAR_CONTIGS_METAFLYE.out.circular
     }
 
     ASSEMBLY_QUAST( ch_assembly_quast,"02_assembly/02_1_primary_assembly/")
-- 
GitLab


From 2adbe555696479ddc3f46a3d45aabdf22e1a0740 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Thu, 19 Jan 2023 12:15:56 +0100
Subject: [PATCH 185/194] Update poster name

---
 communication/Poster_ECCB2022.pdf              | Bin 0 -> 836151 bytes
 ...m2020_poster_9.pdf => Poster_JOBIM2020.pdf} | Bin
 ...Jobim_metagWGS.pdf => Poster_JOBIM2022.pdf} | Bin
 3 files changed, 0 insertions(+), 0 deletions(-)
 create mode 100755 communication/Poster_ECCB2022.pdf
 rename communication/{jobim2020_poster_9.pdf => Poster_JOBIM2020.pdf} (100%)
 rename communication/{Poster_Jobim_metagWGS.pdf => Poster_JOBIM2022.pdf} (100%)

diff --git a/communication/Poster_ECCB2022.pdf b/communication/Poster_ECCB2022.pdf
new file mode 100755
index 0000000000000000000000000000000000000000..c9803fbc93974f68a53c92df71b4a47e6e298721
GIT binary patch
literal 836151
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%0A__
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%0D8Se(ST<oWOma(
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
Uy@u={XHgK9OHM8%BmDCJ04E+U00000

literal 0
HcmV?d00001

diff --git a/communication/jobim2020_poster_9.pdf b/communication/Poster_JOBIM2020.pdf
similarity index 100%
rename from communication/jobim2020_poster_9.pdf
rename to communication/Poster_JOBIM2020.pdf
diff --git a/communication/Poster_Jobim_metagWGS.pdf b/communication/Poster_JOBIM2022.pdf
similarity index 100%
rename from communication/Poster_Jobim_metagWGS.pdf
rename to communication/Poster_JOBIM2022.pdf
-- 
GitLab


From 691adf488f65386346da693534d530fa37b62919 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Fri, 20 Jan 2023 16:31:04 +0100
Subject: [PATCH 186/194] Use circular contigs in binning

---
 main.nf                    |  7 +++---
 modules/binning.nf         | 18 ++++++++------
 subworkflows/08_binning.nf | 49 +++++++++++++++++++++++++-------------
 3 files changed, 47 insertions(+), 27 deletions(-)

diff --git a/main.nf b/main.nf
index b42462b..51f06c6 100644
--- a/main.nf
+++ b/main.nf
@@ -335,6 +335,7 @@ workflow {
   ch_software_versions_S07 = Channel.empty()
   ch_software_versions_S08 = Channel.empty()
   ch_software_versions_total = Channel.empty()
+  ch_circular = Channel.empty()
 
   ch_multiqc_config = file(params.multiqc_config, checkIfExists: true)
 
@@ -376,9 +377,7 @@ workflow {
     ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
 
     ch_software_versions_S02 = S02_ASSEMBLY.out.software_versions
-    if (params.type.toUpperCase() == 'HIFI') {
-      ch_circular = S02_ASSEMBLY.out.circular
-    }
+    ch_circular = S02_ASSEMBLY.out.circular
   }
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.skip_filtering ) {
@@ -451,7 +450,7 @@ workflow {
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_binning ) {
     ch_quast=ch_quast_after_filter_report.ifEmpty(ch_quast_before_filter_report)
     
-    S08_BINNING( ch_reads, ch_assembly, ch_bam, ch_gtbdtk_db, ch_quast )
+    S08_BINNING( ch_reads, ch_assembly, ch_bam, ch_gtbdtk_db, ch_quast, ch_circular)
     ch_bins_abundances_report = S08_BINNING.out.bins_abundances_report
     ch_bins_stats_report = S08_BINNING.out.bins_stats_report
 
diff --git a/modules/binning.nf b/modules/binning.nf
index 9cc6879..6d90b0f 100644
--- a/modules/binning.nf
+++ b/modules/binning.nf
@@ -124,13 +124,13 @@ process BINETTE {
     val max_contamination
       
   output:
-    tuple val(meta), path("bin_refinement/final_bins/*"), emit: bins
+    tuple val(meta), path("bin_refinement/final_bins/*"), emit: bins, optional: true
     tuple val(meta), path('bins_stats.tsv'), emit: checkm_stats
     path "v_binette.txt", emit: v_binette
 
 	script:
   """
-    binette.py -v -m 0 -t ${task.cpus} -d ${bins.join(' ')} -c ${contigs} -o bin_refinement/
+    binette -v -m ${min_completeness} -t ${task.cpus} -d ${bins.join(' ')} -c ${contigs} -o bin_refinement/
 
     sed -i 's/size/Size/' bin_refinement/final_bins_quality_reports.tsv 
     sed -i 's/^/${meta.id}_bin_/' bin_refinement/final_bins_quality_reports.tsv 
@@ -139,13 +139,17 @@ process BINETTE {
 
     cd bin_refinement/final_bins
 
-    for filename in *fa; 
-    do 
-      mv \$filename "${meta.id}_\$filename"
-    done
+    if [[ \$(ls ./) ]]  #check if directoy not empty
+    then 
+      for filename in *fa; 
+      do 
+        mv \$filename "${meta.id}_\$filename"
+      done
+    fi
 
     cd ../..
-    touch v_binette.txt
+    
+    binette --version > v_binette.txt
   """
 }
 
diff --git a/subworkflows/08_binning.nf b/subworkflows/08_binning.nf
index df6ca95..eceb6a0 100644
--- a/subworkflows/08_binning.nf
+++ b/subworkflows/08_binning.nf
@@ -16,6 +16,7 @@ workflow STEP_08_BINNING {
   bam
   gtdbtk_db
   quast
+  circular
 
   main:
 
@@ -136,11 +137,11 @@ workflow STEP_08_BINNING {
   ch_concoct_bins = CONCOCT.out.bins.filter{ t -> t[1].list().size()}
   ch_concoct_v = CONCOCT.out.v_concoct
 
-
+  ch_circular = circular.filter{ t -> t[1].list().size()}
   //////////////////
   //// BIN REFINEMENT  
   //////////////////
-  ch_bins_set = ch_metabat_bins.mix(ch_concoct_bins, ch_maxbin_bins)
+  ch_bins_set = ch_metabat_bins.mix(ch_concoct_bins, ch_maxbin_bins, ch_circular)
                                 .groupTuple(by: [0])
                                 .branch{ meta, bins ->
                                     multiple: bins.size() > 1
@@ -156,12 +157,23 @@ workflow STEP_08_BINNING {
   ch_binette_bins = Channel.empty()
   ch_binette_stats = Channel.empty()
   ch_bins_assembly = Channel.empty()
+  ch_drep_fna = Channel.empty()
+  ch_binette_bins_filter = Channel.empty()
+  ch_binette_stats_filter = Channel.empty()
+  ch_bins_drep = Channel.empty()
+  ch_bam_bins = Channel.empty()
+  ch_reads_fna = Channel.empty()
+  ch_gtdbtk_affi = Channel.empty()
+  ch_drep_stats = Channel.empty()
 
   ch_bins_assembly = ch_bins_set.multiple.join(ch_assembly)
 
   BINETTE(ch_bins_assembly, params.min_completeness, params.max_contamination)
   ch_binette_bins = BINETTE.out.bins
-  ch_binette_stats = BINETTE.out.checkm_stats
+
+  ch_binette_stats = BINETTE.out.checkm_stats.join(ch_binette_bins)
+                                              .map { meta, stats, bins -> 
+                                                    [ meta, stats ] }
   
   ch_bins_assembly = ch_binette_bins.join(ch_assembly)
 
@@ -183,16 +195,20 @@ workflow STEP_08_BINNING {
   ///// DEREPLICATION BIN 
   ////////////////////////
 
-  ch_bins_drep = Channel.empty()
-  ch_binette_bins = ch_binette_bins.map { meta, file -> file}
-                                   .collect()
+  ch_bins_filter=ch_binette_bins.filter{ it[1].getClass() == java.util.ArrayList }
+  ch_binette_bins_filter = ch_bins_filter.map { meta, file -> file}
+                                         .collect()
 
-  ch_binette_stats = ch_binette_stats.map { meta, file -> file}
-                                     .collect()
-  
-  DREP(ch_binette_stats, ch_binette_bins, params.drep_threshold)
+  ch_binette_stats_filter = ch_binette_stats.join(ch_bins_filter)
+                                            .map { meta, stats, bins -> stats }
+                                            .collect()
+
+
+  DREP(ch_binette_stats_filter, ch_binette_bins_filter, params.drep_threshold)
   ch_bins_drep = DREP.out.drep_bins_folder
   ch_dRep_v = DREP.out.v_dRep
+  ch_drep_fna = DREP.out.fna
+  ch_drep_stats = DREP.out.output_drep_stats
 
   ///////////////////////////////
   ///// TAXONOMIC AFFILIATION BIN
@@ -200,35 +216,36 @@ workflow STEP_08_BINNING {
 
   GTDBTK(ch_bins_drep, gtdbtk_db)
   ch_gtdbtk_v = GTDBTK.out.v_gtdbtk
+  ch_gtdbtk_affi = GTDBTK.out.gtdbtk_affiliations_predictions
 
   /////////////////////////////
   ////GENOMES ABUNDANCES
   /////////////////////////////
-  ch_reads_fna = reads.combine(DREP.out.fna)
+  ch_reads_fna = reads.combine(ch_drep_fna)
                 .map { meta, reads, bins -> [meta, bins, reads] }
 
   if (params.type == 'SR') {
     BWA_MEM(ch_reads_fna, "08_binning/08_4_mapping_on_final_bins/mapping")
-    ch_bam = BWA_MEM.out.bam
+    ch_bam_bins = BWA_MEM.out.bam
     ch_bwa_mem_v = BWA_MEM.out.v_bwa_mem2
     ch_samtools_v = BWA_MEM.out.v_samtools
   } else {
     MINIMAP2(ch_reads_fna, "08_binning/08_4_mapping_on_final_bins/mapping")
-    ch_bam = MINIMAP2.out.bam
+    ch_bam_bins = MINIMAP2.out.bam
     ch_minimap2_v = MINIMAP2.out.v_minimap2
     ch_samtools_v = MINIMAP2.out.v_samtools
   }
 
   ch_collect_coverages = Channel.empty()
   ch_collect_flagstats = Channel.empty()
-  GET_ALIGNMENT_METRICS(ch_bam, "08_binning/08_4_mapping_on_final_bins/stats")
+  GET_ALIGNMENT_METRICS(ch_bam_bins, "08_binning/08_4_mapping_on_final_bins/stats")
 
   ch_collect_coverages = GET_ALIGNMENT_METRICS.out.sam_coverage.map {id, file -> file}
               .collect()
   ch_collect_flagstats = GET_ALIGNMENT_METRICS.out.sam_flagstat.collect()
 
-  GENOMES_ABUNDANCES_PER_SAMPLE(ch_collect_coverages, ch_collect_flagstats, \
-   ch_bins_drep, DREP.out.output_drep_stats, GTDBTK.out.gtdbtk_affiliations_predictions,
+  GENOMES_ABUNDANCES_PER_SAMPLE(ch_collect_coverages, ch_collect_flagstats, 
+   ch_bins_drep, ch_drep_stats , ch_gtdbtk_affi ,
    ch_heatmap_header_multiqc, ch_table_header_multiqc)
 
   ch_bins_abundances_report = GENOMES_ABUNDANCES_PER_SAMPLE.out.report
-- 
GitLab


From 0065892cd8d9e63ad481a9ab55ca148437c2c43d Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Fri, 20 Jan 2023 16:32:24 +0100
Subject: [PATCH 187/194] Update doc

---
 bin/scrape_software_versions.py |  4 +-
 docs/installation.md            |  2 +-
 docs/output.md                  | 85 +++++++++++++++++----------------
 docs/usage.md                   |  2 +-
 main.nf                         |  7 +--
 nextflow.config                 |  3 --
 6 files changed, 49 insertions(+), 54 deletions(-)

diff --git a/bin/scrape_software_versions.py b/bin/scrape_software_versions.py
index 4279474..199170a 100755
--- a/bin/scrape_software_versions.py
+++ b/bin/scrape_software_versions.py
@@ -30,7 +30,7 @@ regexes = {
     'Maxbin': ['v_maxbin.txt', r"MaxBin  (\S+)"],
     'Metabat2': ['v_metabat2.txt', r"version (\S+)"],
     'CheckM2': ['v_checkm2.txt', r"(\S+)"],
-    'Metawrap': ['v_metawrap.txt', r"metawrap (\S+)"],
+    'Binette': ['v_binette.txt', r"(\S+)"],
     'GTDBTK': ['v_gtdbtk.txt', r"...::: GTDB-Tk v(\S+)"],
     'dRep': ['v_dRep.txt', r"version (\S+)"],
     'tRNAscan-SE': ['v_tRNAscan.txt', r"tRNAscan-SE (\S+)"],
@@ -63,7 +63,7 @@ results['Concoct'] = '<span style="color:#999999;\">N/A</span>'
 results['Metabat2'] = '<span style="color:#999999;\">N/A</span>'
 results['Maxbin'] = '<span style="color:#999999;\">N/A</span>'
 results['CheckM2'] = '<span style="color:#999999;\">N/A</span>'
-results['Metawrap'] = '<span style="color:#999999;\">N/A</span>'
+results['Binette'] = '<span style="color:#999999;\">N/A</span>'
 results['dRep'] = '<span style="color:#999999;\">N/A</span>'
 results['GTDBTK'] = '<span style="color:#999999;\">N/A</span>'
 results['MultiQC'] = '<span style="color:#999999;\">N/A</span>'
diff --git a/docs/installation.md b/docs/installation.md
index f2d67cc..13a473c 100644
--- a/docs/installation.md
+++ b/docs/installation.md
@@ -57,7 +57,7 @@ singularity pull binning.sif oras://registry.forgemia.inra.fr/genotoul-bioinfo/m
 
 two files (`metagwgs.sif` and `binning.sif`) must have been downloaded.
 
-**NOTE: if you are using the devel branch, you must use `oras://registry.forgemia.inra.fr/genotoul-bioinfo/metagwgs/binning_devel:latest` and `oras://registry.forgemia.inra.fr/genotoul-bioinfo/metagwgs/metagwgs_devel:latest`**
+**NOTE: if you are using the devel branch, you must use ` singularity pull binning.sif oras://registry.forgemia.inra.fr/genotoul-bioinfo/metagwgs/binning_devel:latest` and ` singularity pull metagwgs.sif oras://registry.forgemia.inra.fr/genotoul-bioinfo/metagwgs/metagwgs_devel:latest`**
 
 ### Solution 2: build the two containers.
 
diff --git a/docs/output.md b/docs/output.md
index 26ce39a..f32070e 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -89,6 +89,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `assembly_metric`              | Contains metaQUAST quality control files of contigs.                                                                             |
 | `<assembly_tool>_SAMPLE_NAME/` | output files of the assembly tool. It contains logs and original fasta files of the assembly before renaming.                    |
 | `SAMPLE_NAME_original_to_new_contig_name.tsv` | Tabular file with two fields: original contig name from the assembly tool and the new contig name given by the pipeline.                   |
+| `circular_contigs/`                  | only for HiFi: 
 
 #### **02_assembly/02_2_deduplicated_reads**
 
@@ -161,36 +162,36 @@ The `results/` directory contains a sub-directory for each step launched:
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
-| `SAMPLE_NAME.cd-hit-est.[cd-hit percentage identity].fasta` | Nucleotide sequences of representatives genes ("intra-sample clusters") generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
-| `SAMPLE_NAME.cd-hit-est.[cd-hit percentage identity].fasta.clstr` | Text file of list of intra-sample clusters generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
+| `SAMPLE_NAME.cd-hit-est.[cd-hit percentage identity].fasta`                     | Nucleotide sequences of representatives genes ("intra-sample clusters") generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
+| `SAMPLE_NAME.cd-hit-est.[cd-hit percentage identity].fasta.clstr`               | Text file of list of intra-sample clusters generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
 | `SAMPLE_NAME.cd-hit-est.[cd-hit percentage identity].table_cluster_contigs.txt` | Correspondance table of intra-sample clusters and initial genes. One line = one correspondance between an intra-sample cluster (first column) and an initial gene (second column). |
-| `All-cd-hit-est.[cd-hit percentage identity].fasta` | Nucleotide sequences of global representatives genes ("inter-sample clusters") generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
-| `All-cd-hit-est.[cd-hit percentage identity].fasta.clstr` | Text file of list of inter-sample clusters generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
-| `table_clstr.txt` | Correspondance table of inter-sample clusters and intra-sample clusters. One line = one correspondance between an inter-sample cluster (first column) and an intra-sample cluster (second column). |
+| `All-cd-hit-est.[cd-hit percentage identity].fasta`                             | Nucleotide sequences of global representatives genes ("inter-sample clusters") generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
+| `All-cd-hit-est.[cd-hit percentage identity].fasta.clstr`                       | Text file of list of inter-sample clusters generated by cd-hit-est with [cd-hit percentage identity] percentage identity. |
+| `table_clstr.txt`                                                               | Correspondance table of inter-sample clusters and intra-sample clusters. One line = one correspondance between an inter-sample cluster (first column) and an intra-sample cluster (second column). |
 
 #### **06_func_annot/06_2_quantification/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
-| `SAMPLE_NAME.featureCounts.tsv.summary` | featureCounts statistics by sample. |
-| `SAMPLE_NAME.featureCounts.stdout` | featureCounts log file by sample. |
-| `SAMPLE_NAME.featureCounts.tsv` | featureCounts output file by sample.|
-| `Correspondence_global_clstr_contigs.txt` | Correspondance table of inter-sample clusters and initial genes. One line = one correspondance between an inter-sample cluster (first column) and an initial gene (second column). |
-| `Clusters_Count_table_all_samples.txt` | Abundance table of reads. Each cell contains the sum of aligned reads on each initial gene of each inter-sample cluster for each sample (inter_sample clusters in rows and samples in colums).|
+| `SAMPLE_NAME.featureCounts.tsv.summary`     | featureCounts statistics by sample. |
+| `SAMPLE_NAME.featureCounts.stdout`          | featureCounts log file by sample. |
+| `SAMPLE_NAME.featureCounts.tsv`             | featureCounts output file by sample.|
+| `Correspondence_global_clstr_contigs.txt`   | Correspondance table of inter-sample clusters and initial genes. One line = one correspondance between an inter-sample cluster (first column) and an initial gene (second column). |
+| `Clusters_Count_table_all_samples.txt`      | Abundance table of reads. Each cell contains the sum of aligned reads on each initial gene of each inter-sample cluster for each sample (inter_sample clusters in rows and samples in colums).|
 
 #### **06_func_annot/06_3_functional_annotation/**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `SAMPLE_NAME_diamond_one2one.emapper.seed_orthologs` | eggNOG-mapper intermediate file containing seed matches onto eggNOG database. |
-| `SAMPLE_NAME_diamond_one2one.emapper.annotations` | eggNOG-mapper final file containing functional annotations for genes with a matches into eggNOG database. |
-| `SAMPLE_NAME.best_hit` | Diamond best hits results for each gene. Best hits are diamond hits with the maximum bitScore for this gene. |
-| `Quantifications_and_functional_annotations.tsv` | Table where a row corresponds to an inter-sample cluster. Columns corresponds to quantification of the sum of aligned reads on all genes of each inter-sample cluster (columns `*featureCounts.tsv`), sum of abundance in all samples (column `sum`), eggNOG-mapper results (from `seed_eggNOG_ortholog` to `PFAMs` column) and diamond best hits results (last two columns `sseqid` and `stitle` correspond to `diamond_db_id`and `diamond_db_description`). |
-| `GOs_abundance.tsv` | Quantification table storing for each GO term (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
-| `KEGG_ko_abundance.tsv` | Quantification table storing for each KEGG_ko (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
-| `KEGG_Pathway_abundance.tsv` | Quantification table storing for each KEGG_Pathway (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
-| `KEGG_Module_abundance.tsv` | Quantification table storing for each KEGG_Module (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
-| `PFAM_abundance.tsv` | Quantification table storing for each PFAM (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
+| `SAMPLE_NAME_diamond_one2one.emapper.annotations`    | eggNOG-mapper final file containing functional annotations for genes with a matches into eggNOG database. |
+| `SAMPLE_NAME.best_hit`                               | Diamond best hits results for each gene. Best hits are diamond hits with the maximum bitScore for this gene. |
+| `Quantifications_and_functional_annotations.tsv`     | Table where a row corresponds to an inter-sample cluster. Columns corresponds to quantification of the sum of aligned reads on all genes of each inter-sample cluster (columns `*featureCounts.tsv`), sum of abundance in all samples (column `sum`), eggNOG-mapper results (from `seed_eggNOG_ortholog` to `PFAMs` column) and diamond best hits results (last two columns `sseqid` and `stitle` correspond to `diamond_db_id`and `diamond_db_description`). |
+| `GOs_abundance.tsv`                                  | Quantification table storing for each GO term (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
+| `KEGG_ko_abundance.tsv`                              | Quantification table storing for each KEGG_ko (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
+| `KEGG_Pathway_abundance.tsv`                         | Quantification table storing for each KEGG_Pathway (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
+| `KEGG_Module_abundance.tsv`                          | Quantification table storing for each KEGG_Module (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
+| `PFAM_abundance.tsv`                                 | Quantification table storing for each PFAM (rows) the sum of aligned reads into all genes having this functional annotation for each sample (columns). |
 
 ### **07_taxo_affi/**
 
@@ -198,21 +199,21 @@ The `results/` directory contains a sub-directory for each step launched:
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
-| `SAMPLE_NAME/SAMPLE_NAME.pergene.tsv` | Taxonomic affiliation of genes. One line corresponds to a gene (1st column), its corresponding taxon id (2nd column), its corresponding lineage (3rd column) and the tax ids of each level of this lineage (4th column). |
-| `SAMPLE_NAME/SAMPLE_NAME.warn.tsv` | List of genes with a hit without corresponding taxonomic affiliation. Each line corresponds to a gene (1st column), the reason why the gene is in this list (2nd column) and match ids into the database used during `05_alignment/05_2_database_alignment/` (3rd column). |
-| `SAMPLE_NAME/top_taxons_per_contig.tsv` | Possible affiliation taxons at each rank and for each contig (one line per contig). The score associated with the taxon is indicated in parenthesis. This file can be helpful to investigate contig affiliation. |
-| `SAMPLE_NAME/SAMPLE_NAME.percontig.tsv` | Taxonomic affiliation of contigs. One line corresponds to a contig (1st column), its corresponding taxon id (2nd column), its corresponding lineage (3rd column) and the tax ids of each level of this lineage (4th column). |
-| `SAMPLE_NAME/SAMPLE_NAME_quantif_percontig.tsv` | Quantification table of reads aligned on contigs affiliated to each lineage of the first column. One line = one taxonomic affiliation (1st column, `lineage_by_level`), the corresponding taxon id (2nd column, `consensus_tax_id`), the tax ids of each level of this taxonomic affiliation (3rd column, `tax_id_by_level`), the name of contigs affiliated to this lineage (4th column, `name_contigs`), the number of contigs affiliated to this lineage (5th column, `nb_contigs`), the sum of the number of reads aligned to these contigs (6th column, `nb_reads`) and the mean depth of these contigs (6th column, `depth`). |
-| `SAMPLE_NAME/SAMPLE_NAME_quantif_percontig_by_[taxonomic_level].tsv` | One file by taxonomic level (superkingdom, phylum, order, class, family, genus, species) for the sample `SAMPLE_NAME`. Quantification table of reads aligned on contigs affiliated to each lineage of the corresponding [taxonomic level]. One line = one taxonomic affiliation at this [taxonomic level] with is taxon id (1st column, `tax_id_by_level`), its lineage (2nd column, `lineage_by_level`), the name of contigs affiliated to this lineage (3rd column, `name_contigs`), the number of contigs affiliated to this lineage (4th column, `nb_contigs`), the sum of the number of reads aligned to these contigs (5th column, `nb_reads`) and the mean depth of these contigs (6th column, `depth`). |
+| `SAMPLE_NAME/SAMPLE_NAME.pergene.tsv`                                     | Taxonomic affiliation of genes. One line corresponds to a gene (1st column), its corresponding taxon id (2nd column), its corresponding lineage (3rd column) and the tax ids of each level of this lineage (4th column). |
+| `SAMPLE_NAME/SAMPLE_NAME.warn.tsv`                                        | List of genes with a hit without corresponding taxonomic affiliation. Each line corresponds to a gene (1st column), the reason why the gene is in this list (2nd column) and match ids into the database used during `05_alignment/05_2_database_alignment/` (3rd column). |
+| `SAMPLE_NAME/top_taxons_per_contig.tsv`                                   | Possible affiliation taxons at each rank and for each contig (one line per contig). The score associated with the taxon is indicated in parenthesis. This file can be helpful to investigate contig affiliation. |
+| `SAMPLE_NAME/SAMPLE_NAME.percontig.tsv`                                   | Taxonomic affiliation of contigs. One line corresponds to a contig (1st column), its corresponding taxon id (2nd column), its corresponding lineage (3rd column) and the tax ids of each level of this lineage (4th column). |
+| `SAMPLE_NAME/SAMPLE_NAME_quantif_percontig.tsv`                           | Quantification table of reads aligned on contigs affiliated to each lineage of the first column. One line = one taxonomic affiliation (1st column, `lineage_by_level`), the corresponding taxon id (2nd column, `consensus_tax_id`), the tax ids of each level of this taxonomic affiliation (3rd column, `tax_id_by_level`), the name of contigs affiliated to this lineage (4th column, `name_contigs`), the number of contigs affiliated to this lineage (5th column, `nb_contigs`), the sum of the number of reads aligned to these contigs (6th column, `nb_reads`) and the mean depth of these contigs (6th column, `depth`). |
+| `SAMPLE_NAME/SAMPLE_NAME_quantif_percontig_by_[taxonomic_level].tsv`      | One file by taxonomic level (superkingdom, phylum, order, class, family, genus, species) for the sample `SAMPLE_NAME`. Quantification table of reads aligned on contigs affiliated to each lineage of the corresponding [taxonomic level]. One line = one taxonomic affiliation at this [taxonomic level] with is taxon id (1st column, `tax_id_by_level`), its lineage (2nd column, `lineage_by_level`), the name of contigs affiliated to this lineage (3rd column, `name_contigs`), the number of contigs affiliated to this lineage (4th column, `nb_contigs`), the sum of the number of reads aligned to these contigs (5th column, `nb_reads`) and the mean depth of these contigs (6th column, `depth`). |
 | `SAMPLE_NAME/graphs/SAMPLE_NAME_aln_diamond.m8_contig_taxonomy_level.pdf` | Figure representing the number of contigs (y-axis) affiliated to each taxonomy levels (x-axis). |
-| `SAMPLE_NAME/top_taxons_per_contig.tsv` | Details of top possible taxons per contig and for each taxonomic rank. For each rank, there is a list of the top possible taxons and their weigth in parentesis (only taxons with a weigth > 1 is written). For example in the genus column we can have `Escherichia (68.0);Shigella (20.0);Enterobacter (4.0);Salmonella (4.0);Felsduovirus (4.0)`. This file can be useful to understand an affiliation in detail.  |
+| `SAMPLE_NAME/top_taxons_per_contig.tsv`                                   | Details of top possible taxons per contig and for each taxonomic rank. For each rank, there is a list of the top possible taxons and their weigth in parentesis (only taxons with a weigth > 1 is written). For example in the genus column we can have `Escherichia (68.0);Shigella (20.0);Enterobacter (4.0);Salmonella (4.0);Felsduovirus (4.0)`. This file can be useful to understand an affiliation in detail.  |
 
 
 #### **07_taxo_affi/07_2_affiliation_merged**
 
 | File      | Description                             |
 | ----------------------- | --------------------------------------- |
-| `quantification_by_contig_lineage_all.tsv` | Quantification table of reads aligned on contigs affiliated to each lineage. One line = one taxonomic affiliation with its lineage (1st column, `lineage_by_level`), the taxon id at each level of this lineage (2nd column, `tax_id_by_level`), and then all next 3-columns blocks correspond to one sample. Each 3-column block corresponds to the name of contigs affiliated to this lineage (1st column, `name_contigs_SAMPLE_NAME_quantif_percontig`), the number of contigs affiliated to this lineage (2nd column, `nb_contigs_SAMPLE_NAME_quantif_percontig`), the sum of the number of reads aligned to these contigs (3rd column, `nb_reads_SAMPLE_NAME_quantif_percontig`) and the mean depth of these contigs (4th column, `depth_SAMPLE_NAME_quantif_percontig`). |
+| `quantification_by_contig_lineage_all.tsv`               | Quantification table of reads aligned on contigs affiliated to each lineage. One line = one taxonomic affiliation with its lineage (1st column, `lineage_by_level`), the taxon id at each level of this lineage (2nd column, `tax_id_by_level`), and then all next 3-columns blocks correspond to one sample. Each 3-column block corresponds to the name of contigs affiliated to this lineage (1st column, `name_contigs_SAMPLE_NAME_quantif_percontig`), the number of contigs affiliated to this lineage (2nd column, `nb_contigs_SAMPLE_NAME_quantif_percontig`), the sum of the number of reads aligned to these contigs (3rd column, `nb_reads_SAMPLE_NAME_quantif_percontig`) and the mean depth of these contigs (4th column, `depth_SAMPLE_NAME_quantif_percontig`). |
 | `quantification_by_contig_lineage_[taxonomic_level].tsv` | One file by taxonomic level (superkingdom, phylum, order, class, family, genus, species). Quantification table of reads aligned on contigs affiliated to each lineage of the corresponding [taxonomic level]. One line = one taxonomic affiliation at this [taxonomic level] with its taxon id (1st column, `tax_id_by_level`), its lineage (2nd column, `lineage_by_level`), and then all next 3-columns blocks correspond to one sample. Each 3-column block corresponds to the name of contigs affiliated to this lineage (1st column, `name_contigs_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`), the number of contigs affiliated to this lineage (2nd column, `nb_contigs_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`) and the sum of the number of reads aligned to these contigs (3rd column, `nb_reads_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`) and the mean depth of these contigs (4th column, `depth_SAMPLE_NAME_quantif_percontig_by_[taxonomic_level]`). |
 
 
@@ -222,8 +223,8 @@ The `results/` directory contains a sub-directory for each step launched:
 | ----------------------- | --------------------------------------- |
 | `krona_mean_depth_abundance.html` | Krona plot of the taxonomic affiliation of contigs. The abundance of a taxon is the percentage of the depth of the contigs affiliated to this taxon.  |
 | `krona_read_count_abundance.html` | Krona plot of the taxonomic affiliation of contigs. The abundance of a taxon is the percentage of reads mapping the contigs affiliated to this taxon. |
-| `abundance_per_rank.html` | This plot represents the abundance of affiliation made for each taxonomic rank.|
-| `most_abundant_taxa.html` | This plot represents the abundance of the 10 most abundant taxa at each taxonomic rank and for each sample.|
+| `abundance_per_rank.html`         | This plot represents the abundance of affiliation made for each taxonomic rank.|
+| `most_abundant_taxa.html`         | This plot represents the abundance of the 10 most abundant taxa at each taxonomic rank and for each sample.|
 
 ### **08_binning/**
 
@@ -236,19 +237,19 @@ The `results/` directory contains a sub-directory for each step launched:
 
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
-| `SAMPLE_NAME/concoct`| This directory contains bins fasta files from the individual binning tool CONCOCT (see informations [here](https://concoct.readthedocs.io/en/latest/)). |
-| `SAMPLE_NAME/maxbin2`| This directory contains bins fasta files from the individual binning tool MaxBin2(see informations [here](https://academic.oup.com/bioinformatics/article/32/4/605/1744462)). |
-| `SAMPLE_NAME/metabat2`| This directory contains bins fasta files from the individual binning tool MetaBAT2                     (see informations [here](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6662567/)). |
-| `SAMPLE_NAME/bin_refinement`| This directory contains bins fasta files and statistics from the aggregate binning tool BINETTE, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://forgemia.inra.fr/jean.mainguy/binette)). |
+| `SAMPLE_NAME/concoct`                              | This directory contains bins fasta files from the individual binning tool CONCOCT (see informations [here](https://concoct.readthedocs.io/en/latest/)). |
+| `SAMPLE_NAME/maxbin2`                              | This directory contains bins fasta files from the individual binning tool MaxBin2(see informations [here](https://academic.oup.com/bioinformatics/article/32/4/605/1744462)). |
+| `SAMPLE_NAME/metabat2`                             | This directory contains bins fasta files from the individual binning tool MetaBAT2                     (see informations [here](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6662567/)). |
+| `SAMPLE_NAME/bin_refinement`                       | This directory contains bins fasta files and statistics from the aggregate binning tool BINETTE, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://forgemia.inra.fr/jean.mainguy/binette)). |
 | `SAMPLE_NAME/bin_refinement/unbinned_contigs.fasta`| Contigs from the sample assembly that are not retrieved in any bin. The proportion of non-binned contigs to the global size of the sample assembly can be seen in the MultiQC report, in the section Bins Size (bp) quality. |
 
 #### **08_binning/08_2_dereplicated_bins**
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
-| dereplicated_genomes/ | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples.  |
-| data_tables/genomeInformation.csv | Calculated metrics of all the bins before de-replication, used to select the representative bin after de-replication. Completeness and contamination where calculated before with CheckM2, during bin_refinement step. dRep adds further metrics and use all four to choose the best bin. |
-| data_tables/Bins_clusters_composition.tsv | Associates each representative bins cluster (1st column) to the bins list within the cluster (2nd column, bins seperates by commas). |
-| figures/ | `Primary_clustering_dendrogram.pdf`: The primary clustering dendrogram summarizes the pair-wise Mash distance between all genomes in the genome list. The first clusturing used Mash, an incredibly fast but not robust algorithm, in order to accelerate the process during the second clusturing. **`Secondary_clustering_dendrograms.pdf`**: Each primary cluster with more than one member will have a page in the Secondary clustering dendrograms file. Bins with more than **95% of ANI distance similarity** (--drep_threshold default value paramater, that correspond to the threshold for separate species.) will be grouped together. **You can try different dRep thresholds to be more or less stringent, for example if the goal of dereplication is to generate a set of genomes that are distinct when mapping short reads, 98% ANI is an appropriate threshold.** You can also try higher threshold in order to separate species that belong to low divergent clades (96, or 97%). `Cluster_scoring.pdf`: Each secondary cluster will have its own page in the Cluster scoring figure. These figures show the score of each genome, as well as all metrics that can go into determin, and will always be the genome with the highest score.`Clustering scatterplots.pdf` provides some information about genome alignment statistics, and `Winning genomes.pdf` provides some information about only the “best” genomes of each replicate set, as well as a couple quick overall statistics.
+| `dereplicated_genomes/`                     | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples.  |
+| `data_tables/genomeInformation.csv`         | Calculated metrics of all the bins before de-replication, used to select the representative bin after de-replication. Completeness and contamination where calculated before with CheckM2, during bin_refinement step. dRep adds further metrics and use all four to choose the best bin. |
+| `data_tables/Bins_clusters_composition.tsv` | Associates each representative bins cluster (1st column) to the bins list within the cluster (2nd column, bins seperates by commas). |
+| `figures/ `                                 | `Primary_clustering_dendrogram.pdf`: The primary clustering dendrogram summarizes the pair-wise Mash distance between all genomes in the genome list. The first clusturing used Mash, an incredibly fast but not robust algorithm, in order to accelerate the process during the second clusturing. **`Secondary_clustering_dendrograms.pdf`**: Each primary cluster with more than one member will have a page in the Secondary clustering dendrograms file. Bins with more than **95% of ANI distance similarity** (--drep_threshold default value paramater, that correspond to the threshold for separate species.) will be grouped together. **You can try different dRep thresholds to be more or less stringent, for example if the goal of dereplication is to generate a set of genomes that are distinct when mapping short reads, 98% ANI is an appropriate threshold.** You can also try higher threshold in order to separate species that belong to low divergent clades (96, or 97%). `Cluster_scoring.pdf`: Each secondary cluster will have its own page in the Cluster scoring figure. These figures show the score of each genome, as well as all metrics that can go into determin, and will always be the genome with the highest score.`Clustering scatterplots.pdf` provides some information about genome alignment statistics, and `Winning genomes.pdf` provides some information about only the “best” genomes of each replicate set, as well as a couple quick overall statistics.
 
 If you want to make further analysis about intra-population genetic diversity (microdiversity) on the genomes, you can use **inStrain** software specifically developed for this purpose. The documentation is here:
 
@@ -264,27 +265,27 @@ https://instrain.readthedocs.io/en/latest/tutorial.html#quick-start
 #### **08_binning/08_3_gtdbtk/**
 | File      | Description                                           |
 | ----------------------- | --------------------------------------- |
-| gtdbtk.bac120.summary.tsv | Taxonomic classifications provided by GTDB-Tk. One line = one bin id (1st column, `user_genome`), its taxonomical classification based on the closest reference genome from the GTDB-Tk database (2nd column, `classification`), the accession number of the closest reference genome (3rd column, `fastani_reference`). Please see GTDB-Tk documentation [here](https://ecogenomics.github.io/GTDBTk/files/summary.tsv.html) for information on additional columns. 
+| `gtdbtk.bac120.summary.tsv` | Taxonomic classifications provided by GTDB-Tk. One line = one bin id (1st column, `user_genome`), its taxonomical classification based on the closest reference genome from the GTDB-Tk database (2nd column, `classification`), the accession number of the closest reference genome (3rd column, `fastani_reference`). Please see GTDB-Tk documentation [here](https://ecogenomics.github.io/GTDBTk/files/summary.tsv.html) for information on additional columns. 
 
 #### **08_4_mapping_on_final_bins**
 | File      | Description                                           |
 | ----------------------- | --------------------------------------- |
-| mapping/SAMPLE_NAME/ | In order to compare genomes abundances between samples, mapping of metagenomics samples reads against the final set of de-replicated bins is performed.
-| mapping/SAMPLE_NAME/`SAMPLE_NAME.sort.bam` | Alignment of reads on contigs (.bam file). |
-| mapping/SAMPLE_NAME/`SAMPLE_NAME.sort.bam.bai` | Index of .bam file. |
+| `mapping/SAMPLE_NAME/`                         | In order to compare genomes abundances between samples, mapping of metagenomics samples reads against the final set of de-replicated bins is performed.
+| `mapping/SAMPLE_NAME/SAMPLE_NAME.sort.bam`     | Alignment of reads on contigs (.bam file). |
+| `mapping/SAMPLE_NAME/SAMPLE_NAME.sort.bam.bai` | Index of .bam file. |
 
 ### **MultiQC/**
 
 | File                    | Description                             |
 | ----------------------- | --------------------------------------- |
-| `multiqc_report.html` | MultiQC report file containing graphs and a summary of analysis done by metagWGS. |
+| `multiqc_report.html`   | MultiQC report file containing graphs and a summary of analysis done by metagWGS. |
 
 ### **pipeline_info/**
 
 | File                    | Description                             |
 | ----------------------- | --------------------------------------- |
 | `software_versions.csv` | Indicates the versions of the tools used in the pipeline.     |
-| `db_versions.tsv` | Indicates the size, date of last modification and path of the file or folder for each databank used in the pipeline. For the host genome, the number of sequence is in parenthesis with the size of the file.  |
+| `db_versions.tsv`       | Indicates the size, date of last modification and path of the file or folder for each databank used in the pipeline. For the host genome, the number of sequence is in parenthesis with the size of the file.  |
 
 ## Description of other files in your working directory (not in `results` directory):
 
diff --git a/docs/usage.md b/docs/usage.md
index a62d587..6d7bbd6 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -345,7 +345,7 @@ For example check the version of software in the yaml file and the singularity r
 * `--gtdbtk_bank`: indicates path to the GTDBTK database. 
 
 * `--metabat2_seed`: Set the seed for metabat2, for exact reproducibility of metabat2 (default: 0 (random seed))
-
+* `--min_completeness [nb]`: Minimum % of bins completeness for the bins to be kept after bin_refinement step. Default: 50 
 * `--binning_cross_alignment ["all","group","individual"]`: defines mapping strategy to compute co-abundances for binning. `all` means that each samples will be mapped against every assembly, `group` means that all sample from a group will be mapped against every assembly of the group, `individual` means that each sample will only be mapped against his assembly. Default `individual`
 
 
diff --git a/main.nf b/main.nf
index 51f06c6..1ac4a5c 100644
--- a/main.nf
+++ b/main.nf
@@ -65,7 +65,7 @@ include { MULTIQC } from './modules/multiqc'
        --stop_at_assembly            Stop the pipeline at this step
        --assembly                    Indicate the assembly tool for short reads ["metaspades" or "megahit" ]. Default: "metaspades".
                                                              or for HiFi reads ["hifiasm-meta", "metaflye"]. Default: "hifiasm-meta".
-       --coassembly                  Assemble together samples labeled with the same group in the samplesheet 
+       --coassembly                  Assemble together samples labeled with the same group in the samplesheet.
               
      S03_FILTERING options:
        --stop_at_filtering           Stop the pipeline at this step
@@ -98,10 +98,7 @@ include { MULTIQC } from './modules/multiqc'
                                       'individual': Each sample is aligned against the assembly of the sample in question
                                       'group': The samples labeled with the same group in the samplesheet will be aligned against each assembly within the group of samples.
                                       'all': All the samples will be aligned against all the assembly (WARNING: It could take a long time.) (default: individual).
-       --min_completeness [nb]       Minimum % of bins completeness for the bins to be kept after bin_refinement step. Default: 0 (all bins are kept). 
-                                     According to MIMAG standards, 'Medium-quality' genomes require to have at least completeness estimates of ≥50% and less than 10% contamination. 
-       --max_contamination [nb]      Maximum % of bins contamination for the bins to be kept after bin_refinement step. Default: 100.
-                                     associated with a maximum contamination of 10% to be considered as "Medium-quality". 
+       --min_completeness [nb]       Minimum % of bins completeness for the bins to be kept after bin_refinement step. Default: 50.
        --drep_threshold [nb]         Average Nucleotide Identity (ANI) threshold used for bins de-replication. Default: 0.95 corresponding to 95%. Use a number between 0 and 1.
                                      Most studies agree that 95% ANI is an appropriate threshold for species-level de-replicationton. If the goal of dereplication is to generate a set 
                                      of genomes that are distinct when mapping short reads, 98% (0.98) ANI is an appropriate threshold.
diff --git a/nextflow.config b/nextflow.config
index b0f4b71..b5e00d2 100644
--- a/nextflow.config
+++ b/nextflow.config
@@ -7,9 +7,6 @@
 
 params {
     // metagWGS parameters.
-    reads = ""
-    assemblies = ""
-    single_end = false
     adapter1 = "AGATCGGAAGAGC"
     adapter2 = "AGATCGGAAGAGC"
     quality_type = "sanger"
-- 
GitLab


From fa2db3e090a6e7d394b41f0efd63a1566fd78365 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Mon, 23 Jan 2023 19:40:34 +0100
Subject: [PATCH 188/194] Fix outdated doc

---
 README.md | 1 -
 1 file changed, 1 deletion(-)

diff --git a/README.md b/README.md
index b15d396..417675f 100644
--- a/README.md
+++ b/README.md
@@ -27,7 +27,6 @@ Many of these steps are optional and their necessity depends on the desired anal
 * `S04_STRUCTURAL_ANNOT` 
    * makes a structural annotation of genes ([Prodigal](https://github.com/hyattpd/Prodigal) + [Barrnap](https://github.com/tseemann/barrnap) + [tRNAscan-SE](https://github.com/UCSC-LoweLab/tRNAscan-SE) + [merge_annotations.py](bin/merge_annotations.py))
 * `S05_ALIGNMENT`
-   * aligns reads to the contigs ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
    * aligns the protein sequence of genes against a protein database ([DIAMOND](https://github.com/bbuchfink/diamond))
 * `S06_FUNC_ANNOT` 
    * makes a sample and global clustering of genes ([cd-hit-est](http://weizhongli-lab.org/cd-hit/) + [cd_hit_produce_table_clstr.py](bin/cd_hit_produce_table_clstr.py))
-- 
GitLab


From d0b461b1029b9ddcba57394bced09cfd215fb095 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Tue, 24 Jan 2023 14:51:03 +0100
Subject: [PATCH 189/194] Fix coassembly for hifi and quast

---
 main.nf                     | 7 ++++---
 subworkflows/02_assembly.nf | 2 +-
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/main.nf b/main.nf
index 1ac4a5c..4b02999 100644
--- a/main.nf
+++ b/main.nf
@@ -372,6 +372,7 @@ workflow {
     ch_unfilter_assembly_flagstat_report = S02_ASSEMBLY.out.flagstat
 
     ch_quast_before_filter_report = S02_ASSEMBLY.out.assembly_report
+    ch_quast = ch_quast_before_filter_report
 
     ch_software_versions_S02 = S02_ASSEMBLY.out.software_versions
     ch_circular = S02_ASSEMBLY.out.circular
@@ -398,6 +399,7 @@ workflow {
     
 
     ch_quast_after_filter_report = S03_FILTERING.out.quast_report
+    ch_quast = ch_quast_after_filter_report
 
 
     ch_sam_coverage = S03_FILTERING.out.sam_coverage
@@ -445,8 +447,7 @@ workflow {
 	}
 
   if ( !params.stop_at_clean && !params.stop_at_assembly && !params.stop_at_filtering && !params.stop_at_structural_annot && !params.skip_binning ) {
-    ch_quast=ch_quast_after_filter_report.ifEmpty(ch_quast_before_filter_report)
-    
+
     S08_BINNING( ch_reads, ch_assembly, ch_bam, ch_gtbdtk_db, ch_quast, ch_circular)
     ch_bins_abundances_report = S08_BINNING.out.bins_abundances_report
     ch_bins_stats_report = S08_BINNING.out.bins_stats_report
@@ -460,7 +461,7 @@ workflow {
                               ch_software_versions_S07,
                               ch_software_versions_S08).unique { it.getBaseName() }.collect()
 
-  GET_SOFTWARE_VERSIONS(ch_software_versions_total) //  ch_v_eggnogmapper.ifEmpty([]).first()
+  GET_SOFTWARE_VERSIONS(ch_software_versions_total) 
   ch_software_versions = GET_SOFTWARE_VERSIONS.out.yaml
 
   MULTIQC (
diff --git a/subworkflows/02_assembly.nf b/subworkflows/02_assembly.nf
index 94e1771..fa446b7 100644
--- a/subworkflows/02_assembly.nf
+++ b/subworkflows/02_assembly.nf
@@ -73,7 +73,7 @@ workflow STEP_02_ASSEMBLY {
               if (params.type.toUpperCase() == "SR") {
                 return [meta, fastq.collect { it[0] }, fastq.collect { it[1] }]
               } else {
-                return [meta, fastq ]
+                return [meta, fastq.flatten().sort{ it.baseName }]
               }}
         .set { ch_reads_assembly }
 
-- 
GitLab


From aaeb617a79e440dea4c5199dd6edabc851080f99 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Tue, 24 Jan 2023 15:28:48 +0100
Subject: [PATCH 190/194] Update docs

---
 README.md      |  5 +++--
 docs/README.md |  2 +-
 docs/output.md | 12 ++++++------
 docs/usage.md  |  7 ++++---
 4 files changed, 14 insertions(+), 12 deletions(-)

diff --git a/README.md b/README.md
index 417675f..442feb2 100644
--- a/README.md
+++ b/README.md
@@ -21,7 +21,8 @@ Many of these steps are optional and their necessity depends on the desired anal
 * `S02_ASSEMBLY` 
    * assembles reads ([metaSPAdes](https://github.com/ablab/spades) or [Megahit](https://github.com/voutcn/megahit) or [Hifiasm_meta](https://github.com/lh3/hifiasm-meta) or [metaFlye](https://github.com/fenderglass/Flye))
    * assesses the quality of assembly ([metaQUAST](http://quast.sourceforge.net/metaquast))
-   * reads deduplication ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
+   * reads deduplication, alignment against contigs for Short reads([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) + [Samtools](http://www.htslib.org/))
+   * reads alignment against contigs for HiFi reads ([Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
 * `S03_FILTERING` 
    * filters contigs with low CPM value ([Filter_contig_per_cpm.py](bin/Filter_contig_per_cpm.py) + [metaQUAST](http://quast.sourceforge.net/metaquast))
 * `S04_STRUCTURAL_ANNOT` 
@@ -51,7 +52,7 @@ A report html file is generated at the end of the workflow with [MultiQC](https:
 
 The pipeline is built using [Nextflow,](https://www.nextflow.io/docs/latest/index.html#) a bioinformatics workflow tool to run tasks across multiple compute infrastructures in a very portable manner.
 
-Three [Singularity](https://sylabs.io/docs/) containers are available making installation trivial and results highly reproducible.
+Two [Singularity](https://sylabs.io/docs/) containers are available making installation trivial and results highly reproducible.
 
 ## Documentation
 
diff --git a/docs/README.md b/docs/README.md
index c93cda9..8e75987 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -9,7 +9,7 @@ The metagWGS documentation can be found in the following pages:
       * An overview of how the pipeline works, how to run it and a description of all of the different command-line flags.
    * [Output](output.md)
       * An overview of the different output files and directories produced by the pipeline.
-   * [Use case](use_case.md)
+   * [Use case](use_case.md) (WARNING: not up-to-date, needs to be updated)
       * A tutorial to learn how to launch the pipeline on a test dataset on [genologin cluster](http://bioinfo.genotoul.fr/).
    * [Functional tests](../functional_tests/README.md)
       * (for developers) A tool to launch a new version of the pipeline on curated input data and compare its results with known output.
diff --git a/docs/output.md b/docs/output.md
index f32070e..ef6ddaa 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -59,7 +59,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
 | `cleaned_SAMPLE_NAME_R{1,2}.fastq.gz`        | There are one R1 and one R2 file for each sample. |
-| `logs/`    | Contains cutadapt (`SAMPLE_NAME_cutadapt.log`) and sickle (`SAMPLE_NAME_sickle.log`) log files for each sample. Only if you remove host reads, in `SAMPLE_NAME_cleaned_R{1,2}.nb_bases` you have the number of nucleotides into each cleaned R1 and R2 files of each sample. Only if you remove host reads, you also have a samtools flagstat file for each sample before removing host reads (`SAMPLE_NAME.no_filter.flagstat`) and into the directory `host_filter_flagstat/` there are the samtools flagstat files (`SAMPLE_NAME.host_filter.flagstat`) after removing host reads.          |
+| `logs/`                                      | Contains cutadapt (`SAMPLE_NAME_cutadapt.log`) and sickle (`SAMPLE_NAME_sickle.log`) log files for each sample. Only if you remove host reads, in `SAMPLE_NAME_cleaned_R{1,2}.nb_bases` you have the number of nucleotides into each cleaned R1 and R2 files of each sample. Only if you remove host reads, you also have a samtools flagstat file for each sample before removing host reads (`SAMPLE_NAME.no_filter.flagstat`) and into the directory `host_filter_flagstat/` there are the samtools flagstat files (`SAMPLE_NAME.host_filter.flagstat`) after removing host reads.          |
 
 #### **01_clean_qc/01_2_qc/**
 
@@ -85,11 +85,11 @@ The `results/` directory contains a sub-directory for each step launched:
 
 | File or directory/             | Description                                                                                                                      |
 |--------------------------------|----------------------------------------------------------------------------------------------------------------------------------|
-| `SAMPLE_NAME.fna`              | unfiltered assembly (primary assembly) with renamed contigs. Contig names follow this pattern: `<sample_name>_c<contig_number>`. |
-| `assembly_metric`              | Contains metaQUAST quality control files of contigs.                                                                             |
-| `<assembly_tool>_SAMPLE_NAME/` | output files of the assembly tool. It contains logs and original fasta files of the assembly before renaming.                    |
+| `SAMPLE_NAME.fna`                             | unfiltered assembly (primary assembly) with renamed contigs. Contig names follow this pattern: `<sample_name>_c<contig_number>`. |
+| `assembly_metric`                             | Contains metaQUAST quality control files of contigs.    |
+| `<assembly_tool>_SAMPLE_NAME/`                | output files of the assembly tool. It contains logs and original fasta files of the assembly before renaming.                    |
 | `SAMPLE_NAME_original_to_new_contig_name.tsv` | Tabular file with two fields: original contig name from the assembly tool and the new contig name given by the pipeline.                   |
-| `circular_contigs/`                  | only for HiFi: 
+| `circular_contigs/`                           | only for HiFi: contains the fasta file of each circular contigs, useful for bin refinement in the binning step |
 
 #### **02_assembly/02_2_deduplicated_reads**
 
@@ -246,7 +246,7 @@ The `results/` directory contains a sub-directory for each step launched:
 #### **08_binning/08_2_dereplicated_bins**
 | File or directory/      | Description                             |
 | ----------------------- | --------------------------------------- |
-| `dereplicated_genomes/`                     | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusturize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples.  |
+| `dereplicated_genomes/`                     | The dRep software allows to compare the bins of all samples in a pair-wise manner, and to clusterize the bins that share similar DNA content in terms of Average Nucleotide Identity (ANI). The threshold of 95% ANI is used to create a set of species-level representative genomes (SRGs). Within each cluster of bins, the best bin in terms of quality (completeness,contamination,N50,strain-heterogeneity) is selected as representative genome. The directory dereplicated_genomes contains all the representative bins that will be used in order to compare abundances of SRGs between the samples.  |
 | `data_tables/genomeInformation.csv`         | Calculated metrics of all the bins before de-replication, used to select the representative bin after de-replication. Completeness and contamination where calculated before with CheckM2, during bin_refinement step. dRep adds further metrics and use all four to choose the best bin. |
 | `data_tables/Bins_clusters_composition.tsv` | Associates each representative bins cluster (1st column) to the bins list within the cluster (2nd column, bins seperates by commas). |
 | `figures/ `                                 | `Primary_clustering_dendrogram.pdf`: The primary clustering dendrogram summarizes the pair-wise Mash distance between all genomes in the genome list. The first clusturing used Mash, an incredibly fast but not robust algorithm, in order to accelerate the process during the second clusturing. **`Secondary_clustering_dendrograms.pdf`**: Each primary cluster with more than one member will have a page in the Secondary clustering dendrograms file. Bins with more than **95% of ANI distance similarity** (--drep_threshold default value paramater, that correspond to the threshold for separate species.) will be grouped together. **You can try different dRep thresholds to be more or less stringent, for example if the goal of dereplication is to generate a set of genomes that are distinct when mapping short reads, 98% ANI is an appropriate threshold.** You can also try higher threshold in order to separate species that belong to low divergent clades (96, or 97%). `Cluster_scoring.pdf`: Each secondary cluster will have its own page in the Cluster scoring figure. These figures show the score of each genome, as well as all metrics that can go into determin, and will always be the genome with the highest score.`Clustering scatterplots.pdf` provides some information about genome alignment statistics, and `Winning genomes.pdf` provides some information about only the “best” genomes of each replicate set, as well as a couple quick overall statistics.
diff --git a/docs/usage.md b/docs/usage.md
index 6d7bbd6..4979893 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -197,7 +197,7 @@ You can use a `stop_at_[STEP]` parameter to launch only the steps leading to and
 
 `--stop_at_[STEP]`: indicate the step of the pipeline you want to stop at. The steps available are described in the [`README`](../README.md#metagwgs-steps) (`S01_CLEAN_QC`, `S02_ASSEMBLY`, `S03_FILTERING`, `S04_STRUCTURAL_ANNOT`).
 
-**NOTE: `S05_ALIGNMENT`, `S06_FUNC_ANNOT` and `S07_TAXO_AFFI` being the 3 last steps, there is no `--stop_at_[STEP]`; see 'Skip' subsection for more information.**
+**NOTE: `S05_ALIGNMENT`, `S06_FUNC_ANNOT`, `S07_TAXO_AFFI` and `S08_BINNING` being the 4 last steps, there is no `--stop_at_[STEP]`; see 'Skip' subsection for more information.**
 
 For each [STEP](../README.md#metagwgs-steps), specific parameters are available. You can add them to the command line and run the pipeline. They are described in the section [other parameters step by step](usage.md#other-parameters-step-by-step).
 
@@ -279,7 +279,7 @@ No parameter available for this substep.
 * `--coassembly` allows to assemble together the samples labeled with the same group in the samplesheet. It will generate one assembly for each group. To co-assemble all of your samples together, you must indicate a unique group for each sample in the samplesheet.  **WARNING** With the coassembly, you can't use `--binning_cross_alignment 'group'`  because one binning will be generate for each group co-assembled and automatically mapping with every sample of his group but `--binning_cross_alignment 'all'` can be use to cross align every sample with every group. 
 
 
-**WARNING 4:** For short reads, the user can choose between `metaspades` or `megahit` for `--assembly` parameter. The choice can be based on CPUs and memory availability: `metaspades` needs more CPUs and memory than `megahit` but our tests showed that assembly metrics are better for `metaspades` than `megahit`.For PacBio HiFi reads, the user can choose between `hifiasm-meta` or `metaflye`. 
+**WARNING 4:** For short reads, the user can choose between `metaspades` or `megahit` for `--assembly` parameter. The choice can be based on CPUs and memory availability: `metaspades` needs more CPUs and memory than `megahit` but our tests showed that assembly metrics are better for `metaspades` than `megahit`. For PacBio HiFi reads, the user can choose between `hifiasm-meta` or `metaflye`. 
 
 **Note:** you may need to tweak the memory and cpus settings of the Nextflow process, especially if you are using `metaspades`. If this is the case, create a `nextflow.config` file in our working directory and modify these parameters (be aware that the memory must be in GB) such as :
 ```bash
@@ -348,6 +348,7 @@ For example check the version of software in the yaml file and the singularity r
 * `--min_completeness [nb]`: Minimum % of bins completeness for the bins to be kept after bin_refinement step. Default: 50 
 * `--binning_cross_alignment ["all","group","individual"]`: defines mapping strategy to compute co-abundances for binning. `all` means that each samples will be mapped against every assembly, `group` means that all sample from a group will be mapped against every assembly of the group, `individual` means that each sample will only be mapped against his assembly. Default `individual`
 
+**WARNING 13:** CheckM2 has reproducibility issues, therefore this step is not perfectly reproducible from one run to another. Results may vary slightly. 
 
 #### Others parameters
 
@@ -373,4 +374,4 @@ See the description of output files in [this part](output.md) of the documentati
 
 > If you have an account on the [genologin cluster](http://bioinfo.genotoul.fr/) and you would like to familiarize yourself with metagWGS, see the tutorial available in the [use case documentation page](use_case.md). It allows the analysis of big test datasets with metagWGS. (WARNING: use_case documentation is not up-to-date, needs to be updated)
 
-**WARNING 13:** the test dataset in `metagwgs-test-datasets/small` used in [I. Basic Usage](usage.md#i-basic-usage) is a small test dataset which allows to test all steps but with few CPUs and memory.
+**WARNING 14:** the test dataset in `metagwgs-test-datasets/small` used in [I. Basic Usage](usage.md#i-basic-usage) is a small test dataset which allows to test all steps but with few CPUs and memory.
-- 
GitLab


From 107d1e2e664445988aa431b8473cd84301815343 Mon Sep 17 00:00:00 2001
From: "maina.vienne" <maina.vienne@inrae.fr>
Date: Tue, 24 Jan 2023 16:45:59 +0100
Subject: [PATCH 191/194] Add metro map + update doc, version, config test

---
 README.md                   |   7 ++++---
 conf/functional_test.config |   4 ++--
 docs/metagwgs_metro_map.png | Bin 0 -> 328464 bytes
 functional_tests/README.md  |   8 +++-----
 nextflow.config             |   2 +-
 5 files changed, 10 insertions(+), 11 deletions(-)
 create mode 100644 docs/metagwgs_metro_map.png

diff --git a/README.md b/README.md
index 442feb2..5aaa0f5 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,8 @@
 
 ### Pipeline graphical representation
 The workflow processes raw data from `.fastq/.fastq.gz` input and/or assemblies (contigs) `.fa/.fasta` and uses the modules represented in this figure:
-![](docs/Pipeline.png)
+
+![](docs/metagwgs_metro_map.png)
 
 ### metagWGS steps
 
@@ -21,13 +22,13 @@ Many of these steps are optional and their necessity depends on the desired anal
 * `S02_ASSEMBLY` 
    * assembles reads ([metaSPAdes](https://github.com/ablab/spades) or [Megahit](https://github.com/voutcn/megahit) or [Hifiasm_meta](https://github.com/lh3/hifiasm-meta) or [metaFlye](https://github.com/fenderglass/Flye))
    * assesses the quality of assembly ([metaQUAST](http://quast.sourceforge.net/metaquast))
-   * reads deduplication, alignment against contigs for Short reads([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) + [Samtools](http://www.htslib.org/))
+   * reads deduplication, alignment against contigs for short reads ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) + [Samtools](http://www.htslib.org/))
    * reads alignment against contigs for HiFi reads ([Minimap2](https://github.com/lh3/minimap2)  + [Samtools](http://www.htslib.org/))
 * `S03_FILTERING` 
    * filters contigs with low CPM value ([Filter_contig_per_cpm.py](bin/Filter_contig_per_cpm.py) + [metaQUAST](http://quast.sourceforge.net/metaquast))
 * `S04_STRUCTURAL_ANNOT` 
    * makes a structural annotation of genes ([Prodigal](https://github.com/hyattpd/Prodigal) + [Barrnap](https://github.com/tseemann/barrnap) + [tRNAscan-SE](https://github.com/UCSC-LoweLab/tRNAscan-SE) + [merge_annotations.py](bin/merge_annotations.py))
-* `S05_ALIGNMENT`
+* `S05_PROTEIN_ALIGNMENT`
    * aligns the protein sequence of genes against a protein database ([DIAMOND](https://github.com/bbuchfink/diamond))
 * `S06_FUNC_ANNOT` 
    * makes a sample and global clustering of genes ([cd-hit-est](http://weizhongli-lab.org/cd-hit/) + [cd_hit_produce_table_clstr.py](bin/cd_hit_produce_table_clstr.py))
diff --git a/conf/functional_test.config b/conf/functional_test.config
index 6268237..fd02222 100644
--- a/conf/functional_test.config
+++ b/conf/functional_test.config
@@ -5,9 +5,9 @@ singularity.enabled = true
 singularity.autoMounts = true
 
 process {
-    container = "/work/project/plateforme/metaG/functional_test/singularity_img/dev_v2.4/metagwgs.sif"
+    container = "/work/project/plateforme/metaG/functional_test/singularity_img/v2.4/metagwgs.sif"
     withLabel: BINNING {
-        container = "/work/project/plateforme/metaG/functional_test/singularity_img/binning.sif"
+        container = "/work/project/plateforme/metaG/functional_test/singularity_img/v2.4/binning.sif"
     }
 } 
 
diff --git a/docs/metagwgs_metro_map.png b/docs/metagwgs_metro_map.png
new file mode 100644
index 0000000000000000000000000000000000000000..5f30b835dcc315132427ce7639706cb6537b716a
GIT binary patch
literal 328464
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%0A8lq*^a9hj~;y+!@*_F%mGcdmss{#W%CP
zHY=4_%TDBvmELjpu09bZNRJg0_PPza(EBRMA0SA;8j;LiiiR;koMn&NcRj6Yc7^_-
z>SQ`<w=p}%uGpnVrXkbuFa`#gj{$~RY&O~a6)fgRaaa}6#K|cdRI$<-4_3tr;u8Nw
z%S+G^*LLj*B|G)A4k`=VaxV*ry2D;fjMzYBYtXPn`@+Pwfp^gKpU=S}=p0W}mLOXA
z8J9CpxfU*TqHb&g;ZK%tv<x#YRZujlK^xWQ>NLF^-CJoD^IQc6fHV%N{NX^S+cd~O
zpG~KybV#R7*ALntLycJ!n;b1U&^0cU!--}wym{Q;dzlPXkRxWLDC4*L>_lmTZ1tA=
z;P)}J5ck@rao&|4PL-t6Y0tpt^8@07*cadKtUs=OWC^vo=O=PJenIS~BPFFYZNemK
z8sUBL8UR4|>@~QAnS;-`A5|@WeNJkJ1ARW9G}i^Mp!hN}d)^%5@;1@dH5cd-?5wN8
zQPHmGTdOicFnoAI*_6?Ie6+$x&rN*Qu5`=&yC}u{M^<(Iw?9FpQki9@5j;waW!XN%
z4y#iPxxUJ@7Z%uF9EM}P4eEk#hYs0+AR)u>;b&g1=9%x!da+S}`)X_Fgghd|+%P_|
zA`L4?<Yid<X0~2)1r0hfAZ~pWV1PNfixGck3v;YpW5%{LWU9@dv+)QLYAtcwyksTJ
zXi5Uq65#dr4bX%TJLxAa!D_g>a$DhT^CduGQ}=8cVd31Ch>Y~_wC0`@P7&HYzBv17
z{g8~5oAJZ+f-f(7NRgsAp6HqkXRkpxr2JGHeETwq7LEIyNTt?O$pPH2c(fZBI}fj&
z+8&tp<japk+@Ih==mlLf4OWcPXwL8t(m@p&9q^zpRUzOocRsSE<b6*<k#~<Ew*<1k
zW(EIepC5al5Md^GT=FRzMqP}uPQwRR{ZshF<qcZ8Oa6|381l*rZeE+5QaJD=y8`qk
z!@k5&Y~j5qzE)R4|MSjKegE#CobmDJliJ&)o8cJ}f8387O*(z0x871H`$;V~I7|=C
z#qS0yHqy2RhR#Mb5&!huc)VpM)-E;}$a+Q}N<wmRrcHZ49bboR{yiQD-RBwkR<HKd
zJ6v+NbjUS3`HqQfNF$`EQOs1XQKFfszZOml@qPIGwXxr1I(W04SZeXRa@s(}Vl-9|
z%l&C9?i6=`{s8sNG2pCu!ni{p0LUbAH(K<Glta%KIQf3)VwtrPru?E5p}IFnUG3ZH
zreD7m8jsHw2jTN}dAVX_DGQrfUGt)|BqZ}?D4P>qG=%fgPByMxCA?<J#n$SaF$O_+
z1)?P+vihqWkoQ%7IA%&vRHnL9b(@KY4a^ZheZmIqwuKtOea;z^jR-qdN#EAY0QZ!j
zUDFt-R!(5uD+n2yybJJiwRV<Y@@}YCq4myCz!^M8x;7RBOA7I$cj2c=NMhW%n$7aM
zb*-7mgpBaxI|QsEayugtHR}hzVJ&bd!P#fWv8ntw?3jvGdmGwXBBgw3rq-*!Up?cC
ze+g6SoaFG{7I+a%mAo(R%xnUl3t4~bx=)gXRMe-T#2JH54A~@^@I&59v~Rdm&!Szn
zm94_ubrdBbge&!%$S@w<Hsk`xJ%p#}0?{+`Xv>YLJ@YI}94)*NoHi#0j*%Nr<+LiQ
zVju$*pMzB`bwe44vC#D(D{|l%CuY)y@wnz`KHTW2H6u6vQjRqf0RTP?`EdM#3Q@Xv
z@<DTeKtn|Gtzc*$(e7+b1W)*^m0iu{8JyX`Kkv)gv)@xCTkHdm&XZ8t+^u(Y+1MM~
zTo03?0FU+Acz0WFs#HKgtp}7<*#eeJ6OMV8!H6Ul^dm#F9UN6~xB7i?p&Hm5I51Lx
zSm7mV#q`7yG_@tAai;j>leNz`;F*<eK1HDp-ZAx1gq6S|><EOuw8=wMwY@d)BQW$+
zljYMw-L!f~eiyiDYAm+$G49sbCE}yspW%=Vh$Q4oN7`I<CWe=SK)1Vi62&GZLOasu
z@UAhlPNygk^fDPvESNhFpn&1f@2VOqef|*inPK)a56_c}n7wO@Tlc-msmlQtyrCeX
zbj?9XPm>}JubWfm3_|}n!ke`NK%wbKYsl}{L)_?6FxXozQ}>SD_){V;Z>i;x+KebE
zP1cHO(kLsWtW#)iQ1~$nAC(~={W8BP>#<hfzulmAm6w^#0%0<Jw6Y7^BpX>)#QGl{
z2rwZJHZRYZh)+EQTHMdZcQ<oSQz)jWmoFnx%hsw3!RkQyJY^3*=TrTP1dtn-I=cE_
zN@DF!iY(Xs+kg?E>+q;s8u|1b?EKZFwl+^!?shKK=!CS_$N%<`x->QGqI8j$M_%%1
zilpJqf9!y61;pCZu;ge-oaO(nY<ze6oa_qEgZm0Upf2i9=QA6UlcPgv(7QL5{~5?m
zdNBvAzDpjZ1e{2@1(*?zwOip!9rNE+e#yCVh0ig1kQ)BoPMT$Eh>^YLw0<j`rPO2G
zcgy?s?f3D?yV=&_28OlSq+>zDEm;fFP(|OV`zbEAGEJ2)e$gYSciQLl4lB1&i#wnj
zhoBbhkx&%Kt7DSeLpAaC@nKTS_Idi-icMxNxLiqY5N=U|-F)?zs%vKEBDL89-vb+g
zIq&)D{7YnC9ygtP-6}a4pK*AHu(X5{l03zj3WU+#P}IWGS8fmHqNZC=y;J|O@4R0j
z{`>5C!FOyh2wO-AthFJHNVJTWVQ)*^{MOr+aOd?`6!(LY(XR28Z8xvfp2lp_|ETIx
zuo&&uS-BW%SlOsUs!dBvB~SRn-?CRkM#KaKA3*_f0^5ds%+q&#M}i5BkHI_|ul>*6
z_q+J-jsKH>R=YncgFv8qEwx+v|0f5)ML1#xGpcz-zcK^^0|9BN>!=mowtDgZ0NxW?
AVE_OC

literal 0
HcmV?d00001

diff --git a/functional_tests/README.md b/functional_tests/README.md
index 561c00e..8e2fa42 100644
--- a/functional_tests/README.md
+++ b/functional_tests/README.md
@@ -22,7 +22,7 @@ sbatch $METAG_PATH/functional_tests/launch_example.sh
 
 ```bash
 module load system/Python-3.7.4
-python $METAG_PATH/functional_tests/main.py -step 07_taxo_affi -exp_dir /work/project/plateforme/metaG/functional_test/metagwgs-test-datasets/small/output -obs_dir ./results
+python $METAG_PATH/functional_tests/main.py -step 08_binning -exp_dir /work/project/plateforme/metaG/functional_test/metagwgs-test-datasets/small/output -obs_dir ./results
 ```
 Don't forget to modify the `METAG_PATH` variable, if metagwgs is not in your working directory.  
 
@@ -33,7 +33,7 @@ If you do not have access to genologin or the directory, you need to download th
 ### Donwload of DB and data
 
 1. Install metagwgs as described here: [installation doc](../docs/installation.md)
-2. Get datasets: two datasets are currently available for these functional tests at https://forgemia.inra.fr/genotoul-bioinfo/metagwgs-test-datasets.git
+2. Get datasets: three datasets are currently available for these functional tests at https://forgemia.inra.fr/genotoul-bioinfo/metagwgs-test-datasets.git
 
 ```bash
 git clone git@forgemia.inra.fr:genotoul-bioinfo/metagwgs-test-datasets.git
@@ -91,9 +91,7 @@ python $METAG_PATH/functional_tests/main.py -step 07_taxo_affi -exp_dir $DATASET
 
 This procedure allows you to perform functional tests for small data (Short reads), to test HiFi data you need to include the parameters `--input "/work/project/plateforme/metaG/functional_test/metagwgs-test-datasets/hifi/input/samplesheet.csv" --type "HiFi" ` to the launch_example.sh script. And change the expected directory for the python command. 
 
-## III. Test skips and check processes
-
-Besoin d'un cluster absolument 
+## III. Test skips and check processes  (WARNING: not up-to-date, needs to be updated, will be replaced by dry-run)
 
 The script `test_parameters_and_processes.py` check if execution with parameters specified in `expected_processes.tsv`, run processes as expected.
 
diff --git a/nextflow.config b/nextflow.config
index b5e00d2..2d6f062 100644
--- a/nextflow.config
+++ b/nextflow.config
@@ -98,5 +98,5 @@ manifest {
     description = 'Analysis of metagenomics data'
     mainScript = 'main.nf'
     nextflowVersion = '>=20.01.0'
-    version = '2.3.1'
+    version = '2.4'
 }
-- 
GitLab


From d9c4db465be173f08d954491303d20b143d26cbc Mon Sep 17 00:00:00 2001
From: Jean Mainguy <jean.mainguy@inra.fr>
Date: Tue, 24 Jan 2023 19:47:08 +0100
Subject: [PATCH 192/194] Update README.md

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 5aaa0f5..b69d6eb 100644
--- a/README.md
+++ b/README.md
@@ -42,7 +42,7 @@ Many of these steps are optional and their necessity depends on the desired anal
 ![](docs/08_binning.png)
    * aligns reads samples against assemblies (according to the strategy used) ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2))
    * performs metagenome binning ([METABAT2](https://bitbucket.org/berkeleylab/metabat/src/master/) + [MAXBIN2](https://sourceforge.net/projects/maxbin/) + [CONCOCT](https://github.com/BinPro/CONCOCT))
-   * refines bin sets ([BINETTE](https://forgemia.inra.fr/jean.mainguy/binette/))
+    * refines bin sets ([BINETTE](https://github.com/genotoul-bioinfo/Binette))
    * dereplicates bins between samples ([DREP](https://github.com/MrOlm/drep))
    * taxonomically affiliates the bins ([GTDBTK](https://github.com/Ecogenomics/GTDBTk))
    * calculates bins abundances between samples ([BWA-MEM2](https://github.com/bwa-mem2/bwa-mem2) or [Minimap2](https://github.com/lh3/minimap2) + [SAMTOOLS](http://www.htslib.org/))
-- 
GitLab


From 5cf6ce2ed439c108d9072c3ec8c7a8dda8088a42 Mon Sep 17 00:00:00 2001
From: Maina Vienne <maina.vienne@inrae.fr>
Date: Thu, 26 Jan 2023 14:40:01 +0100
Subject: [PATCH 193/194] Update docs 	Add missing parameters on docs

---
 docs/output.md | 2 +-
 docs/usage.md  | 4 ++++
 main.nf        | 1 +
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/docs/output.md b/docs/output.md
index ef6ddaa..c7e6aad 100644
--- a/docs/output.md
+++ b/docs/output.md
@@ -240,7 +240,7 @@ The `results/` directory contains a sub-directory for each step launched:
 | `SAMPLE_NAME/concoct`                              | This directory contains bins fasta files from the individual binning tool CONCOCT (see informations [here](https://concoct.readthedocs.io/en/latest/)). |
 | `SAMPLE_NAME/maxbin2`                              | This directory contains bins fasta files from the individual binning tool MaxBin2(see informations [here](https://academic.oup.com/bioinformatics/article/32/4/605/1744462)). |
 | `SAMPLE_NAME/metabat2`                             | This directory contains bins fasta files from the individual binning tool MetaBAT2                     (see informations [here](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6662567/)). |
-| `SAMPLE_NAME/bin_refinement`                       | This directory contains bins fasta files and statistics from the aggregate binning tool BINETTE, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://forgemia.inra.fr/jean.mainguy/binette)). |
+| `SAMPLE_NAME/bin_refinement`                       | This directory contains bins fasta files and statistics from the aggregate binning tool BINETTE, which takes into account the bins sets from the 3 individual binning tools to try to improve the quality of the bins (see informations [here](https://github.com/genotoul-bioinfo/Binette)). |
 | `SAMPLE_NAME/bin_refinement/unbinned_contigs.fasta`| Contigs from the sample assembly that are not retrieved in any bin. The proportion of non-binned contigs to the global size of the sample assembly can be seen in the MultiQC report, in the section Bins Size (bp) quality. |
 
 #### **08_binning/08_2_dereplicated_bins**
diff --git a/docs/usage.md b/docs/usage.md
index 4979893..41cb601 100644
--- a/docs/usage.md
+++ b/docs/usage.md
@@ -345,8 +345,12 @@ For example check the version of software in the yaml file and the singularity r
 * `--gtdbtk_bank`: indicates path to the GTDBTK database. 
 
 * `--metabat2_seed`: Set the seed for metabat2, for exact reproducibility of metabat2 (default: 0 (random seed))
+
 * `--min_completeness [nb]`: Minimum % of bins completeness for the bins to be kept after bin_refinement step. Default: 50 
+
 * `--binning_cross_alignment ["all","group","individual"]`: defines mapping strategy to compute co-abundances for binning. `all` means that each samples will be mapped against every assembly, `group` means that all sample from a group will be mapped against every assembly of the group, `individual` means that each sample will only be mapped against his assembly. Default `individual`
+   
+*  `--drep_threshold [nb]`: Average Nucleotide Identity (ANI) threshold used for bins de-replication. Default: 0.95 corresponding to 95%. Use a number between 0 and 1. Most studies agree that 95% ANI is an appropriate threshold for species-level de-replicationton. If the goal of dereplication is to generate a set of genomes that are distinct when mapping short reads, 98% (0.98) ANI is an appropriate threshold.
 
 **WARNING 13:** CheckM2 has reproducibility issues, therefore this step is not perfectly reproducible from one run to another. Results may vary slightly. 
 
diff --git a/main.nf b/main.nf
index 4b02999..d2c0456 100644
--- a/main.nf
+++ b/main.nf
@@ -94,6 +94,7 @@ include { MULTIQC } from './modules/multiqc'
      SO8_BINNING options:
        --gtdbtk_bank                 Path to the GTDBTK database
        --skip_binning                Skip this step
+       --metabat2_seed               Set the seed for metabat2, for exact reproducibility of metabat2 (default: 0 (random seed))
        --binning_cross_alignment     Mapping strategy to compute co-abundances for binning: .
                                       'individual': Each sample is aligned against the assembly of the sample in question
                                       'group': The samples labeled with the same group in the samplesheet will be aligned against each assembly within the group of samples.
-- 
GitLab


From 2fd73f919ec1d97d3d63186ff4ef2038a787b9ed Mon Sep 17 00:00:00 2001
From: Maina Vienne <maina.vienne@inrae.fr>
Date: Thu, 26 Jan 2023 16:12:00 +0100
Subject: [PATCH 194/194] Replace bin refinement by BINETTE on binning.png

---
 docs/08_binning.png |  Bin 138817 -> 223297 bytes
 docs/binning.svg    | 2177 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 2177 insertions(+)
 create mode 100644 docs/binning.svg

diff --git a/docs/08_binning.png b/docs/08_binning.png
index cc99305629db199489061ec612bd30d9a694c8eb..e5b2addb722833a9a6ea9c54b2c28c6049f51abe 100644
GIT binary patch
literal 223297
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
Z32H_ybgfh5DD)p-Xlv-*EmyM&`5(9!`2GL@

literal 138817
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%0D_-dd_@pB@LXV9PZ4l?6
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
M-O*GkQZV%Ye?h}D@Bjb+

diff --git a/docs/binning.svg b/docs/binning.svg
new file mode 100644
index 0000000..0681d7a
--- /dev/null
+++ b/docs/binning.svg
@@ -0,0 +1,2177 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<svg
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
+   xmlns:cc="http://creativecommons.org/ns#"
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
+   xmlns:svg="http://www.w3.org/2000/svg"
+   xmlns="http://www.w3.org/2000/svg"
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
+   version="1.1"
+   viewBox="0 0 1200 408"
+   fill="none"
+   stroke="none"
+   stroke-linecap="square"
+   stroke-miterlimit="10"
+   id="svg673"
+   sodipodi:docname="binning.svg"
+   inkscape:version="1.0.2-2 (e86c870879, 2021-01-15)"
+   width="12.5in"
+   height="4.25in">
+  <metadata
+     id="metadata679">
+    <rdf:RDF>
+      <cc:Work
+         rdf:about="">
+        <dc:format>image/svg+xml</dc:format>
+        <dc:type
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
+        <dc:title />
+      </cc:Work>
+    </rdf:RDF>
+  </metadata>
+  <defs
+     id="defs677">
+    <rect
+       x="480.34106"
+       y="831.59338"
+       width="21.047075"
+       height="56.125538"
+       id="rect1593" />
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745" />
+    </clipPath>
+    <pattern
+       id="EMFhbasepattern"
+       patternUnits="userSpaceOnUse"
+       width="6"
+       height="6"
+       x="0"
+       y="0" />
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-5">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-5" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-7">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-8" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-3">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-4" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-33">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-3" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-3-7">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-4-1" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-4">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-3" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-33-9">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-3-0" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-3-7-0">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-4-1-4" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-3">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-2" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-33-1">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-3-4" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-3-7-6">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-4-1-2" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-3-0">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-2-1" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-33-1-3">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-3-4-4" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-3-7-6-8">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-4-1-2-1" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-3-5">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-2-3" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-33-1-4">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-3-4-42" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-4-3-7-6-3">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-3-4-1-2-7" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3-6">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1-8" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-9">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-6" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3-65">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1-3" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3-6-5">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1-8-7" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-1">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-60" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3-0">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1-84" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3-6-6">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1-8-1" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-35">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-5" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-35-5">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-5-2" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-2">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-58" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-35-8">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-5-7" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-35-5-0">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-5-2-3" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-2-9">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-58-0" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-35-8-9">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-5-7-9" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-35-5-0-7">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-5-2-3-7" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-1-0">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-60-9" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3-0-3">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1-84-0" />
+    </clipPath>
+    <clipPath
+       clipPathUnits="userSpaceOnUse"
+       id="clipEmfPath1-8-6-3-3-6-6-0">
+      <path
+         d="M 0,0 H 69.11641 V 117.27391 H 0 Z"
+         id="path1745-0-1-9-1-8-1-1" />
+    </clipPath>
+  </defs>
+  <sodipodi:namedview
+     pagecolor="#ffffff"
+     bordercolor="#666666"
+     borderopacity="1"
+     objecttolerance="10"
+     gridtolerance="10"
+     guidetolerance="10"
+     inkscape:pageopacity="0"
+     inkscape:pageshadow="2"
+     inkscape:window-width="2400"
+     inkscape:window-height="1271"
+     id="namedview675"
+     showgrid="false"
+     inkscape:zoom="2.1380642"
+     inkscape:cx="981.23637"
+     inkscape:cy="188.67634"
+     inkscape:window-x="-9"
+     inkscape:window-y="113"
+     inkscape:window-maximized="1"
+     inkscape:current-layer="g671"
+     inkscape:document-rotation="0"
+     showguides="false"
+     inkscape:guide-bbox="true"
+     units="in"
+     width="11.5in">
+    <sodipodi:guide
+       position="-752.72531,-34.395187"
+       orientation="1,0"
+       id="guide2966" />
+    <sodipodi:guide
+       position="11.906024,26.457825"
+       orientation="1,0"
+       id="guide2968" />
+  </sodipodi:namedview>
+  <clipPath
+     id="gf4aee02f90_0_20.0">
+    <path
+       d="M 0,0 H 1280 V 1098 H 0 Z"
+       clip-rule="nonzero"
+       id="path2" />
+  </clipPath>
+  <g
+     clip-path="url(#gf4aee02f90_0_20.0)"
+     id="g671">
+    <path
+       fill="#ffffff"
+       d="m -1653.8325,-579.96387 h 1280.00005 v 1098 H -1653.8325 Z"
+       fill-rule="evenodd"
+       id="path5" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 562.15924,523.3759 c 40.82434,0 61.23529,68.85828 81.64868,137.71655 20.41333,68.85828 40.82916,137.71655 81.65839,137.71655"
+       fill-rule="evenodd"
+       id="path629" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 790.4684,541.8339 c -83.66956,0 -106.5044,60.35437 -167.33905,120.70868 -60.83466,60.35431 -159.66907,120.70868 -319.3381,120.70868"
+       fill-rule="evenodd"
+       id="path641" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 403.43402,544.2748 c -24.91287,0 -37.36908,59.74805 -49.82578,119.49609 -12.45669,59.74799 -24.91388,119.49603 -49.82776,119.49603"
+       fill-rule="evenodd"
+       id="path647" />
+    <text
+       xml:space="preserve"
+       id="text1591"
+       style="font-style:normal;font-weight:normal;font-size:40px;line-height:1.25;font-family:sans-serif;white-space:pre;shape-inside:url(#rect1593);fill:#000000;fill-opacity:1;stroke:none;" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#ffffff;fill-opacity:1;stroke:none"
+       x="230.81039"
+       y="954.63397"
+       id="text1590-0-9-8-0-8-6-5-3-6"><tspan
+         sodipodi:role="line"
+         x="230.81039"
+         y="954.63397"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
+         id="tspan531-4-1-67" /></text>
+    <path
+       stroke="#009999"
+       stroke-width="1.21773"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 1027.6905,90.18397 c -8.9751,0.083 -14.6083,0.12729 -19.3892,0.16175 -1.6415,0.0119 -3.1824,0.0225 -4.7236,0.0332 l -2.4292,0.0164"
+       fill-rule="evenodd"
+       id="path637-4-1-1-1-9-21-3-3"
+       sodipodi:nodetypes="cscc"
+       style="stroke-width:2.00155;stroke-miterlimit:100;stroke-dasharray:none" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.9664"
+       stroke-linecap="butt"
+       d="m 1003.3859,86.29749 -8.0157,5.15051 8.0026,2.08988 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-3-2-6-0"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       fill="#a3dada"
+       d="m 32.403244,74.19696 v 0 c 0,-35.41701 42.20394,-64.1281 94.264986,-64.1281 H 536.1277 c 25.00075,0 48.97738,6.75653 66.6554,18.78278 17.6781,12.02633 27.60955,28.33743 27.60955,45.34532 v 256.50465 c 0,35.41691 -42.20382,64.12805 -94.26495,64.12805 H 126.66823 c -52.061046,0 -94.264986,-28.71114 -94.264986,-64.12805 z"
+       fill-rule="evenodd"
+       id="path315-8-0-9-32"
+       style="fill:#addada;fill-opacity:0.238683;stroke-width:3.21446" />
+    <path
+       fill="#a3dada"
+       d="m 708.15795,108.4924 v 0 c 0,-20.55553 12.42937,-37.21909 27.76177,-37.21909 h 120.5889 c 7.3629,0 14.4242,3.92135 19.6306,10.90126 5.2063,6.9799 8.1312,16.4467 8.1312,26.31783 v 148.87185 c 0,20.55552 -12.4294,37.21904 -27.7618,37.21904 h -120.5889 c -15.3324,0 -27.76177,-16.66352 -27.76177,-37.21904 z"
+       fill-rule="evenodd"
+       id="path315-8"
+       style="fill:#addada;fill-opacity:0.473251;stroke-width:1.32897" />
+    <path
+       stroke="#009999"
+       stroke-width="1.4225"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 708.15795,108.4924 v 0 c -0.1473,-20.37949 11.70857,-36.90035 26.48067,-36.90035 h 116.183 c 7.0939,0 13.9253,3.88775 18.9914,10.8079 5.0662,6.92013 7.952,16.30587 8.0228,26.09245 l 1.0668,147.59677 c 0.1473,20.37947 -11.7085,36.90025 -26.4807,36.90025 h -116.183 c -14.7722,0 -26.86687,-16.52078 -27.01417,-36.90025 z"
+       fill-rule="evenodd"
+       id="path317-4" />
+    <path
+       fill="#a3dada"
+       d="m 838.25792,79.91941 v 0 c 0,-23.82459 10.8291,-43.13828 24.1874,-43.13828 h 105.0631 c 6.4149,0 12.5671,4.54496 17.1031,12.63493 4.536,8.08998 7.0843,19.06234 7.0843,30.50335 v 172.54777 c 0,23.82458 -10.8291,43.13817 -24.1874,43.13817 h -105.0631 c -13.3583,0 -24.1874,-19.31359 -24.1874,-43.13817 z"
+       fill-rule="evenodd"
+       id="path315"
+       style="stroke-width:1.33548" />
+    <path
+       fill="#009999"
+       d="m 708.58128,308.61958 v 0 c 0,-2.27838 1.68938,-4.12543 3.77333,-4.12543 h 132.79531 c 1.0008,0 1.9605,0.43463 2.6682,1.20832 0.7076,0.77368 1.1051,1.82299 1.1051,2.91711 v 16.50125 c 0,2.2784 -1.6893,4.1255 -3.7733,4.1255 H 712.35461 c -2.08395,0 -3.77333,-1.8471 -3.77333,-4.1255 z"
+       fill-rule="evenodd"
+       id="path321"
+       style="stroke-width:0.956374" />
+    <path
+       stroke="#009999"
+       stroke-width="1.27148"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 708.57306,308.6141 v 0 c 0,-2.27989 1.67851,-4.12818 3.74905,-4.12818 h 131.94111 c 0.9943,0 1.9479,0.43492 2.651,1.20914 0.703,0.77418 1.098,1.82418 1.098,2.91904 v 16.51221 c 0,2.27991 -1.6785,4.12825 -3.749,4.12825 H 712.32211 c -2.07054,0 -3.74905,-1.84834 -3.74905,-4.12825 z"
+       fill-rule="evenodd"
+       id="path323" />
+    <path
+       fill="#ffffff"
+       d="m 718.77812,317.8842 q 0,0.4687 -0.1875,0.8437 -0.1719,0.375 -0.4844,0.6407 -0.2969,0.25 -0.7187,0.375 -0.42191,0.125 -0.90629,0.125 -0.32812,0 -0.625,-0.062 -0.28125,-0.047 -0.51562,-0.125 -0.21875,-0.094 -0.375,-0.1719 -0.15625,-0.094 -0.21875,-0.1563 -0.0625,-0.062 -0.0937,-0.1562 -0.0156,-0.094 -0.0156,-0.2656 0,-0.1094 0,-0.1875 0.0156,-0.078 0.0312,-0.125 0.0312,-0.047 0.0625,-0.062 0.0312,-0.016 0.0625,-0.016 0.0781,0 0.20313,0.094 0.14062,0.078 0.34375,0.1875 0.21875,0.1093 0.5,0.2031 0.29687,0.078 0.6875,0.078 0.29687,0 0.53128,-0.078 0.2343,-0.078 0.4062,-0.2188 0.1875,-0.1406 0.2813,-0.3437 0.094,-0.2188 0.094,-0.4844 0,-0.2812 -0.1407,-0.4844 -0.125,-0.2031 -0.3437,-0.3437 -0.2031,-0.1563 -0.48438,-0.2813 -0.26563,-0.1406 -0.5625,-0.2656 -0.28125,-0.1406 -0.54688,-0.2969 -0.26562,-0.1562 -0.48437,-0.375 -0.21875,-0.2187 -0.35938,-0.5156 -0.125,-0.2969 -0.125,-0.7031 0,-0.42188 0.15625,-0.75 0.15625,-0.34375 0.42188,-0.5625 0.28125,-0.21875 0.65625,-0.32813 0.375,-0.125 0.8125,-0.125 0.21873,0 0.43753,0.0469 0.2343,0.0312 0.4375,0.0937 0.2031,0.0625 0.3593,0.14062 0.1563,0.0781 0.2032,0.14063 0.047,0.0469 0.062,0.0781 0.016,0.0156 0.031,0.0625 0.016,0.0469 0.016,0.10938 0,0.0625 0,0.15625 0,0.0937 -0.016,0.17187 0,0.0781 -0.016,0.125 -0.016,0.0469 -0.047,0.0781 -0.016,0.0156 -0.062,0.0156 -0.047,0 -0.1719,-0.0625 -0.125,-0.0781 -0.3125,-0.17187 -0.1719,-0.0937 -0.4219,-0.17188 -0.2344,-0.0781 -0.53123,-0.0781 -0.28125,0 -0.48438,0.0781 -0.20312,0.0781 -0.34375,0.20313 -0.14062,0.125 -0.20312,0.29687 -0.0625,0.17188 -0.0625,0.35933 0,0.2813 0.125,0.4844 0.125,0.2031 0.34375,0.3594 0.21875,0.1562 0.48437,0.2969 0.28125,0.125 0.56246,0.2656 0.2969,0.125 0.5625,0.2812 0.2813,0.1563 0.5,0.375 0.2188,0.2188 0.3438,0.5157 0.1406,0.2812 0.1406,0.6875 z m 5.1775,-0.7813 q 0,0.2032 -0.1094,0.2969 -0.094,0.078 -0.2343,0.078 h -3.0625 q 0,0.3906 0.078,0.7031 0.078,0.3125 0.25,0.5313 0.1875,0.2187 0.4843,0.3437 0.2969,0.125 0.7032,0.125 0.3437,0 0.5937,-0.047 0.2656,-0.062 0.4531,-0.125 0.1875,-0.078 0.3125,-0.125 0.125,-0.062 0.1875,-0.062 0.031,0 0.062,0.016 0.031,0.016 0.047,0.062 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1563 0,0.078 -0.016,0.125 0,0.047 -0.016,0.094 0,0.031 -0.016,0.062 -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.1718,0.094 -0.1407,0.062 -0.3594,0.125 -0.2188,0.062 -0.5156,0.1094 -0.2969,0.047 -0.625,0.047 -0.5782,0 -1.0157,-0.1563 -0.4375,-0.1562 -0.7343,-0.4687 -0.2969,-0.3282 -0.4532,-0.7969 -0.1406,-0.4844 -0.1406,-1.125 0,-0.5938 0.1563,-1.0781 0.1562,-0.4844 0.4531,-0.8125 0.2969,-0.3438 0.7031,-0.5157 0.4219,-0.1875 0.9375,-0.1875 0.5469,0 0.9375,0.1875 0.3906,0.1719 0.6406,0.4688 0.25,0.2969 0.3594,0.7031 0.125,0.4063 0.125,0.8594 z m -0.875,-0.25 q 0.016,-0.6875 -0.2969,-1.0625 -0.3125,-0.3906 -0.9375,-0.3906 -0.3125,0 -0.5468,0.125 -0.2344,0.1094 -0.4063,0.3125 -0.1562,0.2031 -0.25,0.4688 -0.078,0.25 -0.094,0.5468 z m 6.1927,4.6563 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.047 -0.047,0.031 -0.1406,0.031 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2188,-0.016 -0.078,0 -0.125,-0.031 -0.047,-0.016 -0.078,-0.047 -0.016,-0.031 -0.016,-0.062 v -2.4063 q -0.2031,0.2188 -0.4062,0.375 -0.1875,0.1407 -0.375,0.2344 -0.1875,0.078 -0.375,0.1094 -0.1875,0.047 -0.3906,0.047 -0.5157,0 -0.875,-0.1875 -0.3594,-0.2031 -0.5938,-0.5469 -0.2187,-0.3437 -0.3281,-0.7969 -0.094,-0.4687 -0.094,-0.9843 0,-0.5938 0.125,-1.0782 0.1406,-0.4843 0.3906,-0.8281 0.2656,-0.3437 0.6406,-0.5312 0.375,-0.1875 0.875,-0.1875 0.2032,0 0.375,0.047 0.1875,0.047 0.3594,0.1406 0.1875,0.094 0.375,0.25 0.1875,0.1562 0.4063,0.3594 v -0.5625 q 0,-0.047 0.016,-0.078 0.016,-0.031 0.062,-0.047 0.047,-0.016 0.125,-0.016 0.078,-0.016 0.1875,-0.016 0.094,0 0.1718,0.016 0.078,0 0.1094,0.016 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.078 z m -0.875,-5.1563 q -0.3437,-0.4375 -0.6718,-0.6562 -0.3282,-0.2344 -0.6719,-0.2344 -0.3281,0 -0.5625,0.1563 -0.2188,0.1562 -0.375,0.4218 -0.1406,0.25 -0.2031,0.5782 -0.062,0.3125 -0.062,0.6406 0,0.3594 0.047,0.7031 0.062,0.3438 0.1875,0.6094 0.1406,0.25 0.3593,0.4062 0.2344,0.1563 0.5782,0.1563 0.1562,0 0.3125,-0.047 0.1718,-0.047 0.3281,-0.1563 0.1719,-0.1093 0.3437,-0.2812 0.1875,-0.1719 0.3907,-0.4219 z m 6.4737,3.2969 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.062,0.016 -0.1718,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.125,-0.016 -0.031,-0.031 -0.047,-0.062 -0.016,-0.031 -0.016,-0.062 v -0.625 q -0.4062,0.4375 -0.7968,0.6406 -0.3907,0.2032 -0.7813,0.2032 -0.4687,0 -0.7969,-0.1563 -0.3125,-0.1562 -0.5156,-0.4219 -0.2031,-0.2656 -0.2969,-0.625 -0.078,-0.3593 -0.078,-0.8593 v -2.8438 q 0,-0.047 0.016,-0.062 0.031,-0.031 0.078,-0.047 0.047,-0.031 0.125,-0.031 0.094,-0.016 0.2188,-0.016 0.125,0 0.2031,0.016 0.094,0 0.1406,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 2.7188 q 0,0.4218 0.047,0.6718 0.062,0.2344 0.1875,0.4219 0.125,0.1719 0.3125,0.2656 0.1875,0.094 0.4375,0.094 0.3125,0 0.625,-0.2187 0.3282,-0.2344 0.6875,-0.6875 v -3.2656 q 0,-0.047 0.016,-0.062 0.031,-0.031 0.078,-0.047 0.047,-0.031 0.125,-0.031 0.094,-0.016 0.2188,-0.016 0.125,0 0.2031,0.016 0.094,0 0.1406,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 z m 5.5831,-2.5469 q 0,0.2032 -0.1094,0.2969 -0.094,0.078 -0.2344,0.078 h -3.0625 q 0,0.3906 0.078,0.7031 0.078,0.3125 0.25,0.5313 0.1875,0.2187 0.4844,0.3437 0.2969,0.125 0.7031,0.125 0.3438,0 0.5938,-0.047 0.2656,-0.062 0.4531,-0.125 0.1875,-0.078 0.3125,-0.125 0.125,-0.062 0.1875,-0.062 0.031,0 0.062,0.016 0.031,0.016 0.047,0.062 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1563 0,0.078 -0.016,0.125 0,0.047 -0.016,0.094 0,0.031 -0.016,0.062 -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.1719,0.094 -0.1406,0.062 -0.3593,0.125 -0.2188,0.062 -0.5157,0.1094 -0.2968,0.047 -0.625,0.047 -0.5781,0 -1.0156,-0.1563 -0.4375,-0.1562 -0.7344,-0.4687 -0.2968,-0.3282 -0.4531,-0.7969 -0.1406,-0.4844 -0.1406,-1.125 0,-0.5938 0.1562,-1.0781 0.1563,-0.4844 0.4532,-0.8125 0.2968,-0.3438 0.7031,-0.5157 0.4219,-0.1875 0.9375,-0.1875 0.5469,0 0.9375,0.1875 0.3906,0.1719 0.6406,0.4688 0.25,0.2969 0.3594,0.7031 0.125,0.4063 0.125,0.8594 z m -0.875,-0.25 q 0.016,-0.6875 -0.2969,-1.0625 -0.3125,-0.3906 -0.9375,-0.3906 -0.3125,0 -0.5469,0.125 -0.2343,0.1094 -0.4062,0.3125 -0.1563,0.2031 -0.25,0.4688 -0.078,0.25 -0.094,0.5468 z m 6.2084,2.7969 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2032,0.016 -0.1406,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1094,-0.1719 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2187 -0.6719,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4532 0.7812,-0.6563 0.3906,-0.2031 0.7969,-0.2031 0.4687,0 0.7812,0.1562 0.3282,0.1563 0.5157,0.4219 0.2031,0.2656 0.2812,0.625 0.094,0.3594 0.094,0.8594 z m 4.9268,-0.7187 q 0,0.094 0,0.1562 0,0.062 -0.016,0.1094 -0.016,0.047 -0.031,0.078 -0.016,0.031 -0.094,0.094 -0.062,0.062 -0.2188,0.1719 -0.1562,0.094 -0.3594,0.1718 -0.1875,0.062 -0.4218,0.1094 -0.2188,0.047 -0.4532,0.047 -0.5156,0 -0.9062,-0.1562 -0.3906,-0.1719 -0.6563,-0.4844 -0.25,-0.3281 -0.3906,-0.7969 -0.1406,-0.4687 -0.1406,-1.0781 0,-0.6875 0.1719,-1.1719 0.1718,-0.5 0.4531,-0.8125 0.2969,-0.3281 0.6875,-0.4844 0.4062,-0.1562 0.875,-0.1562 0.2187,0 0.4219,0.047 0.2187,0.047 0.3906,0.1093 0.1875,0.062 0.3125,0.1563 0.1406,0.094 0.2031,0.1562 0.062,0.062 0.078,0.094 0.031,0.031 0.047,0.094 0.016,0.047 0.016,0.1094 0.016,0.062 0.016,0.1563 0,0.2031 -0.047,0.2812 -0.047,0.078 -0.1093,0.078 -0.078,0 -0.1875,-0.078 -0.094,-0.094 -0.25,-0.1875 -0.1563,-0.1094 -0.3907,-0.1875 -0.2187,-0.094 -0.5156,-0.094 -0.6094,0 -0.9531,0.4844 -0.3281,0.4687 -0.3281,1.3594 0,0.4531 0.078,0.7968 0.094,0.3438 0.2656,0.5782 0.1719,0.2187 0.4062,0.3437 0.25,0.1094 0.5625,0.1094 0.2813,0 0.5,-0.094 0.2344,-0.094 0.3907,-0.2031 0.1718,-0.125 0.2812,-0.2032 0.1094,-0.094 0.1719,-0.094 0.047,0 0.062,0.016 0.031,0.016 0.047,0.078 0.016,0.047 0.016,0.125 0.016,0.062 0.016,0.1719 z m 5.1466,-1.8282 q 0,0.2032 -0.1094,0.2969 -0.094,0.078 -0.2343,0.078 h -3.0625 q 0,0.3906 0.078,0.7031 0.078,0.3125 0.25,0.5313 0.1875,0.2187 0.4843,0.3437 0.2969,0.125 0.7032,0.125 0.3437,0 0.5937,-0.047 0.2656,-0.062 0.4531,-0.125 0.1875,-0.078 0.3125,-0.125 0.125,-0.062 0.1875,-0.062 0.031,0 0.062,0.016 0.031,0.016 0.047,0.062 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1563 0,0.078 -0.016,0.125 0,0.047 -0.016,0.094 0,0.031 -0.016,0.062 -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.1718,0.094 -0.1407,0.062 -0.3594,0.125 -0.2188,0.062 -0.5156,0.1094 -0.2969,0.047 -0.625,0.047 -0.5782,0 -1.0157,-0.1563 -0.4375,-0.1562 -0.7343,-0.4687 -0.2969,-0.3282 -0.4532,-0.7969 -0.1406,-0.4844 -0.1406,-1.125 0,-0.5938 0.1563,-1.0781 0.1562,-0.4844 0.4531,-0.8125 0.2969,-0.3438 0.7031,-0.5157 0.4219,-0.1875 0.9375,-0.1875 0.5469,0 0.9375,0.1875 0.3906,0.1719 0.6406,0.4688 0.25,0.2969 0.3594,0.7031 0.125,0.4063 0.125,0.8594 z m -0.875,-0.25 q 0.016,-0.6875 -0.2969,-1.0625 -0.3125,-0.3906 -0.9375,-0.3906 -0.3125,0 -0.5468,0.125 -0.2344,0.1094 -0.4063,0.3125 -0.1562,0.2031 -0.25,0.4688 -0.078,0.25 -0.094,0.5468 z m 5.1146,1.5157 q 0,0.3593 -0.1406,0.6406 -0.125,0.2812 -0.375,0.4844 -0.2344,0.1875 -0.5781,0.2812 -0.3282,0.094 -0.7344,0.094 -0.25,0 -0.4844,-0.047 -0.2187,-0.031 -0.4062,-0.078 -0.1719,-0.062 -0.2969,-0.125 -0.125,-0.078 -0.1875,-0.125 -0.062,-0.047 -0.094,-0.1406 -0.016,-0.094 -0.016,-0.2656 0,-0.094 0,-0.1563 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.016 0.062,-0.016 0.062,0 0.1719,0.078 0.1093,0.062 0.2656,0.1407 0.1719,0.078 0.3906,0.1562 0.2344,0.062 0.5313,0.062 0.2187,0 0.3906,-0.047 0.1719,-0.047 0.2969,-0.125 0.1406,-0.094 0.2031,-0.2344 0.078,-0.1406 0.078,-0.3437 0,-0.1875 -0.1094,-0.3281 -0.094,-0.1407 -0.2656,-0.2344 -0.1563,-0.1094 -0.375,-0.1875 -0.2031,-0.078 -0.4219,-0.1719 -0.2187,-0.094 -0.4375,-0.2031 -0.2031,-0.1094 -0.375,-0.2656 -0.1719,-0.1563 -0.2812,-0.375 -0.094,-0.2344 -0.094,-0.5469 0,-0.2813 0.1093,-0.5313 0.1094,-0.25 0.3125,-0.4375 0.2188,-0.1875 0.5313,-0.2968 0.3281,-0.125 0.7656,-0.125 0.1875,0 0.3594,0.031 0.1875,0.031 0.3437,0.078 0.1563,0.047 0.25,0.1093 0.1094,0.047 0.1563,0.094 0.062,0.031 0.078,0.062 0.031,0.031 0.031,0.078 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1407 0,0.094 -0.016,0.1562 0,0.062 -0.031,0.1094 -0.016,0.031 -0.047,0.062 -0.016,0.016 -0.047,0.016 -0.047,0 -0.1406,-0.062 -0.078,-0.062 -0.2188,-0.125 -0.1406,-0.062 -0.3281,-0.1094 -0.1875,-0.062 -0.4375,-0.062 -0.2188,0 -0.3906,0.047 -0.1563,0.047 -0.2657,0.1406 -0.1093,0.094 -0.1718,0.2188 -0.047,0.125 -0.047,0.2656 0,0.2031 0.094,0.3438 0.1093,0.1406 0.2812,0.25 0.1719,0.094 0.375,0.1875 0.2188,0.078 0.4375,0.1718 0.2188,0.078 0.4375,0.1875 0.2188,0.1094 0.375,0.2657 0.1719,0.1562 0.2656,0.375 0.1094,0.2187 0.1094,0.5156 z m 4.4988,1.2812 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2032,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.26561 q 0,0.29688 -0.1094,0.40625 -0.1093,0.10938 -0.4218,0.10938 -0.2969,0 -0.4219,-0.10938 -0.1094,-0.10937 -0.1094,-0.40625 0,-0.29687 0.1094,-0.40625 0.125,-0.10937 0.4375,-0.10937 0.2969,0 0.4062,0.10937 0.1094,0.10938 0.1094,0.40625 z m 5.5237,6.26561 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2032,0.016 -0.1406,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1094,-0.1719 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2187 -0.6719,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4532 0.7812,-0.6563 0.3906,-0.2031 0.7969,-0.2031 0.4687,0 0.7812,0.1562 0.3282,0.1563 0.5157,0.4219 0.2031,0.2656 0.2812,0.625 0.094,0.3594 0.094,0.8594 z m 3.9059,-0.3437 q 0,0.1406 -0.031,0.2343 -0.016,0.094 -0.062,0.1407 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1093,0.031 -0.2343,0.047 -0.1094,0.016 -0.2188,0.016 -0.375,0 -0.6406,-0.094 -0.25,-0.1094 -0.4219,-0.2969 -0.1562,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6562 v -1.10936 q 0,-0.0312 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1407,-0.0469 0.078,-0.0156 0.2031,-0.0156 0.1406,0 0.2187,0.0156 0.078,0.0156 0.125,0.0469 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0625 v 1.10936 h 1.2032 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.2032 v 2.6094 q 0,0.4843 0.1407,0.7343 0.1406,0.25 0.5156,0.25 0.125,0 0.2031,-0.016 0.094,-0.031 0.1719,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1563 z m 5.3872,-2.0625 q 0,0.5781 -0.1563,1.0625 -0.1562,0.4843 -0.4531,0.8281 -0.2969,0.3437 -0.75,0.5469 -0.4531,0.1875 -1.0469,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7187,-0.5 -0.2813,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0469 0.1562,-0.4843 0.4531,-0.8281 0.2969,-0.3437 0.75,-0.5312 0.4531,-0.2032 1.0469,-0.2032 0.5781,0 1,0.1719 0.4375,0.1719 0.7187,0.5 0.2813,0.3281 0.4219,0.7969 0.1563,0.4687 0.1563,1.0469 z m -0.9063,0.062 q 0,-0.375 -0.078,-0.7032 -0.062,-0.3437 -0.2343,-0.5937 -0.1563,-0.2656 -0.4375,-0.4063 -0.2657,-0.1562 -0.6875,-0.1562 -0.375,0 -0.6563,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1719,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7343 0,0.375 0.062,0.7188 0.078,0.3437 0.2343,0.5937 0.1719,0.25 0.4375,0.4063 0.2813,0.1406 0.6875,0.1406 0.375,0 0.6407,-0.125 0.2812,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2656,-0.5781 0.094,-0.3438 0.094,-0.75 z m 7.013,2 q 0,0.1406 -0.031,0.2343 -0.016,0.094 -0.062,0.1407 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1094,0.031 -0.2344,0.047 -0.1093,0.016 -0.2187,0.016 -0.375,0 -0.6406,-0.094 -0.25,-0.1094 -0.4219,-0.2969 -0.1563,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6562 v -1.10936 q 0,-0.0312 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1406,-0.0469 0.078,-0.0156 0.2032,-0.0156 0.1406,0 0.2187,0.0156 0.078,0.0156 0.125,0.0469 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0625 v 1.10936 h 1.2031 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.2031 v 2.6094 q 0,0.4843 0.1406,0.7343 0.1407,0.25 0.5157,0.25 0.125,0 0.2031,-0.016 0.094,-0.031 0.1719,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1563 z m 5.1632,0.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2031,0.016 -0.1407,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1094,-0.1719 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2187 -0.6719,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -6.95316 q 0,-0.0469 0.016,-0.0781 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1406,-0.0312 0.078,-0.0156 0.2032,-0.0156 0.1406,0 0.2187,0.0156 0.078,0 0.125,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0781 v 2.79686 q 0.375,-0.3906 0.7344,-0.5781 0.375,-0.1875 0.7656,-0.1875 0.4688,0 0.7813,0.1562 0.3281,0.1563 0.5156,0.4219 0.2031,0.2656 0.2812,0.625 0.094,0.3594 0.094,0.8594 z m 5.5674,-2.5469 q 0,0.2032 -0.1093,0.2969 -0.094,0.078 -0.2344,0.078 h -3.0625 q 0,0.3906 0.078,0.7031 0.078,0.3125 0.25,0.5313 0.1875,0.2187 0.4844,0.3437 0.2968,0.125 0.7031,0.125 0.3437,0 0.5937,-0.047 0.2657,-0.062 0.4532,-0.125 0.1875,-0.078 0.3125,-0.125 0.125,-0.062 0.1875,-0.062 0.031,0 0.062,0.016 0.031,0.016 0.047,0.062 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1563 0,0.078 -0.016,0.125 0,0.047 -0.016,0.094 0,0.031 -0.016,0.062 -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.1719,0.094 -0.1406,0.062 -0.3594,0.125 -0.2187,0.062 -0.5156,0.1094 -0.2969,0.047 -0.625,0.047 -0.5781,0 -1.0156,-0.1563 -0.4375,-0.1562 -0.7344,-0.4687 -0.2969,-0.3282 -0.4531,-0.7969 -0.1407,-0.4844 -0.1407,-1.125 0,-0.5938 0.1563,-1.0781 0.1562,-0.4844 0.4531,-0.8125 0.2969,-0.3438 0.7031,-0.5157 0.4219,-0.1875 0.9375,-0.1875 0.5469,0 0.9375,0.1875 0.3907,0.1719 0.6407,0.4688 0.25,0.2969 0.3593,0.7031 0.125,0.4063 0.125,0.8594 z m -0.875,-0.25 q 0.016,-0.6875 -0.2968,-1.0625 -0.3125,-0.3906 -0.9375,-0.3906 -0.3125,0 -0.5469,0.125 -0.2344,0.1094 -0.4063,0.3125 -0.1562,0.2031 -0.25,0.4688 -0.078,0.25 -0.094,0.5468 z m 8.8988,0.3907 q 0,0.6093 -0.1407,1.0937 -0.125,0.4844 -0.3906,0.8281 -0.25,0.3438 -0.625,0.5313 -0.375,0.1719 -0.8594,0.1719 -0.2343,0 -0.4218,-0.047 -0.1875,-0.031 -0.375,-0.125 -0.1719,-0.1094 -0.3594,-0.25 -0.1719,-0.1563 -0.375,-0.375 v 0.5781 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.062,0.016 -0.1719,0.016 -0.1094,0 -0.1875,-0.016 -0.062,0 -0.1094,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -6.95313 q 0,-0.0469 0.016,-0.0781 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1407,-0.0312 0.078,-0.0156 0.2031,-0.0156 0.1406,0 0.2187,0.0156 0.078,0 0.125,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0781 v 2.79683 q 0.2032,-0.2031 0.3907,-0.3437 0.2031,-0.1563 0.3906,-0.25 0.1875,-0.094 0.375,-0.125 0.1875,-0.047 0.3906,-0.047 0.5156,0 0.875,0.2031 0.3594,0.2031 0.5781,0.5469 0.2344,0.3437 0.3438,0.7969 0.1094,0.4531 0.1094,0.9687 z m -0.9063,0.094 q 0,-0.3594 -0.062,-0.6875 -0.047,-0.3438 -0.1875,-0.5938 -0.1406,-0.2656 -0.3594,-0.4219 -0.2187,-0.1718 -0.5625,-0.1718 -0.1562,0 -0.3281,0.047 -0.1562,0.047 -0.3281,0.1562 -0.1563,0.1094 -0.3438,0.2813 -0.1718,0.1718 -0.375,0.4375 v 1.8593 q 0.3594,0.4375 0.6719,0.6719 0.3281,0.2188 0.6719,0.2188 0.3281,0 0.5469,-0.1563 0.2343,-0.1562 0.375,-0.4062 0.1406,-0.2657 0.2031,-0.5782 0.078,-0.3281 0.078,-0.6562 z m 3.0518,2.3125 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2032,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.26566 q 0,0.29688 -0.1094,0.40625 -0.1093,0.10938 -0.4218,0.10938 -0.2969,0 -0.4219,-0.10938 -0.1094,-0.10937 -0.1094,-0.40625 0,-0.29687 0.1094,-0.40625 0.125,-0.10937 0.4375,-0.10937 0.2969,0 0.4062,0.10937 0.1094,0.10938 0.1094,0.40625 z m 5.5237,6.26566 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2031,0.016 -0.1407,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3907 -0.062,-0.6407 -0.062,-0.25 -0.1875,-0.4218 -0.1094,-0.1719 -0.3125,-0.2657 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2188 -0.6719,0.6563 v 3.2812 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4531 0.7812,-0.6562 0.3907,-0.2032 0.7969,-0.2032 0.4688,0 0.7813,0.1563 0.3281,0.1562 0.5156,0.4219 0.2031,0.2656 0.2812,0.625 0.094,0.3593 0.094,0.8593 z m 4.5049,-1.2813 q 0,0.3594 -0.1406,0.6406 -0.125,0.2813 -0.375,0.4844 -0.2344,0.1875 -0.5781,0.2813 -0.3281,0.094 -0.7344,0.094 -0.25,0 -0.4844,-0.047 -0.2187,-0.031 -0.4062,-0.078 -0.1719,-0.062 -0.2969,-0.125 -0.125,-0.078 -0.1875,-0.125 -0.062,-0.047 -0.094,-0.1407 -0.016,-0.094 -0.016,-0.2656 0,-0.094 0,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.016 0.062,-0.016 0.062,0 0.1719,0.078 0.1094,0.062 0.2656,0.1406 0.1719,0.078 0.3906,0.1563 0.2344,0.062 0.5313,0.062 0.2187,0 0.3906,-0.047 0.1719,-0.047 0.2969,-0.125 0.1406,-0.094 0.2031,-0.2344 0.078,-0.1406 0.078,-0.3438 0,-0.1875 -0.1094,-0.3281 -0.094,-0.1406 -0.2656,-0.2344 -0.1562,-0.1093 -0.375,-0.1875 -0.2031,-0.078 -0.4219,-0.1718 -0.2187,-0.094 -0.4375,-0.2032 -0.2031,-0.1093 -0.375,-0.2656 -0.1718,-0.1562 -0.2812,-0.375 -0.094,-0.2344 -0.094,-0.5469 0,-0.2812 0.1094,-0.5312 0.1093,-0.25 0.3125,-0.4375 0.2187,-0.1875 0.5312,-0.2969 0.3281,-0.125 0.7656,-0.125 0.1875,0 0.3594,0.031 0.1875,0.031 0.3438,0.078 0.1562,0.047 0.25,0.1094 0.1093,0.047 0.1562,0.094 0.062,0.031 0.078,0.062 0.031,0.031 0.031,0.078 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1406 0,0.094 -0.016,0.1563 0,0.062 -0.031,0.1093 -0.016,0.031 -0.047,0.062 -0.016,0.016 -0.047,0.016 -0.047,0 -0.1406,-0.062 -0.078,-0.062 -0.2188,-0.125 -0.1406,-0.062 -0.3281,-0.1093 -0.1875,-0.062 -0.4375,-0.062 -0.2187,0 -0.3906,0.047 -0.1563,0.047 -0.2656,0.1406 -0.1094,0.094 -0.1719,0.2187 -0.047,0.125 -0.047,0.2657 0,0.2031 0.094,0.3437 0.1093,0.1406 0.2812,0.25 0.1719,0.094 0.375,0.1875 0.2188,0.078 0.4375,0.1719 0.2188,0.078 0.4375,0.1875 0.2188,0.1094 0.375,0.2656 0.1719,0.1563 0.2656,0.375 0.1094,0.2188 0.1094,0.5156 z m 7.1579,0.8438 q 0,0.3593 -0.125,0.4843 -0.125,0.125 -0.4375,0.125 -0.3125,0 -0.4375,-0.1093 -0.125,-0.125 -0.125,-0.4844 0,-0.375 0.125,-0.5 0.125,-0.125 0.4531,-0.125 0.3125,0 0.4219,0.125 0.125,0.125 0.125,0.4844 z m 3.9349,-6.17191 q 0,0.0937 -0.016,0.15625 0,0.0625 -0.016,0.0937 -0.016,0.0312 -0.047,0.0469 -0.016,0.0156 -0.047,0.0156 -0.031,0 -0.094,-0.0156 -0.047,-0.0312 -0.125,-0.0625 -0.078,-0.0312 -0.1875,-0.0469 -0.1094,-0.0312 -0.2344,-0.0312 -0.2031,0 -0.3438,0.0625 -0.125,0.0625 -0.2187,0.20313 -0.078,0.125 -0.1094,0.34375 -0.031,0.20312 -0.031,0.51562 v 0.49996 h 1.0313 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1563 0,0.1875 -0.047,0.2812 -0.047,0.078 -0.125,0.078 h -1.0313 v 4.1094 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1094 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2812 0,-0.094 0.016,-0.1563 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6562 v -0.48433 q 0,-0.48438 0.094,-0.82813 0.094,-0.35937 0.2813,-0.57812 0.1875,-0.23438 0.4687,-0.32813 0.2813,-0.10937 0.6719,-0.10937 0.1719,0 0.3437,0.0312 0.1719,0.0312 0.2657,0.0781 0.094,0.0312 0.125,0.0625 0.031,0.0312 0.047,0.0781 0.031,0.0469 0.031,0.125 0.016,0.0625 0.016,0.17187 z m 4.0124,6.60941 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2031,0.016 -0.1406,0 -0.2187,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4688 q -0.2969,0.3281 -0.6719,0.5156 -0.375,0.1719 -0.7969,0.1719 -0.375,0 -0.6719,-0.094 -0.2968,-0.094 -0.5156,-0.2656 -0.2031,-0.1875 -0.3281,-0.4531 -0.1094,-0.2657 -0.1094,-0.6094 0,-0.3906 0.1563,-0.6875 0.1562,-0.2969 0.4531,-0.4844 0.3125,-0.1875 0.75,-0.2812 0.4375,-0.094 0.9844,-0.094 h 0.6406 v -0.375 q 0,-0.2657 -0.062,-0.4688 -0.047,-0.2187 -0.1875,-0.3437 -0.125,-0.1407 -0.3281,-0.2032 -0.2032,-0.078 -0.4844,-0.078 -0.3281,0 -0.5781,0.078 -0.25,0.062 -0.4375,0.1563 -0.1875,0.094 -0.3282,0.1719 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1094 -0.016,-0.078 -0.016,-0.1563 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1406 0.078,-0.062 0.25,-0.1563 0.1719,-0.094 0.3907,-0.1718 0.2187,-0.078 0.4843,-0.125 0.2657,-0.047 0.5469,-0.047 0.5,0 0.8438,0.125 0.3593,0.1093 0.5781,0.3281 0.2187,0.2187 0.3125,0.5469 0.1094,0.3281 0.1094,0.7656 z m -0.8594,-2.1407 h -0.7343 q -0.3438,0 -0.6094,0.062 -0.2656,0.062 -0.4375,0.1875 -0.1719,0.1094 -0.25,0.2813 -0.078,0.1562 -0.078,0.3594 0,0.375 0.2344,0.5937 0.2343,0.2031 0.6406,0.2031 0.3437,0 0.625,-0.1718 0.2969,-0.1719 0.6094,-0.5157 z m 5.3701,0.8594 q 0,0.3594 -0.1406,0.6406 -0.125,0.2813 -0.375,0.4844 -0.2344,0.1875 -0.5782,0.2813 -0.3281,0.094 -0.7343,0.094 -0.25,0 -0.4844,-0.047 -0.2188,-0.031 -0.4063,-0.078 -0.1718,-0.062 -0.2968,-0.125 -0.125,-0.078 -0.1875,-0.125 -0.062,-0.047 -0.094,-0.1407 -0.016,-0.094 -0.016,-0.2656 0,-0.094 0,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.016 0.062,-0.016 0.062,0 0.1718,0.078 0.1094,0.062 0.2657,0.1406 0.1718,0.078 0.3906,0.1563 0.2344,0.062 0.5312,0.062 0.2188,0 0.3907,-0.047 0.1718,-0.047 0.2968,-0.125 0.1407,-0.094 0.2032,-0.2344 0.078,-0.1406 0.078,-0.3438 0,-0.1875 -0.1094,-0.3281 -0.094,-0.1406 -0.2656,-0.2344 -0.1563,-0.1093 -0.375,-0.1875 -0.2032,-0.078 -0.4219,-0.1718 -0.2188,-0.094 -0.4375,-0.2032 -0.2031,-0.1093 -0.375,-0.2656 -0.1719,-0.1562 -0.2813,-0.375 -0.094,-0.2344 -0.094,-0.5469 0,-0.2812 0.1094,-0.5312 0.1094,-0.25 0.3125,-0.4375 0.2188,-0.1875 0.5313,-0.2969 0.3281,-0.125 0.7656,-0.125 0.1875,0 0.3594,0.031 0.1875,0.031 0.3437,0.078 0.1563,0.047 0.25,0.1094 0.1094,0.047 0.1563,0.094 0.062,0.031 0.078,0.062 0.031,0.031 0.031,0.078 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1406 0,0.094 -0.016,0.1563 0,0.062 -0.031,0.1093 -0.016,0.031 -0.047,0.062 -0.016,0.016 -0.047,0.016 -0.047,0 -0.1407,-0.062 -0.078,-0.062 -0.2187,-0.125 -0.1406,-0.062 -0.3281,-0.1093 -0.1875,-0.062 -0.4375,-0.062 -0.2188,0 -0.3907,0.047 -0.1562,0.047 -0.2656,0.1406 -0.1094,0.094 -0.1719,0.2187 -0.047,0.125 -0.047,0.2657 0,0.2031 0.094,0.3437 0.1094,0.1406 0.2813,0.25 0.1719,0.094 0.375,0.1875 0.2187,0.078 0.4375,0.1719 0.2187,0.078 0.4375,0.1875 0.2187,0.1094 0.375,0.2656 0.1719,0.1563 0.2656,0.375 0.1094,0.2188 0.1094,0.5156 z m 3.548,0.9375 q 0,0.1406 -0.031,0.2344 -0.016,0.094 -0.062,0.1406 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1094,0.031 -0.2344,0.047 -0.1094,0.016 -0.2187,0.016 -0.375,0 -0.6407,-0.094 -0.25,-0.1094 -0.4218,-0.2969 -0.1563,-0.2031 -0.2344,-0.5 -0.078,-0.2968 -0.078,-0.7031 v -2.7344 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2812 0,-0.094 0.016,-0.1563 0.016,-0.078 0.031,-0.1093 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6563 v -1.10941 q 0,-0.0312 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1406,-0.0469 0.078,-0.0156 0.2031,-0.0156 0.1407,0 0.2188,0.0156 0.078,0.0156 0.125,0.0469 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0625 v 1.10941 h 1.2031 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1093 0.016,0.062 0.016,0.1563 0,0.1875 -0.047,0.2812 -0.047,0.078 -0.125,0.078 h -1.2031 v 2.6094 q 0,0.4844 0.1406,0.7344 0.1406,0.25 0.5156,0.25 0.125,0 0.2032,-0.016 0.094,-0.031 0.1718,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1562 z m 4.5329,0.3438 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2031,0.016 -0.1406,0 -0.2187,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4688 q -0.2969,0.3281 -0.6719,0.5156 -0.375,0.1719 -0.7969,0.1719 -0.375,0 -0.6719,-0.094 -0.2968,-0.094 -0.5156,-0.2656 -0.2031,-0.1875 -0.3281,-0.4531 -0.1094,-0.2657 -0.1094,-0.6094 0,-0.3906 0.1563,-0.6875 0.1562,-0.2969 0.4531,-0.4844 0.3125,-0.1875 0.75,-0.2812 0.4375,-0.094 0.9844,-0.094 h 0.6406 v -0.375 q 0,-0.2657 -0.062,-0.4688 -0.047,-0.2187 -0.1875,-0.3437 -0.125,-0.1407 -0.3281,-0.2032 -0.2032,-0.078 -0.4844,-0.078 -0.3281,0 -0.5781,0.078 -0.25,0.062 -0.4375,0.1563 -0.1875,0.094 -0.3282,0.1719 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1094 -0.016,-0.078 -0.016,-0.1563 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1406 0.078,-0.062 0.25,-0.1563 0.1719,-0.094 0.3907,-0.1718 0.2187,-0.078 0.4843,-0.125 0.2657,-0.047 0.5469,-0.047 0.5,0 0.8438,0.125 0.3593,0.1093 0.5781,0.3281 0.2187,0.2187 0.3125,0.5469 0.1094,0.3281 0.1094,0.7656 z m -0.8593,-2.1407 h -0.7344 q -0.3438,0 -0.6094,0.062 -0.2656,0.062 -0.4375,0.1875 -0.1719,0.1094 -0.25,0.2813 -0.078,0.1562 -0.078,0.3594 0,0.375 0.2344,0.5937 0.2344,0.2031 0.6406,0.2031 0.3438,0 0.625,-0.1718 0.2969,-0.1719 0.6094,-0.5157 z"
+       fill-rule="nonzero"
+       id="path325" />
+    <path
+       fill="#009999"
+       d="m 853.32892,308.68789 v 0 c 0,-2.2785 1.6918,-4.1255 3.7786,-4.1255 h 132.9786 c 1.0022,0 1.9632,0.4346 2.67188,1.2083 0.7086,0.7737 1.1067,1.823 1.1067,2.9172 v 16.5012 c 0,2.2785 -1.69178,4.1255 -3.77858,4.1255 h -132.9786 c -2.0868,0 -3.7786,-1.847 -3.7786,-4.1255 z"
+       fill-rule="evenodd"
+       id="path339"
+       style="stroke-width:0.957033" />
+    <path
+       stroke="#009999"
+       stroke-width="1.27893"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 853.34992,308.70187 v 0 c 0,-2.2835 1.6957,-4.13456 3.7874,-4.13456 h 133.2893 c 1.0045,0 1.9679,0.43556 2.67808,1.21096 0.7103,0.77539 1.1093,1.82701 1.1093,2.9236 v 16.53748 c 0,2.2835 -1.6957,4.13456 -3.78738,4.13456 h -133.2893 c -2.0917,0 -3.7874,-1.85106 -3.7874,-4.13456 z"
+       fill-rule="evenodd"
+       id="path341" />
+    <path
+       fill="#ffffff"
+       d="m 853.75802,399.667 q 0,0.094 -0.016,0.1718 0,0.062 -0.031,0.1094 -0.016,0.047 -0.047,0.078 -0.031,0.016 -0.078,0.016 h -1.8907 v 5.8281 q 0,0.047 -0.031,0.078 -0.016,0.031 -0.078,0.047 -0.047,0.016 -0.1406,0.031 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2188,-0.016 -0.078,-0.016 -0.1406,-0.031 -0.047,-0.016 -0.062,-0.047 -0.016,-0.031 -0.016,-0.078 v -5.8281 h -1.9062 q -0.031,0 -0.078,-0.016 -0.031,-0.031 -0.047,-0.078 -0.016,-0.047 -0.031,-0.1094 -0.016,-0.078 -0.016,-0.1718 0,-0.1094 0.016,-0.1719 0.016,-0.078 0.031,-0.125 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 4.6875 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1719 z m 3.5782,6.2187 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2031,0.016 -0.1406,0 -0.2188,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4687 q -0.2968,0.3281 -0.6718,0.5156 -0.375,0.1719 -0.7969,0.1719 -0.375,0 -0.6719,-0.094 -0.2969,-0.094 -0.5156,-0.2657 -0.2031,-0.1875 -0.3281,-0.4531 -0.1094,-0.2656 -0.1094,-0.6094 0,-0.3906 0.1562,-0.6875 0.1563,-0.2968 0.4532,-0.4843 0.3125,-0.1875 0.75,-0.2813 0.4375,-0.094 0.9843,-0.094 h 0.6407 v -0.375 q 0,-0.2656 -0.062,-0.4687 -0.047,-0.2188 -0.1875,-0.3438 -0.125,-0.1406 -0.3282,-0.2031 -0.2031,-0.078 -0.4843,-0.078 -0.3282,0 -0.5782,0.078 -0.25,0.062 -0.4375,0.1562 -0.1875,0.094 -0.3281,0.1719 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1094 -0.016,-0.078 -0.016,-0.1562 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1407 0.078,-0.062 0.25,-0.1562 0.1719,-0.094 0.3906,-0.1719 0.2188,-0.078 0.4844,-0.125 0.2656,-0.047 0.5469,-0.047 0.5,0 0.8437,0.125 0.3594,0.1094 0.5782,0.3281 0.2187,0.2188 0.3125,0.5469 0.1093,0.3281 0.1093,0.7656 z m -0.8593,-2.1406 h -0.7344 q -0.3438,0 -0.6094,0.062 -0.2656,0.062 -0.4375,0.1875 -0.1719,0.1094 -0.25,0.2812 -0.078,0.1563 -0.078,0.3594 0,0.375 0.2344,0.5938 0.2344,0.2031 0.6406,0.2031 0.3438,0 0.625,-0.1719 0.2969,-0.1719 0.6094,-0.5156 z m 5.8804,2.0312 q 0.047,0.078 0.047,0.125 0,0.047 -0.062,0.078 -0.047,0.031 -0.1563,0.047 -0.094,0.016 -0.25,0.016 -0.1562,0 -0.25,-0.016 -0.094,0 -0.1562,-0.016 -0.047,-0.016 -0.078,-0.047 -0.016,-0.031 -0.047,-0.062 l -1.1094,-1.8593 -1.125,1.8593 q -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.094,0.047 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2344,0.016 -0.1406,0 -0.25,-0.016 -0.094,-0.016 -0.1406,-0.047 -0.031,-0.031 -0.031,-0.078 0,-0.047 0.047,-0.125 l 1.4531,-2.2812 -1.375,-2.2031 q -0.047,-0.062 -0.047,-0.1094 0,-0.062 0.047,-0.094 0.047,-0.031 0.1406,-0.031 0.1094,-0.016 0.2813,-0.016 0.1562,0 0.2344,0.016 0.094,0 0.1406,0.016 0.062,0.016 0.078,0.047 0.031,0.016 0.062,0.047 l 1.0625,1.75 1.0781,-1.75 q 0.016,-0.031 0.047,-0.047 0.031,-0.031 0.062,-0.047 0.047,-0.016 0.125,-0.016 0.094,-0.016 0.2344,-0.016 0.1406,0 0.2344,0.016 0.1093,0 0.1562,0.031 0.047,0.031 0.031,0.078 0,0.047 -0.047,0.125 l -1.375,2.1718 z m 5.1413,-2.2968 q 0,0.5781 -0.1562,1.0625 -0.1563,0.4843 -0.4532,0.8281 -0.2968,0.3437 -0.75,0.5469 -0.4531,0.1875 -1.0468,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7188,-0.5 -0.2812,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0469 0.1563,-0.4843 0.4532,-0.8281 0.2968,-0.3437 0.75,-0.5312 0.4531,-0.2032 1.0468,-0.2032 0.5782,0 1,0.1719 0.4375,0.1719 0.7188,0.5 0.2812,0.3281 0.4219,0.7969 0.1562,0.4687 0.1562,1.0469 z m -0.9062,0.062 q 0,-0.375 -0.078,-0.7032 -0.062,-0.3437 -0.2344,-0.5937 -0.1563,-0.2656 -0.4375,-0.4063 -0.2656,-0.1562 -0.6875,-0.1562 -0.375,0 -0.6563,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1718,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7343 0,0.375 0.062,0.7188 0.078,0.3437 0.2344,0.5937 0.1719,0.25 0.4375,0.4063 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2813,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2657,-0.5781 0.094,-0.3438 0.094,-0.75 z m 6.1976,2.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2031,0.016 -0.1407,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1094,-0.1719 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2187 -0.6719,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4532 0.7812,-0.6563 0.3907,-0.2031 0.7969,-0.2031 0.4688,0 0.7813,0.1562 0.3281,0.1563 0.5156,0.4219 0.2031,0.2656 0.2812,0.625 0.094,0.3594 0.094,0.8594 z m 5.9268,-2.4062 q 0,0.5781 -0.1562,1.0625 -0.1563,0.4843 -0.4532,0.8281 -0.2968,0.3437 -0.75,0.5469 -0.4531,0.1875 -1.0468,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7188,-0.5 -0.2812,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0469 0.1563,-0.4843 0.4532,-0.8281 0.2968,-0.3437 0.75,-0.5312 0.4531,-0.2032 1.0468,-0.2032 0.5782,0 1,0.1719 0.4375,0.1719 0.7188,0.5 0.2812,0.3281 0.4219,0.7969 0.1562,0.4687 0.1562,1.0469 z m -0.9062,0.062 q 0,-0.375 -0.078,-0.7032 -0.062,-0.3437 -0.2344,-0.5937 -0.1563,-0.2656 -0.4375,-0.4063 -0.2656,-0.1562 -0.6875,-0.1562 -0.375,0 -0.6563,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1718,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7343 0,0.375 0.062,0.7188 0.078,0.3437 0.2344,0.5937 0.1719,0.25 0.4375,0.4063 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2813,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2657,-0.5781 0.094,-0.3438 0.094,-0.75 z m 9.1195,2.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1407,0.016 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.8437 q 0,-0.2969 -0.047,-0.5469 -0.047,-0.25 -0.1719,-0.4219 -0.1094,-0.1719 -0.2969,-0.2656 -0.1719,-0.094 -0.4062,-0.094 -0.2969,0 -0.5938,0.2344 -0.2969,0.2187 -0.6562,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1407,0.016 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.8438 q 0,-0.2969 -0.062,-0.5469 -0.062,-0.25 -0.1719,-0.4218 -0.1094,-0.1719 -0.2969,-0.2657 -0.1719,-0.094 -0.4062,-0.094 -0.2969,0 -0.5938,0.2344 -0.2969,0.2188 -0.6562,0.6563 v 3.2812 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1093,-0.031 0.078,-0.016 0.2032,-0.016 0.1093,0 0.1875,0.016 0.078,0 0.1093,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3907,-0.4531 0.75,-0.6562 0.375,-0.2032 0.7657,-0.2032 0.2812,0 0.5156,0.078 0.2344,0.062 0.4062,0.1875 0.1875,0.1094 0.3125,0.2813 0.125,0.1718 0.2032,0.375 0.2343,-0.25 0.4375,-0.4219 0.2187,-0.1875 0.4062,-0.2969 0.2031,-0.1094 0.3906,-0.1562 0.1875,-0.047 0.375,-0.047 0.4532,0 0.75,0.1562 0.3125,0.1563 0.5,0.4219 0.1875,0.2656 0.2657,0.625 0.094,0.3594 0.094,0.75 z m 2.4187,0 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1407,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.031 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2969 -0.1093,0.4062 -0.1094,0.1094 -0.4219,0.1094 -0.2969,0 -0.4219,-0.1094 -0.1094,-0.1093 -0.1094,-0.4062 0,-0.2969 0.1094,-0.4063 0.125,-0.1093 0.4375,-0.1093 0.2969,0 0.4063,0.1093 0.1093,0.1094 0.1093,0.4063 z m 4.8518,5.5469 q 0,0.094 0,0.1562 0,0.062 -0.016,0.1094 -0.016,0.047 -0.031,0.078 -0.016,0.031 -0.094,0.094 -0.062,0.062 -0.2187,0.1718 -0.1563,0.094 -0.3594,0.1719 -0.1875,0.062 -0.4219,0.1094 -0.2187,0.047 -0.4531,0.047 -0.5156,0 -0.9063,-0.1563 -0.3906,-0.1718 -0.6562,-0.4843 -0.25,-0.3282 -0.3906,-0.7969 -0.1407,-0.4688 -0.1407,-1.0781 0,-0.6875 0.1719,-1.1719 0.1719,-0.5 0.4531,-0.8125 0.2969,-0.3281 0.6875,-0.4844 0.4063,-0.1562 0.875,-0.1562 0.2188,0 0.4219,0.047 0.2188,0.047 0.3906,0.1093 0.1875,0.062 0.3125,0.1563 0.1407,0.094 0.2032,0.1562 0.062,0.062 0.078,0.094 0.031,0.031 0.047,0.094 0.016,0.047 0.016,0.1094 0.016,0.062 0.016,0.1563 0,0.2031 -0.047,0.2812 -0.047,0.078 -0.1094,0.078 -0.078,0 -0.1875,-0.078 -0.094,-0.094 -0.25,-0.1875 -0.1563,-0.1094 -0.3906,-0.1875 -0.2188,-0.094 -0.5157,-0.094 -0.6093,0 -0.9531,0.4844 -0.3281,0.4687 -0.3281,1.3594 0,0.4531 0.078,0.7968 0.094,0.3438 0.2656,0.5782 0.1719,0.2187 0.4063,0.3437 0.25,0.1094 0.5625,0.1094 0.2812,0 0.5,-0.094 0.2343,-0.094 0.3906,-0.2031 0.1719,-0.125 0.2812,-0.2032 0.1094,-0.094 0.1719,-0.094 0.047,0 0.062,0.016 0.031,0.016 0.047,0.078 0.016,0.047 0.016,0.125 0.016,0.062 0.016,0.1719 z m 7.087,0.7187 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2031,0.016 -0.1407,0 -0.2188,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4687 q -0.2969,0.3281 -0.6719,0.5156 -0.375,0.1719 -0.7968,0.1719 -0.375,0 -0.6719,-0.094 -0.2969,-0.094 -0.5156,-0.2657 -0.2032,-0.1875 -0.3282,-0.4531 -0.1093,-0.2656 -0.1093,-0.6094 0,-0.3906 0.1562,-0.6875 0.1563,-0.2968 0.4531,-0.4843 0.3125,-0.1875 0.75,-0.2813 0.4375,-0.094 0.9844,-0.094 h 0.6406 v -0.375 q 0,-0.2656 -0.062,-0.4687 -0.047,-0.2188 -0.1875,-0.3438 -0.125,-0.1406 -0.3281,-0.2031 -0.2031,-0.078 -0.4844,-0.078 -0.3281,0 -0.5781,0.078 -0.25,0.062 -0.4375,0.1562 -0.1875,0.094 -0.3281,0.1719 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1094 -0.016,-0.078 -0.016,-0.1562 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1407 0.078,-0.062 0.25,-0.1562 0.1719,-0.094 0.3906,-0.1719 0.2188,-0.078 0.4844,-0.125 0.2656,-0.047 0.5469,-0.047 0.5,0 0.8437,0.125 0.3594,0.1094 0.5781,0.3281 0.2188,0.2188 0.3125,0.5469 0.1094,0.3281 0.1094,0.7656 z m -0.8594,-2.1406 h -0.7344 q -0.3437,0 -0.6093,0.062 -0.2657,0.062 -0.4375,0.1875 -0.1719,0.1094 -0.25,0.2812 -0.078,0.1563 -0.078,0.3594 0,0.375 0.2344,0.5938 0.2343,0.2031 0.6406,0.2031 0.3437,0 0.625,-0.1719 0.2969,-0.1719 0.6094,-0.5156 z m 4.9325,-4.4688 q 0,0.094 -0.016,0.1563 0,0.062 -0.016,0.094 -0.016,0.031 -0.047,0.047 -0.016,0.016 -0.047,0.016 -0.031,0 -0.094,-0.016 -0.047,-0.031 -0.125,-0.062 -0.078,-0.031 -0.1875,-0.047 -0.1093,-0.031 -0.2343,-0.031 -0.2032,0 -0.3438,0.062 -0.125,0.062 -0.2187,0.2031 -0.078,0.125 -0.1094,0.3438 -0.031,0.2031 -0.031,0.5156 v 0.5 h 1.0312 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.0312 v 4.1093 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2032,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1093 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6563 v -0.4844 q 0,-0.4844 0.094,-0.8281 0.094,-0.3594 0.2812,-0.5781 0.1875,-0.2344 0.4688,-0.3282 0.2812,-0.1093 0.6719,-0.1093 0.1718,0 0.3437,0.031 0.1719,0.031 0.2656,0.078 0.094,0.031 0.125,0.062 0.031,0.031 0.047,0.078 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1718 z m 3.1479,0 q 0,0.094 -0.016,0.1563 0,0.062 -0.016,0.094 -0.016,0.031 -0.047,0.047 -0.016,0.016 -0.047,0.016 -0.031,0 -0.094,-0.016 -0.047,-0.031 -0.125,-0.062 -0.078,-0.031 -0.1875,-0.047 -0.1094,-0.031 -0.2344,-0.031 -0.2031,0 -0.3437,0.062 -0.125,0.062 -0.2188,0.2031 -0.078,0.125 -0.1094,0.3438 -0.031,0.2031 -0.031,0.5156 v 0.5 h 1.0313 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.0313 v 4.1093 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1093 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6562 v -0.4844 q 0,-0.4844 0.094,-0.8281 0.094,-0.3594 0.2813,-0.5781 0.1875,-0.2344 0.4687,-0.3282 0.2813,-0.1093 0.6719,-0.1093 0.1719,0 0.3438,0.031 0.1718,0.031 0.2656,0.078 0.094,0.031 0.125,0.062 0.031,0.031 0.047,0.078 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1718 z m 1.5489,6.6094 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2031,-0.016 0.1407,0 0.2188,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2969 -0.1094,0.4062 -0.1094,0.1094 -0.4219,0.1094 -0.2968,0 -0.4218,-0.1094 -0.1094,-0.1093 -0.1094,-0.4062 0,-0.2969 0.1094,-0.4063 0.125,-0.1093 0.4375,-0.1093 0.2968,0 0.4062,0.1093 0.1094,0.1094 0.1094,0.4063 z m 2.3518,6.2656 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -6.9531 q 0,-0.047 0.016,-0.078 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2188,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.078 z m 2.4455,0 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2031,-0.016 0.1407,0 0.2188,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2969 -0.1094,0.4062 -0.1094,0.1094 -0.4219,0.1094 -0.2968,0 -0.4218,-0.1094 -0.1094,-0.1093 -0.1094,-0.4062 0,-0.2969 0.1094,-0.4063 0.125,-0.1093 0.4375,-0.1093 0.2968,0 0.4062,0.1093 0.1094,0.1094 0.1094,0.4063 z m 5.0236,6.2656 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2031,0.016 -0.1406,0 -0.2187,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4687 q -0.2969,0.3281 -0.6719,0.5156 -0.375,0.1719 -0.7969,0.1719 -0.375,0 -0.6719,-0.094 -0.2968,-0.094 -0.5156,-0.2657 -0.2031,-0.1875 -0.3281,-0.4531 -0.1094,-0.2656 -0.1094,-0.6094 0,-0.3906 0.1563,-0.6875 0.1562,-0.2968 0.4531,-0.4843 0.3125,-0.1875 0.75,-0.2813 0.4375,-0.094 0.9844,-0.094 h 0.6406 v -0.375 q 0,-0.2656 -0.062,-0.4687 -0.047,-0.2188 -0.1875,-0.3438 -0.125,-0.1406 -0.3281,-0.2031 -0.2032,-0.078 -0.4844,-0.078 -0.3281,0 -0.5781,0.078 -0.25,0.062 -0.4375,0.1562 -0.1875,0.094 -0.3282,0.1719 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1094 -0.016,-0.078 -0.016,-0.1562 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1407 0.078,-0.062 0.25,-0.1562 0.1719,-0.094 0.3907,-0.1719 0.2187,-0.078 0.4843,-0.125 0.2657,-0.047 0.5469,-0.047 0.5,0 0.8438,0.125 0.3593,0.1094 0.5781,0.3281 0.2187,0.2188 0.3125,0.5469 0.1094,0.3281 0.1094,0.7656 z m -0.8593,-2.1406 h -0.7344 q -0.3438,0 -0.6094,0.062 -0.2656,0.062 -0.4375,0.1875 -0.1719,0.1094 -0.25,0.2812 -0.078,0.1563 -0.078,0.3594 0,0.375 0.2344,0.5938 0.2344,0.2031 0.6406,0.2031 0.3438,0 0.625,-0.1719 0.2969,-0.1719 0.6094,-0.5156 z m 4.771,1.7969 q 0,0.1406 -0.031,0.2343 -0.016,0.094 -0.062,0.1407 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1093,0.031 -0.2343,0.047 -0.1094,0.016 -0.2188,0.016 -0.375,0 -0.6406,-0.094 -0.25,-0.1094 -0.4219,-0.2969 -0.1562,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6562 v -1.1094 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.047 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0.016 0.125,0.047 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 v 1.1094 h 1.2032 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.2032 v 2.6094 q 0,0.4843 0.1407,0.7343 0.1406,0.25 0.5156,0.25 0.125,0 0.2031,-0.016 0.094,-0.031 0.1719,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1563 z m 1.9913,0.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1407,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.031 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2969 -0.1093,0.4062 -0.1094,0.1094 -0.4219,0.1094 -0.2969,0 -0.4219,-0.1094 -0.1094,-0.1093 -0.1094,-0.4062 0,-0.2969 0.1094,-0.4063 0.125,-0.1093 0.4375,-0.1093 0.2969,0 0.4063,0.1093 0.1093,0.1094 0.1093,0.4063 z m 5.8518,3.8594 q 0,0.5781 -0.1562,1.0625 -0.1563,0.4843 -0.4532,0.8281 -0.2968,0.3437 -0.75,0.5469 -0.4531,0.1875 -1.0468,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7188,-0.5 -0.2812,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0469 0.1563,-0.4843 0.4532,-0.8281 0.2968,-0.3437 0.75,-0.5312 0.4531,-0.2032 1.0468,-0.2032 0.5782,0 1,0.1719 0.4375,0.1719 0.7188,0.5 0.2812,0.3281 0.4219,0.7969 0.1562,0.4687 0.1562,1.0469 z m -0.9062,0.062 q 0,-0.375 -0.078,-0.7032 -0.062,-0.3437 -0.2344,-0.5937 -0.1563,-0.2656 -0.4375,-0.4063 -0.2656,-0.1562 -0.6875,-0.1562 -0.375,0 -0.6563,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1718,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7343 0,0.375 0.062,0.7188 0.078,0.3437 0.2344,0.5937 0.1719,0.25 0.4375,0.4063 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2813,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2657,-0.5781 0.094,-0.3438 0.094,-0.75 z m 6.1976,2.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2031,0.016 -0.1407,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1094,-0.1719 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2187 -0.6719,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4532 0.7812,-0.6563 0.3907,-0.2031 0.7969,-0.2031 0.4688,0 0.7813,0.1562 0.3281,0.1563 0.5156,0.4219 0.2031,0.2656 0.2812,0.625 0.094,0.3594 0.094,0.8594 z m 8.3359,-2.4062 q 0,0.5781 -0.1562,1.0625 -0.1563,0.4843 -0.4532,0.8281 -0.2968,0.3437 -0.75,0.5469 -0.4531,0.1875 -1.0468,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7188,-0.5 -0.2812,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0469 0.1563,-0.4843 0.4532,-0.8281 0.2968,-0.3437 0.75,-0.5312 0.4531,-0.2032 1.0468,-0.2032 0.5782,0 1,0.1719 0.4375,0.1719 0.7188,0.5 0.2812,0.3281 0.4219,0.7969 0.1562,0.4687 0.1562,1.0469 z m -0.9062,0.062 q 0,-0.375 -0.078,-0.7032 -0.062,-0.3437 -0.2344,-0.5937 -0.1563,-0.2656 -0.4375,-0.4063 -0.2656,-0.1562 -0.6875,-0.1562 -0.375,0 -0.6563,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1718,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7343 0,0.375 0.062,0.7188 0.078,0.3437 0.2344,0.5937 0.1719,0.25 0.4375,0.4063 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2813,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2657,-0.5781 0.094,-0.3438 0.094,-0.75 z m 4.7288,-4.2657 q 0,0.094 -0.016,0.1563 0,0.062 -0.016,0.094 -0.016,0.031 -0.047,0.047 -0.016,0.016 -0.047,0.016 -0.031,0 -0.094,-0.016 -0.047,-0.031 -0.125,-0.062 -0.078,-0.031 -0.1875,-0.047 -0.1093,-0.031 -0.2343,-0.031 -0.2032,0 -0.3438,0.062 -0.125,0.062 -0.2187,0.2031 -0.078,0.125 -0.1094,0.3438 -0.031,0.2031 -0.031,0.5156 v 0.5 h 1.0312 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.0312 v 4.1093 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2032,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1093 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6563 v -0.4844 q 0,-0.4844 0.094,-0.8281 0.094,-0.3594 0.2812,-0.5781 0.1875,-0.2344 0.4688,-0.3282 0.2812,-0.1093 0.6719,-0.1093 0.1718,0 0.3437,0.031 0.1719,0.031 0.2656,0.078 0.094,0.031 0.125,0.062 0.031,0.031 0.047,0.078 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1718 z m 7.4581,4.2032 q 0,0.5781 -0.1563,1.0625 -0.1562,0.4843 -0.4531,0.8281 -0.2969,0.3437 -0.75,0.5469 -0.4531,0.1875 -1.0469,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7187,-0.5 -0.2813,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0469 0.1562,-0.4843 0.4531,-0.8281 0.2969,-0.3437 0.75,-0.5312 0.4531,-0.2032 1.0469,-0.2032 0.5781,0 1,0.1719 0.4375,0.1719 0.7187,0.5 0.2813,0.3281 0.4219,0.7969 0.1563,0.4687 0.1563,1.0469 z m -0.9063,0.062 q 0,-0.375 -0.078,-0.7032 -0.062,-0.3437 -0.2344,-0.5937 -0.1562,-0.2656 -0.4375,-0.4063 -0.2656,-0.1562 -0.6875,-0.1562 -0.375,0 -0.6562,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1719,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7343 0,0.375 0.062,0.7188 0.078,0.3437 0.2343,0.5937 0.1719,0.25 0.4375,0.4063 0.2813,0.1406 0.6875,0.1406 0.375,0 0.6407,-0.125 0.2812,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2656,-0.5781 0.094,-0.3438 0.094,-0.75 z m 4.9008,-2.0313 q 0,0.1094 -0.016,0.1875 0,0.078 -0.016,0.125 -0.016,0.047 -0.047,0.078 -0.016,0.016 -0.047,0.016 -0.047,0 -0.1094,-0.016 -0.062,-0.031 -0.1406,-0.047 -0.062,-0.031 -0.1563,-0.047 -0.094,-0.031 -0.2031,-0.031 -0.125,0 -0.25,0.062 -0.125,0.047 -0.2656,0.1719 -0.1407,0.1094 -0.2969,0.3125 -0.1406,0.1875 -0.3281,0.4844 v 3.0781 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1093,-0.031 0.078,-0.016 0.2032,-0.016 0.1093,0 0.1875,0.016 0.078,0 0.1093,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.6875 q 0.1875,-0.2813 0.3594,-0.4531 0.1719,-0.1875 0.3125,-0.2813 0.1563,-0.1094 0.2969,-0.1406 0.1562,-0.047 0.2969,-0.047 0.078,0 0.1562,0.016 0.094,0 0.1875,0.031 0.094,0.016 0.1563,0.047 0.078,0.016 0.1093,0.047 0.031,0.016 0.047,0.047 0.016,0.016 0.016,0.062 0.016,0.031 0.016,0.1094 0,0.062 0,0.1875 z m 3.5432,-2.2344 q 0,0.094 -0.016,0.1563 0,0.062 -0.016,0.094 -0.016,0.031 -0.047,0.047 -0.016,0.016 -0.047,0.016 -0.031,0 -0.094,-0.016 -0.047,-0.031 -0.125,-0.062 -0.078,-0.031 -0.1875,-0.047 -0.1094,-0.031 -0.2344,-0.031 -0.2031,0 -0.3437,0.062 -0.125,0.062 -0.2188,0.2031 -0.078,0.125 -0.1093,0.3438 -0.031,0.2031 -0.031,0.5156 v 0.5 h 1.0312 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.0312 v 4.1093 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1407,0.016 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1093 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6563 v -0.4844 q 0,-0.4844 0.094,-0.8281 0.094,-0.3594 0.2812,-0.5781 0.1875,-0.2344 0.4688,-0.3282 0.2812,-0.1093 0.6718,-0.1093 0.1719,0 0.3438,0.031 0.1719,0.031 0.2656,0.078 0.094,0.031 0.125,0.062 0.031,0.031 0.047,0.078 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1718 z"
+       fill-rule="nonzero"
+       id="path363" />
+    <path
+       fill="#ffffff"
+       d="m 968.66192,405.4482 q 0,0.3594 -0.125,0.4844 -0.125,0.125 -0.4375,0.125 -0.3125,0 -0.4375,-0.1094 -0.125,-0.125 -0.125,-0.4844 0,-0.375 0.125,-0.5 0.125,-0.125 0.4531,-0.125 0.3125,0 0.4219,0.125 0.125,0.125 0.125,0.4844 z m 3.789,0.094 q 0,0.1406 -0.031,0.2344 -0.016,0.094 -0.062,0.1406 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1093,0.031 -0.2343,0.047 -0.1094,0.016 -0.2188,0.016 -0.375,0 -0.6406,-0.094 -0.25,-0.1094 -0.4219,-0.2969 -0.1562,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2812 0,-0.094 0.016,-0.1563 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6562 v -1.1093 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.047 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0.016 0.125,0.047 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 v 1.1093 h 1.2032 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1094 0.016,0.062 0.016,0.1563 0,0.1875 -0.047,0.2812 -0.047,0.078 -0.125,0.078 h -1.2032 v 2.6094 q 0,0.4844 0.1407,0.7344 0.1406,0.25 0.5156,0.25 0.125,0 0.2031,-0.016 0.094,-0.031 0.1719,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1562 z m 4.6788,0.2344 q 0.047,0.078 0.047,0.125 0,0.047 -0.062,0.078 -0.047,0.031 -0.1562,0.047 -0.094,0.016 -0.25,0.016 -0.1563,0 -0.25,-0.016 -0.094,0 -0.1563,-0.016 -0.047,-0.016 -0.078,-0.047 -0.016,-0.031 -0.047,-0.062 l -1.1093,-1.8594 -1.125,1.8594 q -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.094,0.047 -0.047,0.016 -0.1407,0.016 -0.078,0.016 -0.2343,0.016 -0.1407,0 -0.25,-0.016 -0.094,-0.016 -0.1407,-0.047 -0.031,-0.031 -0.031,-0.078 0,-0.047 0.047,-0.125 l 1.4532,-2.2813 -1.375,-2.2031 q -0.047,-0.062 -0.047,-0.1094 0,-0.062 0.047,-0.094 0.047,-0.031 0.1406,-0.031 0.1094,-0.016 0.2812,-0.016 0.1563,0 0.2344,0.016 0.094,0 0.1406,0.016 0.062,0.016 0.078,0.047 0.031,0.016 0.062,0.047 l 1.0625,1.75 1.0782,-1.75 q 0.016,-0.031 0.047,-0.047 0.031,-0.031 0.062,-0.047 0.047,-0.016 0.125,-0.016 0.094,-0.016 0.2343,-0.016 0.1407,0 0.2344,0.016 0.1094,0 0.1563,0.031 0.047,0.031 0.031,0.078 0,0.047 -0.047,0.125 l -1.375,2.1719 z m 3.5372,-0.2344 q 0,0.1406 -0.031,0.2344 -0.016,0.094 -0.062,0.1406 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1094,0.031 -0.2344,0.047 -0.1094,0.016 -0.2187,0.016 -0.375,0 -0.6407,-0.094 -0.25,-0.1094 -0.4218,-0.2969 -0.1563,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2812 0,-0.094 0.016,-0.1563 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6563 v -1.1093 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.047 0.078,-0.016 0.2031,-0.016 0.1407,0 0.2188,0.016 0.078,0.016 0.125,0.047 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 v 1.1093 h 1.2031 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1094 0.016,0.062 0.016,0.1563 0,0.1875 -0.047,0.2812 -0.047,0.078 -0.125,0.078 h -1.2031 v 2.6094 q 0,0.4844 0.1406,0.7344 0.1406,0.25 0.5156,0.25 0.125,0 0.2032,-0.016 0.094,-0.031 0.1718,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1562 z"
+       fill-rule="nonzero"
+       id="path365" />
+    <path
+       fill="#009999"
+       d="m 1021.3403,147.50471 h 137.3985 v 21.16784 h -137.3985 z"
+       fill-rule="evenodd"
+       id="path367"
+       style="stroke:#009999;stroke-width:0.744792;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.817692"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 1021.3403,147.50471 h 137.3985 v 21.16784 h -137.3985 z"
+       fill-rule="evenodd"
+       id="path369" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 97.933525,200.7642 c 0,5.05409 -0.0472,7.58028 -0.0945,10.10818 -0.0472,2.52784 -0.0945,5.05746 -0.0945,10.11496"
+       fill-rule="evenodd"
+       id="path635"
+       style="stroke-width:0.870671" />
+    <path
+       fill="#009999"
+       d="m 895.80262,58.60697 q 0,0.76563 -0.125,1.40625 -0.125,0.64063 -0.4062,1.10938 -0.2813,0.45312 -0.75,0.70312 -0.4532,0.25 -1.1094,0.25 -0.6406,0 -1.0781,-0.21875 -0.4375,-0.23437 -0.7032,-0.67187 -0.2656,-0.4375 -0.375,-1.07813 -0.1093,-0.64062 -0.1093,-1.46875 0,-0.78125 0.125,-1.42187 0.125,-0.64063 0.4062,-1.09375 0.2813,-0.46875 0.7344,-0.71875 0.4687,-0.25 1.125,-0.25 0.6406,0 1.0781,0.23437 0.4375,0.21875 0.7031,0.65625 0.2657,0.4375 0.375,1.07813 0.1094,0.64062 0.1094,1.48437 z m -0.9219,0.0625 q 0,-0.51562 -0.031,-0.90625 -0.031,-0.40625 -0.1093,-0.70312 -0.062,-0.3125 -0.1875,-0.53125 -0.1094,-0.23438 -0.2657,-0.375 -0.1562,-0.14063 -0.3593,-0.20313 -0.1875,-0.0625 -0.4375,-0.0625 -0.4375,0 -0.7188,0.20313 -0.2812,0.20312 -0.4375,0.57812 -0.1562,0.35938 -0.2187,0.85938 -0.047,0.48437 -0.047,1.04687 0,0.75 0.078,1.28125 0.078,0.51563 0.2343,0.85938 0.1719,0.32812 0.4375,0.48437 0.2657,0.14063 0.6407,0.14063 0.2812,0 0.5,-0.0937 0.2343,-0.0937 0.3906,-0.26563 0.1562,-0.17187 0.25,-0.40625 0.1094,-0.25 0.1719,-0.54687 0.062,-0.29688 0.078,-0.64063 0.031,-0.34375 0.031,-0.71875 z m 6.2604,1.57813 q 0,0.4375 -0.1563,0.78125 -0.1562,0.34375 -0.4531,0.57812 -0.2969,0.23438 -0.7344,0.35938 -0.4218,0.10937 -0.9843,0.10937 -0.5157,0 -0.9375,-0.10937 -0.4063,-0.10938 -0.6875,-0.3125 -0.2813,-0.21875 -0.4375,-0.53125 -0.1563,-0.3125 -0.1563,-0.71875 0,-0.3125 0.1094,-0.57813 0.1094,-0.26562 0.2969,-0.48437 0.2031,-0.21875 0.4843,-0.40625 0.2813,-0.20313 0.6407,-0.39063 -0.3125,-0.15625 -0.5469,-0.32812 -0.2344,-0.1875 -0.4063,-0.39063 -0.1718,-0.21875 -0.2656,-0.45312 -0.078,-0.25 -0.078,-0.53125 0,-0.34375 0.125,-0.65625 0.1406,-0.3125 0.3906,-0.53125 0.2657,-0.23438 0.6563,-0.35938 0.4062,-0.14062 0.9219,-0.14062 0.5156,0 0.8906,0.125 0.375,0.10937 0.6094,0.32812 0.25,0.20313 0.3593,0.5 0.1094,0.28125 0.1094,0.60938 0,0.26562 -0.094,0.51562 -0.078,0.23438 -0.25,0.45313 -0.1562,0.21875 -0.4062,0.42187 -0.2344,0.1875 -0.5469,0.34375 0.375,0.1875 0.6562,0.39063 0.2969,0.1875 0.4844,0.40625 0.2031,0.21875 0.2969,0.46875 0.1094,0.23437 0.1094,0.53125 z m -1.125,-3.45313 q 0,-0.21875 -0.078,-0.39062 -0.078,-0.17188 -0.2344,-0.29688 -0.1406,-0.125 -0.3594,-0.1875 -0.2031,-0.0781 -0.4844,-0.0781 -0.5625,0 -0.8593,0.26562 -0.2813,0.25 -0.2813,0.6875 0,0.20313 0.062,0.39063 0.078,0.17187 0.2188,0.32812 0.1562,0.15625 0.375,0.3125 0.2343,0.14063 0.5468,0.29688 0.5313,-0.26563 0.8125,-0.59375 0.2813,-0.32813 0.2813,-0.73438 z m 0.2187,3.54688 q 0,-0.23438 -0.094,-0.42188 -0.094,-0.20312 -0.2812,-0.375 -0.1719,-0.17187 -0.4375,-0.32812 -0.2656,-0.15625 -0.6094,-0.32813 -0.3281,0.17188 -0.5781,0.32813 -0.25,0.15625 -0.4063,0.32812 -0.1562,0.17188 -0.25,0.35938 -0.078,0.1875 -0.078,0.42187 0,0.5 0.3438,0.78125 0.3593,0.28125 1.0312,0.28125 0.6719,0 1.0156,-0.28125 0.3438,-0.28125 0.3438,-0.76562 z m 6.6666,3.1875 q 0,0.1875 -0.047,0.26562 -0.031,0.0937 -0.125,0.0937 h -5.0156 q -0.078,0 -0.125,-0.0781 -0.047,-0.0781 -0.047,-0.26563 0,-0.17187 0.047,-0.26562 0.047,-0.0937 0.125,-0.0937 h 5.0156 q 0.078,0 0.125,0.0781 0.047,0.0937 0.047,0.26563 z m 5.0886,-4.07813 q 0,0.60938 -0.1406,1.09375 -0.125,0.48438 -0.3907,0.82813 -0.25,0.34375 -0.625,0.53125 -0.375,0.17187 -0.8593,0.17187 -0.2344,0 -0.4219,-0.0469 -0.1875,-0.0312 -0.375,-0.125 -0.1719,-0.10938 -0.3594,-0.25 -0.1719,-0.15625 -0.375,-0.375 v 0.57812 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.062,0.0156 -0.1719,0.0156 -0.1093,0 -0.1875,-0.0156 -0.062,0 -0.1093,-0.0156 -0.047,-0.0312 -0.062,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -6.95312 q 0,-0.0469 0.016,-0.0781 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1406,-0.0312 0.078,-0.0156 0.2031,-0.0156 0.1406,0 0.2188,0.0156 0.078,0 0.125,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0781 v 2.79687 q 0.2031,-0.20312 0.3906,-0.34375 0.2031,-0.15625 0.3906,-0.25 0.1875,-0.0937 0.375,-0.125 0.1875,-0.0469 0.3906,-0.0469 0.5157,0 0.875,0.20312 0.3594,0.20313 0.5782,0.54688 0.2343,0.34375 0.3437,0.79687 0.1094,0.45313 0.1094,0.96875 z m -0.9063,0.0937 q 0,-0.35937 -0.062,-0.6875 -0.047,-0.34375 -0.1875,-0.59375 -0.1406,-0.26562 -0.3593,-0.42187 -0.2188,-0.17188 -0.5625,-0.17188 -0.1563,0 -0.3282,0.0469 -0.1562,0.0469 -0.3281,0.15625 -0.1562,0.10937 -0.3437,0.28125 -0.1719,0.17187 -0.375,0.4375 v 1.85937 q 0.3593,0.4375 0.6718,0.67188 0.3282,0.21875 0.6719,0.21875 0.3281,0 0.5469,-0.15625 0.2344,-0.15625 0.375,-0.40625 0.1406,-0.26563 0.2031,-0.57813 0.078,-0.32812 0.078,-0.65625 z m 3.0519,2.3125 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2188,0.0156 -0.125,0 -0.2031,-0.0156 -0.078,0 -0.1406,-0.0156 -0.047,-0.0312 -0.062,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -4.6875 q 0,-0.0312 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1406,-0.0312 0.078,-0.0156 0.2031,-0.0156 0.1406,0 0.2188,0.0156 0.078,0 0.125,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0625 z m 0.094,-6.26562 q 0,0.29687 -0.1094,0.40625 -0.1094,0.10937 -0.4219,0.10937 -0.2969,0 -0.4219,-0.10937 -0.1093,-0.10938 -0.1093,-0.40625 0,-0.29688 0.1093,-0.40625 0.125,-0.10938 0.4375,-0.10938 0.2969,0 0.4063,0.10938 0.1094,0.10937 0.1094,0.40625 z m 5.5236,6.26562 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2031,0.0156 -0.1406,0 -0.2188,-0.0156 -0.078,0 -0.125,-0.0156 -0.047,-0.0312 -0.078,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -2.75 q 0,-0.39062 -0.062,-0.64062 -0.062,-0.25 -0.1875,-0.42188 -0.1093,-0.17187 -0.3125,-0.26562 -0.1875,-0.0937 -0.4375,-0.0937 -0.3125,0 -0.6406,0.23437 -0.3125,0.21875 -0.6719,0.65625 v 3.28125 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2187,0.0156 -0.125,0 -0.2031,-0.0156 -0.078,0 -0.1407,-0.0156 -0.047,-0.0312 -0.062,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -4.6875 q 0,-0.0469 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.047,-0.0312 0.1094,-0.0312 0.078,-0.0156 0.2031,-0.0156 0.1094,0 0.1875,0.0156 0.078,0 0.1094,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0156 0.031,0.0625 v 0.625 q 0.3906,-0.45312 0.7813,-0.65625 0.3906,-0.20312 0.7968,-0.20312 0.4688,0 0.7813,0.15625 0.3281,0.15625 0.5156,0.42187 0.2031,0.26563 0.2813,0.625 0.094,0.35938 0.094,0.85938 z m 5.5987,0 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2031,0.0156 -0.1407,0 -0.2188,-0.0156 -0.078,0 -0.125,-0.0156 -0.047,-0.0312 -0.078,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -2.75 q 0,-0.39062 -0.062,-0.64062 -0.062,-0.25 -0.1875,-0.42188 -0.1094,-0.17187 -0.3125,-0.26562 -0.1875,-0.0937 -0.4375,-0.0937 -0.3125,0 -0.6406,0.23437 -0.3125,0.21875 -0.6719,0.65625 v 3.28125 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2187,0.0156 -0.125,0 -0.2032,-0.0156 -0.078,0 -0.1406,-0.0156 -0.047,-0.0312 -0.062,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -4.6875 q 0,-0.0469 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.047,-0.0312 0.1094,-0.0312 0.078,-0.0156 0.2031,-0.0156 0.1094,0 0.1875,0.0156 0.078,0 0.1094,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0156 0.031,0.0625 v 0.625 q 0.3906,-0.45312 0.7812,-0.65625 0.3907,-0.20312 0.7969,-0.20312 0.4688,0 0.7813,0.15625 0.3281,0.15625 0.5156,0.42187 0.2031,0.26563 0.2812,0.625 0.094,0.35938 0.094,0.85938 z m 2.4268,0 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2187,0.0156 -0.125,0 -0.2032,-0.0156 -0.078,0 -0.1406,-0.0156 -0.047,-0.0312 -0.062,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -4.6875 q 0,-0.0312 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.062,-0.0312 0.1406,-0.0312 0.078,-0.0156 0.2032,-0.0156 0.1406,0 0.2187,0.0156 0.078,0 0.125,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0312 0.031,0.0625 z m 0.094,-6.26562 q 0,0.29687 -0.1094,0.40625 -0.1093,0.10937 -0.4218,0.10937 -0.2969,0 -0.4219,-0.10937 -0.1094,-0.10938 -0.1094,-0.40625 0,-0.29688 0.1094,-0.40625 0.125,-0.10938 0.4375,-0.10938 0.2969,0 0.4062,0.10938 0.1094,0.10937 0.1094,0.40625 z m 5.5237,6.26562 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2032,0.0156 -0.1406,0 -0.2187,-0.0156 -0.078,0 -0.125,-0.0156 -0.047,-0.0312 -0.078,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -2.75 q 0,-0.39062 -0.062,-0.64062 -0.062,-0.25 -0.1875,-0.42188 -0.1094,-0.17187 -0.3125,-0.26562 -0.1875,-0.0937 -0.4375,-0.0937 -0.3125,0 -0.6406,0.23437 -0.3125,0.21875 -0.6719,0.65625 v 3.28125 q 0,0.0312 -0.031,0.0625 -0.016,0.0312 -0.062,0.0625 -0.047,0.0156 -0.125,0.0156 -0.078,0.0156 -0.2188,0.0156 -0.125,0 -0.2031,-0.0156 -0.078,0 -0.1406,-0.0156 -0.047,-0.0312 -0.062,-0.0625 -0.016,-0.0312 -0.016,-0.0625 v -4.6875 q 0,-0.0469 0.016,-0.0625 0.016,-0.0312 0.062,-0.0469 0.047,-0.0312 0.1094,-0.0312 0.078,-0.0156 0.2031,-0.0156 0.1094,0 0.1875,0.0156 0.078,0 0.1094,0.0312 0.047,0.0156 0.062,0.0469 0.031,0.0156 0.031,0.0625 v 0.625 q 0.3906,-0.45312 0.7812,-0.65625 0.3906,-0.20312 0.7969,-0.20312 0.4687,0 0.7812,0.15625 0.3282,0.15625 0.5157,0.42187 0.2031,0.26563 0.2812,0.625 0.094,0.35938 0.094,0.85938 z m 5.4737,-4.46875 q 0,0.17188 -0.047,0.26563 -0.047,0.0781 -0.125,0.0781 h -0.6719 q 0.1875,0.1875 0.25,0.42188 0.078,0.21875 0.078,0.45312 0,0.40625 -0.1406,0.71875 -0.125,0.3125 -0.375,0.53125 -0.2344,0.21875 -0.5625,0.32813 -0.3282,0.10937 -0.7344,0.10937 -0.2813,0 -0.5469,-0.0625 -0.25,-0.0781 -0.3906,-0.20312 -0.094,0.0937 -0.1563,0.21875 -0.062,0.125 -0.062,0.28125 0,0.17187 0.1719,0.29687 0.1719,0.125 0.4531,0.125 l 1.2188,0.0625 q 0.3437,0 0.625,0.0937 0.2969,0.0781 0.5156,0.25 0.2188,0.15625 0.3281,0.39063 0.125,0.21875 0.125,0.53125 0,0.32812 -0.1406,0.60937 -0.125,0.29688 -0.4062,0.51563 -0.2813,0.21875 -0.7188,0.34375 -0.4219,0.14062 -1.0156,0.14062 -0.5625,0 -0.9688,-0.10937 -0.3906,-0.0937 -0.6562,-0.26563 -0.25,-0.15625 -0.3594,-0.39062 -0.1094,-0.23438 -0.1094,-0.5 0,-0.17188 0.031,-0.34375 0.047,-0.15625 0.125,-0.29688 0.094,-0.14062 0.2188,-0.26562 0.125,-0.14063 0.2969,-0.28125 -0.25,-0.125 -0.375,-0.3125 -0.125,-0.20313 -0.125,-0.4375 0,-0.3125 0.125,-0.5625 0.1406,-0.25 0.3281,-0.45313 -0.1563,-0.1875 -0.25,-0.42187 -0.094,-0.25 -0.094,-0.59375 0,-0.40625 0.125,-0.71875 0.1406,-0.3125 0.375,-0.53125 0.25,-0.21875 0.5781,-0.32813 0.3438,-0.125 0.7344,-0.125 0.2187,0 0.3906,0.0312 0.1875,0.0156 0.3438,0.0469 h 1.4218 q 0.094,0 0.125,0.0937 0.047,0.0781 0.047,0.26562 z m -1.3438,1.23438 q 0,-0.48438 -0.2656,-0.75 -0.25,-0.26563 -0.7344,-0.26563 -0.25,0 -0.4375,0.0781 -0.1875,0.0781 -0.3125,0.23437 -0.1094,0.14063 -0.1719,0.32813 -0.062,0.1875 -0.062,0.40625 0,0.45312 0.2657,0.71875 0.2656,0.26562 0.7343,0.26562 0.25,0 0.4375,-0.0781 0.1875,-0.0781 0.3125,-0.21875 0.125,-0.14063 0.1719,-0.32813 0.062,-0.1875 0.062,-0.39062 z m 0.4375,3.70312 q 0,-0.29687 -0.25,-0.45312 -0.25,-0.17188 -0.6719,-0.1875 l -1.2031,-0.0469 q -0.1719,0.14063 -0.2812,0.26563 -0.094,0.10937 -0.1563,0.20312 -0.062,0.10938 -0.094,0.21875 -0.016,0.10938 -0.016,0.21875 0,0.32813 0.3438,0.5 0.3437,0.1875 0.9531,0.1875 0.3906,0 0.6406,-0.0781 0.2656,-0.0781 0.4219,-0.20313 0.1719,-0.125 0.2344,-0.29687 0.078,-0.15625 0.078,-0.32813 z"
+       fill-rule="nonzero"
+       id="path319" />
+    <path
+       fill="#ffffff"
+       d="m 846.42412,114.76117 v 0 c 0,-2.50531 2.0309,-4.53626 4.5362,-4.53626 h 128.3265 c 1.2031,0 2.3569,0.47797 3.2076,1.32868 0.8508,0.85071 1.3287,2.00452 1.3287,3.20758 v 18.14441 c 0,2.50525 -2.031,4.53619 -4.5363,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03094 -4.5362,-4.53619 z"
+       fill-rule="evenodd"
+       id="path327" />
+    <path
+       stroke="#009999"
+       stroke-width="1.33333"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 846.42412,114.76117 v 0 c 0,-2.50531 2.0309,-4.53626 4.5362,-4.53626 h 128.3265 c 1.2031,0 2.3569,0.47797 3.2076,1.32868 0.8508,0.85071 1.3287,2.00452 1.3287,3.20758 v 18.14441 c 0,2.50525 -2.031,4.53619 -4.5363,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03094 -4.5362,-4.53619 z"
+       fill-rule="evenodd"
+       id="path329" />
+    <path
+       fill="#ffffff"
+       d="m 846.42412,80.19787 v 0 c 0,-2.50531 2.0309,-4.53626 4.5362,-4.53626 h 128.3265 c 1.2031,0 2.3569,0.47797 3.2076,1.32868 0.8508,0.85071 1.3287,2.00452 1.3287,3.20758 v 18.14435 c 0,2.50531 -2.031,4.53625 -4.5363,4.53625 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03094 -4.5362,-4.53625 z"
+       fill-rule="evenodd"
+       id="path347" />
+    <path
+       stroke="#009999"
+       stroke-width="1.33333"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 846.42412,80.19787 v 0 c 0,-2.50531 2.0309,-4.53626 4.5362,-4.53626 h 128.3265 c 1.2031,0 2.3569,0.47797 3.2076,1.32868 0.8508,0.85071 1.3287,2.00452 1.3287,3.20758 v 18.14435 c 0,2.50531 -2.031,4.53625 -4.5363,4.53625 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03094 -4.5362,-4.53625 z"
+       fill-rule="evenodd"
+       id="path349" />
+    <path
+       fill="#ffffff"
+       d="m 846.42412,149.32447 v 0 c 0,-2.50525 2.0309,-4.53619 4.5362,-4.53619 h 128.3265 c 1.2031,0 2.3569,0.4779 3.2076,1.32861 0.8508,0.85071 1.3287,2.00452 1.3287,3.20758 v 18.14441 c 0,2.50531 -2.031,4.53619 -4.5363,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03088 -4.5362,-4.53619 z"
+       fill-rule="evenodd"
+       id="path353" />
+    <path
+       stroke="#009999"
+       stroke-width="1.33333"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 846.42412,149.32447 v 0 c 0,-2.50525 2.0309,-4.53619 4.5362,-4.53619 h 128.3265 c 1.2031,0 2.3569,0.4779 3.2076,1.32861 0.8508,0.85071 1.3287,2.00452 1.3287,3.20758 v 18.14441 c 0,2.50531 -2.031,4.53619 -4.5363,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03088 -4.5362,-4.53619 z"
+       fill-rule="evenodd"
+       id="path355" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="715.27673"
+       y="91.422989"
+       id="text1590"><tspan
+         sodipodi:role="line"
+         id="tspan1588"
+         x="715.27673"
+         y="91.422989"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">MetaBAT2</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="758.72638"
+       y="91.215347"
+       id="text1590-0"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1"
+         x="758.72638"
+         y="91.215347"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">MaxBin2</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="795.79572"
+       y="90.991043"
+       id="text1590-0-9"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1"
+         x="795.79572"
+         y="90.991043"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">CONCOCT</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#009999;fill-opacity:1;stroke:none"
+       x="871.77484"
+       y="91.291763"
+       id="text1590-0-9-8"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-6"
+         x="871.77484"
+         y="91.291763"
+         style="font-size:9.33333px;fill:#009999;fill-opacity:1"> Binning of contigs</tspan></text>
+    <path
+       stroke="#70ad47"
+       stroke-width="0.483244"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 745.44272,94.01728 c 6.7313,0 10.0963,4.61694 13.4626,9.23387 1.6832,2.30847 3.3667,4.61694 5.4711,6.34829 0.5262,0.43283 1.0786,0.8296 1.6639,1.18128 0.2926,0.17585 0.5935,0.34041 0.9034,0.49258 0.155,0.0761 0.3122,0.14907 0.4718,0.21882 0.08,0.0349 0.1602,0.069 0.2411,0.10217 0.04,0.0165 0.081,0.033 0.122,0.0492 l 0.1184,0.0463"
+       fill-rule="evenodd"
+       id="path523-9"
+       style="stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#70ad47"
+       stroke-width="0.519922"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 794.91732,93.13384 c -7.3726,0 -11.0582,4.87948 -14.7453,9.75896 -1.8435,2.43975 -3.6874,4.87948 -5.9924,6.70928 -0.5762,0.45746 -1.1813,0.87678 -1.8224,1.24846 -0.3205,0.18585 -0.6501,0.35977 -0.9895,0.5206 -0.1697,0.0804 -0.3419,0.15754 -0.5167,0.23126 -0.087,0.0369 -0.1754,0.0728 -0.2641,0.10797 -0.044,0.0175 -0.089,0.0348 -0.1336,0.052 l -0.1297,0.0489"
+       fill-rule="evenodd"
+       id="path523-9-5"
+       style="stroke:#009999;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.781685"
+       stroke-linecap="butt"
+       d="m 770.48902,113.63025 -1.7273,3.56221 -0.8649,-3.51949 z"
+       fill-rule="evenodd"
+       id="path525-3"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.579799"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 769.07472,94.56546 c 0,8.62526 0.012,12.93631 0.025,17.25037 v 1.73785"
+       fill-rule="evenodd"
+       id="path637-4" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="752.44293"
+       y="127.47755"
+       id="text1590-0-9-5"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-5"
+         x="752.44293"
+         y="127.47755"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">BINETTE</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#009999;fill-opacity:1;stroke:none"
+       x="853.81134"
+       y="126.68825"
+       id="text1590-0-9-8-0"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-6-3"
+         x="853.81134"
+         y="126.68825"
+         style="font-size:9.33333px;fill:#009999;fill-opacity:1">Refinement of sets of bins</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#009999;fill-opacity:1;stroke:none"
+       x="867.289"
+       y="161.18188"
+       id="text1590-0-9-8-0-8"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-6-3-3"
+         x="867.289"
+         y="161.18188"
+         style="font-size:9.33333px;fill:#009999;fill-opacity:1">Access quality on bins</tspan></text>
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.916232"
+       stroke-linecap="butt"
+       d="m 771.07962,146.28125 -1.7272,2.30505 -0.865,-2.27742 z"
+       fill-rule="evenodd"
+       id="path525-3-2"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.916232"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 769.66542,133.94465 c 0,5.5813 0.012,8.37093 0.025,11.16251 v 1.12453"
+       fill-rule="evenodd"
+       id="path637-4-0" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="751.83087"
+       y="161.83502"
+       id="text1590-0-9-3"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-8"
+         x="751.83087"
+         y="161.83502"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">CheckM2</tspan></text>
+    <path
+       fill="#ffffff"
+       d="m 846.06102,182.75496 v 0 c 0,-2.50525 2.0309,-4.53619 4.5362,-4.53619 h 128.3265 c 1.2031,0 2.3569,0.4779 3.2076,1.32861 0.8507,0.85071 1.3286,2.00452 1.3286,3.20758 v 18.14441 c 0,2.50531 -2.0309,4.53619 -4.5362,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03088 -4.5362,-4.53619 z"
+       fill-rule="evenodd"
+       id="path353-2" />
+    <path
+       stroke="#009999"
+       stroke-width="1.33333"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 846.06102,182.75496 v 0 c 0,-2.50525 2.0309,-4.53619 4.5362,-4.53619 h 128.3265 c 1.2031,0 2.3569,0.4779 3.2076,1.32861 0.8507,0.85071 1.3286,2.00452 1.3286,3.20758 v 18.14441 c 0,2.50531 -2.0309,4.53619 -4.5362,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5362,-2.03088 -4.5362,-4.53619 z"
+       fill-rule="evenodd"
+       id="path355-4" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#009999;fill-opacity:1;stroke:none"
+       x="916.23517"
+       y="188.99982"
+       id="text1590-0-9-8-0-8-6"><tspan
+         sodipodi:role="line"
+         x="916.23517"
+         y="188.99982"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#009999;fill-opacity:1"
+         id="tspan527">Select representative bins</tspan><tspan
+         sodipodi:role="line"
+         x="916.23517"
+         y="200.66647"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#009999;fill-opacity:1"
+         id="tspan531">between samples</tspan></text>
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.916232"
+       stroke-linecap="butt"
+       d="m 771.06142,180.41725 -1.7273,2.30505 -0.8649,-2.27742 z"
+       fill-rule="evenodd"
+       id="path525-3-2-6"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.916232"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 769.64712,168.08065 c 0,5.5813 0.012,8.37093 0.025,11.16251 v 1.12453"
+       fill-rule="evenodd"
+       id="path637-4-0-5" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="758.36066"
+       y="194.56787"
+       id="text1590-0-9-3-9"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-8-8"
+         x="758.36066"
+         y="194.56787"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">dRep</tspan></text>
+    <path
+       fill="#ffffff"
+       d="m 846.27772,217.72863 v 0 c 0,-2.50525 2.031,-4.53619 4.5363,-4.53619 h 128.3265 c 1.2031,0 2.3569,0.4779 3.2076,1.32861 0.8507,0.85071 1.3286,2.00452 1.3286,3.20758 v 18.14441 c 0,2.50531 -2.0309,4.53619 -4.5362,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5363,-2.03088 -4.5363,-4.53619 z"
+       fill-rule="evenodd"
+       id="path353-21" />
+    <path
+       stroke="#009999"
+       stroke-width="1.33333"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 846.27772,217.72863 v 0 c 0,-2.50525 2.031,-4.53619 4.5363,-4.53619 h 128.3265 c 1.2031,0 2.3569,0.4779 3.2076,1.32861 0.8507,0.85071 1.3286,2.00452 1.3286,3.20758 v 18.14441 c 0,2.50531 -2.0309,4.53619 -4.5362,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5363,-2.03088 -4.5363,-4.53619 z"
+       fill-rule="evenodd"
+       id="path355-8" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#009999;fill-opacity:1;stroke:none"
+       x="867.14264"
+       y="229.586"
+       id="text1590-0-9-8-0-8-4"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-6-3-3-3"
+         x="867.14264"
+         y="229.586"
+         style="font-size:9.33333px;fill:#009999;fill-opacity:1">Bins quantifications</tspan></text>
+    <path
+       fill="#ffffff"
+       d="m 845.91462,251.15912 v 0 c 0,-2.50525 2.031,-4.53619 4.5363,-4.53619 h 128.3265 c 1.203,0 2.3569,0.4779 3.2076,1.32861 0.8507,0.85071 1.3286,2.00452 1.3286,3.20758 v 18.14441 c 0,2.50531 -2.0309,4.53619 -4.5362,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5363,-2.03088 -4.5363,-4.53619 z"
+       fill-rule="evenodd"
+       id="path353-2-2" />
+    <path
+       stroke="#009999"
+       stroke-width="1.33333"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 845.91462,251.15912 v 0 c 0,-2.50525 2.031,-4.53619 4.5363,-4.53619 h 128.3265 c 1.203,0 2.3569,0.4779 3.2076,1.32861 0.8507,0.85071 1.3286,2.00452 1.3286,3.20758 v 18.14441 c 0,2.50531 -2.0309,4.53619 -4.5362,4.53619 h -128.3265 v 0 c -2.5053,0 -4.5363,-2.03088 -4.5363,-4.53619 z"
+       fill-rule="evenodd"
+       id="path355-4-2" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#009999;fill-opacity:1;stroke:none"
+       x="914.10455"
+       y="263.68768"
+       id="text1590-0-9-8-0-8-6-5"><tspan
+         sodipodi:role="line"
+         x="914.10455"
+         y="263.68768"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#009999;fill-opacity:1"
+         id="tspan531-4">Bins affiliations</tspan></text>
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.916232"
+       stroke-linecap="butt"
+       d="m 771.56432,213.80834 -1.7273,2.30505 -0.8649,-2.27742 z"
+       fill-rule="evenodd"
+       id="path525-3-2-6-1"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.916232"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 770.15002,201.47174 c 0,5.5813 0.012,8.37093 0.025,11.16251 v 1.12453"
+       fill-rule="evenodd"
+       id="path637-4-0-5-3" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="718.17255"
+       y="221.41095"
+       id="text1590-0-9-3-9-6"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-8-8-3"
+         x="718.17255"
+         y="221.41095"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">bwa-mem2</tspan><tspan
+         sodipodi:role="line"
+         x="718.17255"
+         y="231.41095"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198"
+         id="tspan687">minimap2 </tspan></text>
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.916232"
+       stroke-linecap="butt"
+       d="m 772.03202,246.54825 -1.7273,2.30505 -0.8649,-2.27742 z"
+       fill-rule="evenodd"
+       id="path525-3-2-6-1-9"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.916232"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 770.61772,234.21165 c 0,5.5813 0.012,8.37093 0.025,11.16251 l 0.01,1.12453"
+       fill-rule="evenodd"
+       id="path637-4-0-5-3-7" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="754.18646"
+       y="265.13519"
+       id="text1590-0-9-3-9-6-5"><tspan
+         sodipodi:role="line"
+         id="tspan1588-1-1-8-8-3-0"
+         x="754.18646"
+         y="265.13519"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198">GTDB-Tk</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="773.75543"
+       y="227.25354"
+       id="text1590-0-9-3-9-6-51"><tspan
+         sodipodi:role="line"
+         x="773.75543"
+         y="227.25354"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198"
+         id="tspan687-9">samtools </tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#00739e;fill-opacity:0.957198;stroke:none"
+       x="764.27289"
+       y="227.38513"
+       id="text1590-0-9-3-9-6-51-3"><tspan
+         sodipodi:role="line"
+         x="764.27289"
+         y="227.38513"
+         style="font-size:8px;fill:#00739e;fill-opacity:0.957198"
+         id="tspan687-9-8">+</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#ffffff;fill-opacity:1;stroke:none"
+       x="1088.8823"
+       y="160.48285"
+       id="text1590-0-9-8-0-8-6-5-3"><tspan
+         sodipodi:role="line"
+         x="1088.8823"
+         y="160.48285"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
+         id="tspan531-4-1">Checkm2 database</tspan></text>
+    <path
+       fill="#009999"
+       d="M 1022.6945,250.30516 H 1160.093 V 271.473 h -137.3985 z"
+       fill-rule="evenodd"
+       id="path367-9"
+       style="stroke:#009999;stroke-width:0.744792;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.817692"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="M 1022.6945,250.30516 H 1160.093 V 271.473 h -137.3985 z"
+       fill-rule="evenodd"
+       id="path369-9" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 1090.4584,144.86957 c 0,6.66705 -0.047,9.99945 -0.094,13.33411 -0.047,3.33459 -0.094,6.67151 -0.094,13.34307"
+       fill-rule="evenodd"
+       id="path635-5" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#ffffff;fill-opacity:1;stroke:none"
+       x="1090.2366"
+       y="263.28333"
+       id="text1590-0-9-8-0-8-6-5-3-2"><tspan
+         sodipodi:role="line"
+         x="1090.2366"
+         y="263.28333"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
+         id="tspan531-4-1-6">GTDB-Tk database</tspan></text>
+    <path
+       stroke="#009999"
+       stroke-width="0.948333"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 838.25792,79.91941 v 0 c -0.1327,-23.85839 10.5442,-43.19946 23.8474,-43.19946 h 104.6294 c 6.3885,0 12.5405,4.55141 17.1029,12.65288 4.5623,8.10143 7.1612,19.08937 7.2249,30.54658 l 0.9607,172.79241 c 0.1326,23.85837 -10.5442,43.19934 -23.8474,43.19934 h -104.6294 c -13.3032,0 -24.1951,-19.34097 -24.3278,-43.19934 z"
+       fill-rule="evenodd"
+       id="path317-4-1" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 97.933525,200.7642 c 0,11.09049 -31.023601,22.18097 -62.047201,22.18097"
+       fill-rule="evenodd"
+       id="path515-0"
+       style="stroke-width:0.870671" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:8px;line-height:1.25;font-family:sans-serif;fill:#ffffff;fill-opacity:1;stroke:none"
+       x="924.11383"
+       y="314.1012"
+       id="text1590-0-9-8-0-8-6-5-3-2-4"><tspan
+         sodipodi:role="line"
+         x="924.11383"
+         y="314.1012"
+         style="font-size:8px;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
+         id="tspan531-4-1-6-7">Species-level representative</tspan><tspan
+         sodipodi:role="line"
+         x="924.11383"
+         y="324.1012"
+         style="font-size:8px;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
+         id="tspan2686">genomes between samples .fasta</tspan></text>
+    <path
+       fill="#009999"
+       d="m 708.80703,338.38945 v 0 c 0,-2.27838 1.68939,-4.12543 3.77334,-4.12543 h 132.79535 c 1.0007,0 1.9605,0.43463 2.6681,1.20832 0.7077,0.77368 1.1052,1.82299 1.1052,2.91711 v 16.50125 c 0,2.2784 -1.6894,4.1255 -3.7733,4.1255 H 712.58037 c -2.08395,0 -3.77334,-1.8471 -3.77334,-4.1255 z"
+       fill-rule="evenodd"
+       id="path321-2"
+       style="stroke-width:0.956374" />
+    <path
+       stroke="#009999"
+       stroke-width="1.27148"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 708.79881,338.38397 v 0 c 0,-2.27989 1.67852,-4.12818 3.74906,-4.12818 h 131.94105 c 0.9944,0 1.948,0.43492 2.651,1.20914 0.7031,0.77418 1.0981,1.82418 1.0981,2.91904 v 16.51221 c 0,2.27991 -1.6785,4.12825 -3.7491,4.12825 H 712.54787 c -2.07054,0 -3.74906,-1.84834 -3.74906,-4.12825 z"
+       fill-rule="evenodd"
+       id="path323-1" />
+    <path
+       fill="#ffffff"
+       d="m 724.88522,338.27826 q 0,0.094 -0.016,0.1719 0,0.062 -0.031,0.1094 -0.016,0.047 -0.047,0.078 -0.031,0.016 -0.078,0.016 h -1.8906 v 5.8282 q 0,0.047 -0.031,0.078 -0.016,0.031 -0.078,0.047 -0.047,0.016 -0.1407,0.031 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2187,-0.016 -0.078,-0.016 -0.1407,-0.031 -0.047,-0.016 -0.062,-0.047 -0.016,-0.031 -0.016,-0.078 v -5.8282 h -1.9062 q -0.031,0 -0.078,-0.016 -0.031,-0.031 -0.047,-0.078 -0.016,-0.047 -0.031,-0.1094 -0.016,-0.078 -0.016,-0.1719 0,-0.1093 0.016,-0.1718 0.016,-0.078 0.031,-0.125 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 4.6875 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1718 z m 3.5782,6.2188 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2031,0.016 -0.1406,0 -0.2187,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4687 q -0.2969,0.3281 -0.6719,0.5156 -0.375,0.1719 -0.7969,0.1719 -0.375,0 -0.6719,-0.094 -0.2968,-0.094 -0.5156,-0.2656 -0.2031,-0.1875 -0.3281,-0.4532 -0.1094,-0.2656 -0.1094,-0.6093 0,-0.3907 0.1563,-0.6875 0.1562,-0.2969 0.4531,-0.4844 0.3125,-0.1875 0.75,-0.2813 0.4375,-0.094 0.9844,-0.094 h 0.6406 v -0.375 q 0,-0.2656 -0.062,-0.4687 -0.047,-0.2188 -0.1875,-0.3438 -0.125,-0.1406 -0.3281,-0.2031 -0.2032,-0.078 -0.4844,-0.078 -0.3281,0 -0.5781,0.078 -0.25,0.062 -0.4375,0.1563 -0.1875,0.094 -0.3282,0.1718 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1093 -0.016,-0.078 -0.016,-0.1563 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1406 0.078,-0.062 0.25,-0.1563 0.1719,-0.094 0.3907,-0.1719 0.2187,-0.078 0.4843,-0.125 0.2657,-0.047 0.5469,-0.047 0.5,0 0.8438,0.125 0.3593,0.1094 0.5781,0.3282 0.2187,0.2187 0.3125,0.5468 0.1094,0.3282 0.1094,0.7657 z m -0.8593,-2.1406 h -0.7344 q -0.3438,0 -0.6094,0.062 -0.2656,0.062 -0.4375,0.1875 -0.1719,0.1094 -0.25,0.2813 -0.078,0.1562 -0.078,0.3593 0,0.375 0.2344,0.5938 0.2344,0.2031 0.6406,0.2031 0.3438,0 0.625,-0.1719 0.2969,-0.1718 0.6094,-0.5156 z m 5.8804,2.0313 q 0.047,0.078 0.047,0.125 0,0.047 -0.062,0.078 -0.047,0.031 -0.1563,0.047 -0.094,0.016 -0.25,0.016 -0.1562,0 -0.25,-0.016 -0.094,0 -0.1562,-0.016 -0.047,-0.016 -0.078,-0.047 -0.016,-0.031 -0.047,-0.062 l -1.1094,-1.8594 -1.125,1.8594 q -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.094,0.047 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2344,0.016 -0.1406,0 -0.25,-0.016 -0.094,-0.016 -0.1406,-0.047 -0.031,-0.031 -0.031,-0.078 0,-0.047 0.047,-0.125 l 1.4531,-2.2813 -1.375,-2.2031 q -0.047,-0.062 -0.047,-0.1094 0,-0.062 0.047,-0.094 0.047,-0.031 0.1407,-0.031 0.1093,-0.016 0.2812,-0.016 0.1563,0 0.2344,0.016 0.094,0 0.1406,0.016 0.062,0.016 0.078,0.047 0.031,0.016 0.062,0.047 l 1.0625,1.75 1.0781,-1.75 q 0.016,-0.031 0.047,-0.047 0.031,-0.031 0.062,-0.047 0.047,-0.016 0.125,-0.016 0.094,-0.016 0.2344,-0.016 0.1406,0 0.2344,0.016 0.1093,0 0.1562,0.031 0.047,0.031 0.031,0.078 0,0.047 -0.047,0.125 l -1.375,2.1719 z m 5.1413,-2.2969 q 0,0.5781 -0.1562,1.0625 -0.1563,0.4844 -0.4532,0.8281 -0.2968,0.3438 -0.75,0.5469 -0.4531,0.1875 -1.0468,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7188,-0.5 -0.2812,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0468 0.1563,-0.4844 0.4532,-0.8282 0.2968,-0.3437 0.75,-0.5312 0.4531,-0.2031 1.0468,-0.2031 0.5782,0 1,0.1718 0.4375,0.1719 0.7188,0.5 0.2812,0.3282 0.4219,0.7969 0.1562,0.4688 0.1562,1.0469 z m -0.9062,0.062 q 0,-0.375 -0.078,-0.7031 -0.062,-0.3438 -0.2344,-0.5938 -0.1562,-0.2656 -0.4375,-0.4062 -0.2656,-0.1563 -0.6875,-0.1563 -0.375,0 -0.6562,0.1406 -0.2657,0.125 -0.4375,0.375 -0.1719,0.25 -0.2657,0.5938 -0.078,0.3281 -0.078,0.7344 0,0.375 0.062,0.7187 0.078,0.3438 0.2344,0.5938 0.1719,0.25 0.4375,0.4062 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2813,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2657,-0.5781 0.094,-0.3438 0.094,-0.75 z m 6.1976,2.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2031,0.016 -0.1406,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1093,-0.1718 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2187 -0.6719,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1407,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4531 0.7813,-0.6563 0.3906,-0.2031 0.7968,-0.2031 0.4688,0 0.7813,0.1563 0.3281,0.1562 0.5156,0.4218 0.2031,0.2657 0.2813,0.625 0.094,0.3594 0.094,0.8594 z m 5.9268,-2.4062 q 0,0.5781 -0.1562,1.0625 -0.1563,0.4844 -0.4532,0.8281 -0.2968,0.3438 -0.75,0.5469 -0.4531,0.1875 -1.0468,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7188,-0.5 -0.2812,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0468 0.1563,-0.4844 0.4532,-0.8282 0.2968,-0.3437 0.75,-0.5312 0.4531,-0.2031 1.0468,-0.2031 0.5782,0 1,0.1718 0.4375,0.1719 0.7188,0.5 0.2812,0.3282 0.4219,0.7969 0.1562,0.4688 0.1562,1.0469 z m -0.9062,0.062 q 0,-0.375 -0.078,-0.7031 -0.062,-0.3438 -0.2344,-0.5938 -0.1562,-0.2656 -0.4375,-0.4062 -0.2656,-0.1563 -0.6875,-0.1563 -0.375,0 -0.6562,0.1406 -0.2657,0.125 -0.4375,0.375 -0.1719,0.25 -0.2657,0.5938 -0.078,0.3281 -0.078,0.7344 0,0.375 0.062,0.7187 0.078,0.3438 0.2344,0.5938 0.1719,0.25 0.4375,0.4062 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2813,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2657,-0.5781 0.094,-0.3438 0.094,-0.75 z m 9.1195,2.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2032,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.8437 q 0,-0.2969 -0.047,-0.5469 -0.047,-0.25 -0.1719,-0.4219 -0.1094,-0.1718 -0.2969,-0.2656 -0.1719,-0.094 -0.4062,-0.094 -0.2969,0 -0.5938,0.2344 -0.2969,0.2187 -0.6562,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1407,0.016 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.8438 q 0,-0.2968 -0.062,-0.5468 -0.062,-0.25 -0.1719,-0.4219 -0.1094,-0.1719 -0.2969,-0.2656 -0.1718,-0.094 -0.4062,-0.094 -0.2969,0 -0.5938,0.2343 -0.2968,0.2188 -0.6562,0.6563 v 3.2812 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4531 0.75,-0.6562 0.375,-0.2031 0.7656,-0.2031 0.2812,0 0.5156,0.078 0.2344,0.062 0.4063,0.1875 0.1875,0.1093 0.3125,0.2812 0.125,0.1719 0.2031,0.375 0.2344,-0.25 0.4375,-0.4219 0.2187,-0.1875 0.4062,-0.2968 0.2032,-0.1094 0.3907,-0.1563 0.1875,-0.047 0.375,-0.047 0.4531,0 0.75,0.1563 0.3125,0.1562 0.5,0.4218 0.1875,0.2657 0.2656,0.625 0.094,0.3594 0.094,0.75 z m 2.4187,0 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1407,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.031 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2968 -0.1093,0.4063 -0.1094,0.1093 -0.4219,0.1093 -0.2969,0 -0.4219,-0.1093 -0.1094,-0.1095 -0.1094,-0.4063 0,-0.2969 0.1094,-0.4063 0.125,-0.1094 0.4375,-0.1094 0.2969,0 0.4063,0.1094 0.1093,0.1094 0.1093,0.4063 z m 4.8518,5.5469 q 0,0.094 0,0.1562 0,0.062 -0.016,0.1094 -0.016,0.047 -0.031,0.078 -0.016,0.031 -0.094,0.094 -0.062,0.062 -0.2187,0.1719 -0.1563,0.094 -0.3594,0.1719 -0.1875,0.062 -0.4219,0.1093 -0.2187,0.047 -0.4531,0.047 -0.5156,0 -0.9063,-0.1562 -0.3906,-0.1719 -0.6562,-0.4844 -0.25,-0.3281 -0.3906,-0.7969 -0.1407,-0.4687 -0.1407,-1.0781 0,-0.6875 0.1719,-1.1719 0.1719,-0.5 0.4531,-0.8125 0.2969,-0.3281 0.6875,-0.4843 0.4063,-0.1563 0.875,-0.1563 0.2188,0 0.4219,0.047 0.2188,0.047 0.3906,0.1094 0.1875,0.062 0.3125,0.1562 0.1407,0.094 0.2032,0.1563 0.062,0.062 0.078,0.094 0.031,0.031 0.047,0.094 0.016,0.047 0.016,0.1094 0.016,0.062 0.016,0.1562 0,0.2031 -0.047,0.2813 -0.047,0.078 -0.1094,0.078 -0.078,0 -0.1875,-0.078 -0.094,-0.094 -0.25,-0.1875 -0.1563,-0.1094 -0.3906,-0.1875 -0.2188,-0.094 -0.5157,-0.094 -0.6093,0 -0.9531,0.4843 -0.3281,0.4688 -0.3281,1.3594 0,0.4531 0.078,0.7969 0.094,0.3437 0.2656,0.5781 0.1719,0.2188 0.4063,0.3438 0.25,0.1093 0.5625,0.1093 0.2812,0 0.5,-0.094 0.2343,-0.094 0.3906,-0.2031 0.1719,-0.125 0.2812,-0.2031 0.1094,-0.094 0.1719,-0.094 0.047,0 0.062,0.016 0.031,0.016 0.047,0.078 0.016,0.047 0.016,0.125 0.016,0.062 0.016,0.1719 z m 7.087,0.7187 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2031,0.016 -0.1406,0 -0.2188,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4687 q -0.2968,0.3281 -0.6718,0.5156 -0.375,0.1719 -0.7969,0.1719 -0.375,0 -0.6719,-0.094 -0.2969,-0.094 -0.5156,-0.2656 -0.2031,-0.1875 -0.3281,-0.4532 -0.1094,-0.2656 -0.1094,-0.6093 0,-0.3907 0.1562,-0.6875 0.1563,-0.2969 0.4532,-0.4844 0.3125,-0.1875 0.75,-0.2813 0.4375,-0.094 0.9843,-0.094 h 0.6407 v -0.375 q 0,-0.2656 -0.062,-0.4687 -0.047,-0.2188 -0.1875,-0.3438 -0.125,-0.1406 -0.3282,-0.2031 -0.2031,-0.078 -0.4843,-0.078 -0.3282,0 -0.5782,0.078 -0.25,0.062 -0.4375,0.1563 -0.1875,0.094 -0.3281,0.1718 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1093 -0.016,-0.078 -0.016,-0.1563 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1406 0.078,-0.062 0.25,-0.1563 0.1719,-0.094 0.3906,-0.1719 0.2188,-0.078 0.4844,-0.125 0.2656,-0.047 0.5469,-0.047 0.5,0 0.8437,0.125 0.3594,0.1094 0.5782,0.3282 0.2187,0.2187 0.3125,0.5468 0.1093,0.3282 0.1093,0.7657 z m -0.8594,-2.1406 h -0.7343 q -0.3438,0 -0.6094,0.062 -0.2656,0.062 -0.4375,0.1875 -0.1719,0.1094 -0.25,0.2813 -0.078,0.1562 -0.078,0.3593 0,0.375 0.2344,0.5938 0.2343,0.2031 0.6406,0.2031 0.3437,0 0.625,-0.1719 0.2969,-0.1718 0.6094,-0.5156 z m 4.9325,-4.4688 q 0,0.094 -0.016,0.1563 0,0.062 -0.016,0.094 -0.016,0.031 -0.047,0.047 -0.016,0.016 -0.047,0.016 -0.031,0 -0.094,-0.016 -0.047,-0.031 -0.125,-0.062 -0.078,-0.031 -0.1875,-0.047 -0.1093,-0.031 -0.2343,-0.031 -0.2032,0 -0.3438,0.062 -0.125,0.062 -0.2187,0.2031 -0.078,0.125 -0.1094,0.3438 -0.031,0.2031 -0.031,0.5156 v 0.5 h 1.0312 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.0312 v 4.1094 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2032,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1094 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6563 v -0.4844 q 0,-0.4843 0.094,-0.8281 0.094,-0.3594 0.2812,-0.5782 0.1875,-0.2343 0.4688,-0.3281 0.2812,-0.1094 0.6719,-0.1094 0.1718,0 0.3437,0.031 0.1719,0.031 0.2656,0.078 0.094,0.031 0.125,0.062 0.031,0.031 0.047,0.078 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1719 z m 3.1479,0 q 0,0.094 -0.016,0.1563 0,0.062 -0.016,0.094 -0.016,0.031 -0.047,0.047 -0.016,0.016 -0.047,0.016 -0.031,0 -0.094,-0.016 -0.047,-0.031 -0.125,-0.062 -0.078,-0.031 -0.1875,-0.047 -0.1094,-0.031 -0.2344,-0.031 -0.2031,0 -0.3437,0.062 -0.125,0.062 -0.2188,0.2031 -0.078,0.125 -0.1093,0.3438 -0.031,0.2031 -0.031,0.5156 v 0.5 h 1.0312 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.0312 v 4.1094 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1407,0.016 -0.078,0.016 -0.2031,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1094 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6563 v -0.4844 q 0,-0.4843 0.094,-0.8281 0.094,-0.3594 0.2812,-0.5782 0.1875,-0.2343 0.4688,-0.3281 0.2812,-0.1094 0.6718,-0.1094 0.1719,0 0.3438,0.031 0.1719,0.031 0.2656,0.078 0.094,0.031 0.125,0.062 0.031,0.031 0.047,0.078 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1719 z m 1.5489,6.6094 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2032,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2968 -0.1094,0.4063 -0.1094,0.1093 -0.4219,0.1093 -0.2968,0 -0.4218,-0.1093 -0.1094,-0.1095 -0.1094,-0.4063 0,-0.2969 0.1094,-0.4063 0.125,-0.1094 0.4375,-0.1094 0.2968,0 0.4062,0.1094 0.1094,0.1094 0.1094,0.4063 z m 2.3518,6.2656 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2188,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -6.9531 q 0,-0.047 0.016,-0.078 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2031,-0.016 0.1407,0 0.2188,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.078 z m 2.4455,0 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.031 0.078,-0.016 0.2032,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2968 -0.1094,0.4063 -0.1093,0.1093 -0.4218,0.1093 -0.2969,0 -0.4219,-0.1093 -0.1094,-0.1095 -0.1094,-0.4063 0,-0.2969 0.1094,-0.4063 0.125,-0.1094 0.4375,-0.1094 0.2969,0 0.4062,0.1094 0.1094,0.1094 0.1094,0.4063 z m 5.0237,6.2656 q 0,0.062 -0.047,0.094 -0.047,0.031 -0.125,0.047 -0.062,0.016 -0.2032,0.016 -0.1406,0 -0.2187,-0.016 -0.078,-0.016 -0.125,-0.047 -0.031,-0.031 -0.031,-0.094 v -0.4687 q -0.2969,0.3281 -0.6719,0.5156 -0.375,0.1719 -0.7969,0.1719 -0.375,0 -0.6718,-0.094 -0.2969,-0.094 -0.5157,-0.2656 -0.2031,-0.1875 -0.3281,-0.4532 -0.1094,-0.2656 -0.1094,-0.6093 0,-0.3907 0.1563,-0.6875 0.1562,-0.2969 0.4531,-0.4844 0.3125,-0.1875 0.75,-0.2813 0.4375,-0.094 0.9844,-0.094 h 0.6406 v -0.375 q 0,-0.2656 -0.062,-0.4687 -0.047,-0.2188 -0.1875,-0.3438 -0.125,-0.1406 -0.3281,-0.2031 -0.2031,-0.078 -0.4844,-0.078 -0.3281,0 -0.5781,0.078 -0.25,0.062 -0.4375,0.1563 -0.1875,0.094 -0.3281,0.1718 -0.125,0.078 -0.1875,0.078 -0.031,0 -0.062,-0.016 -0.031,-0.031 -0.062,-0.062 -0.016,-0.047 -0.031,-0.1093 -0.016,-0.078 -0.016,-0.1563 0,-0.125 0.016,-0.2031 0.031,-0.078 0.094,-0.1406 0.078,-0.062 0.25,-0.1563 0.1718,-0.094 0.3906,-0.1719 0.2187,-0.078 0.4844,-0.125 0.2656,-0.047 0.5468,-0.047 0.5,0 0.8438,0.125 0.3594,0.1094 0.5781,0.3282 0.2188,0.2187 0.3125,0.5468 0.1094,0.3282 0.1094,0.7657 z m -0.8594,-2.1406 h -0.7344 q -0.3437,0 -0.6094,0.062 -0.2656,0.062 -0.4375,0.1875 -0.1718,0.1094 -0.25,0.2813 -0.078,0.1562 -0.078,0.3593 0,0.375 0.2344,0.5938 0.2344,0.2031 0.6406,0.2031 0.3438,0 0.625,-0.1719 0.2969,-0.1718 0.6094,-0.5156 z m 4.771,1.7969 q 0,0.1406 -0.031,0.2344 -0.016,0.094 -0.062,0.1406 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1093,0.031 -0.2343,0.047 -0.1094,0.016 -0.2188,0.016 -0.375,0 -0.6406,-0.094 -0.25,-0.1094 -0.4219,-0.2969 -0.1562,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2812 0,-0.094 0.016,-0.1563 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6562 v -1.1094 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.047 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0.016 0.125,0.047 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 v 1.1094 h 1.2032 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1094 0.016,0.062 0.016,0.1563 0,0.1875 -0.047,0.2812 -0.047,0.078 -0.125,0.078 h -1.2032 v 2.6094 q 0,0.4844 0.1407,0.7344 0.1406,0.25 0.5156,0.25 0.125,0 0.2031,-0.016 0.094,-0.031 0.1719,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1562 z m 1.9913,0.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1407,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.031 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2656 q 0,0.2968 -0.1093,0.4063 -0.1094,0.1093 -0.4219,0.1093 -0.2969,0 -0.4219,-0.1093 -0.1094,-0.1095 -0.1094,-0.4063 0,-0.2969 0.1094,-0.4063 0.125,-0.1094 0.4375,-0.1094 0.2969,0 0.4063,0.1094 0.1093,0.1094 0.1093,0.4063 z m 5.8518,3.8594 q 0,0.5781 -0.1562,1.0625 -0.1563,0.4844 -0.4532,0.8281 -0.2968,0.3438 -0.75,0.5469 -0.4531,0.1875 -1.0468,0.1875 -0.5625,0 -1,-0.1719 -0.4219,-0.1719 -0.7188,-0.5 -0.2812,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0468 0.1563,-0.4844 0.4532,-0.8282 0.2968,-0.3437 0.75,-0.5312 0.4531,-0.2031 1.0468,-0.2031 0.5782,0 1,0.1718 0.4375,0.1719 0.7188,0.5 0.2812,0.3282 0.4219,0.7969 0.1562,0.4688 0.1562,1.0469 z m -0.9062,0.062 q 0,-0.375 -0.078,-0.7031 -0.062,-0.3438 -0.2344,-0.5938 -0.1563,-0.2656 -0.4375,-0.4062 -0.2656,-0.1563 -0.6875,-0.1563 -0.375,0 -0.6563,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1718,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7344 0,0.375 0.062,0.7187 0.078,0.3438 0.2344,0.5938 0.1719,0.25 0.4375,0.4062 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2813,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2657,-0.5781 0.094,-0.3438 0.094,-0.75 z m 6.1976,2.3437 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2031,0.016 -0.1406,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1093,-0.1718 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2344 -0.3125,0.2187 -0.6719,0.6562 v 3.2813 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1407,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4531 0.7813,-0.6563 0.3906,-0.2031 0.7968,-0.2031 0.4688,0 0.7813,0.1563 0.3281,0.1562 0.5156,0.4218 0.2031,0.2657 0.2813,0.625 0.094,0.3594 0.094,0.8594 z m 8.3359,-2.4062 q 0,0.5781 -0.1563,1.0625 -0.1562,0.4844 -0.4531,0.8281 -0.2969,0.3438 -0.75,0.5469 -0.4531,0.1875 -1.0469,0.1875 -0.5625,0 -1,-0.1719 -0.4218,-0.1719 -0.7187,-0.5 -0.2813,-0.3281 -0.4219,-0.7969 -0.1406,-0.4687 -0.1406,-1.0625 0,-0.5625 0.1406,-1.0468 0.1563,-0.4844 0.4531,-0.8282 0.2969,-0.3437 0.75,-0.5312 0.4532,-0.2031 1.0469,-0.2031 0.5781,0 1,0.1718 0.4375,0.1719 0.7188,0.5 0.2812,0.3282 0.4218,0.7969 0.1563,0.4688 0.1563,1.0469 z m -0.9063,0.062 q 0,-0.375 -0.078,-0.7031 -0.062,-0.3438 -0.2343,-0.5938 -0.1563,-0.2656 -0.4375,-0.4062 -0.2657,-0.1563 -0.6875,-0.1563 -0.375,0 -0.6563,0.1406 -0.2656,0.125 -0.4375,0.375 -0.1719,0.25 -0.2656,0.5938 -0.078,0.3281 -0.078,0.7344 0,0.375 0.062,0.7187 0.078,0.3438 0.2344,0.5938 0.1718,0.25 0.4375,0.4062 0.2812,0.1406 0.6875,0.1406 0.375,0 0.6406,-0.125 0.2812,-0.1406 0.4531,-0.3906 0.1875,-0.25 0.2656,-0.5781 0.094,-0.3438 0.094,-0.75 z m 4.7289,-4.2657 q 0,0.094 -0.016,0.1563 0,0.062 -0.016,0.094 -0.016,0.031 -0.047,0.047 -0.016,0.016 -0.047,0.016 -0.031,0 -0.094,-0.016 -0.047,-0.031 -0.125,-0.062 -0.078,-0.031 -0.1875,-0.047 -0.1093,-0.031 -0.2343,-0.031 -0.2032,0 -0.3438,0.062 -0.125,0.062 -0.2187,0.2031 -0.078,0.125 -0.1094,0.3438 -0.031,0.2031 -0.031,0.5156 v 0.5 h 1.0312 q 0.047,0 0.078,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.031,0.1094 0.016,0.062 0.016,0.1562 0,0.1875 -0.047,0.2813 -0.047,0.078 -0.125,0.078 h -1.0312 v 4.1094 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.1406,0.016 -0.078,0.016 -0.2032,0.016 -0.125,0 -0.2187,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.1094 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2813 0,-0.094 0.016,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.031 0.078,-0.031 h 0.6563 v -0.4844 q 0,-0.4843 0.094,-0.8281 0.094,-0.3594 0.2812,-0.5782 0.1875,-0.2343 0.4688,-0.3281 0.2812,-0.1094 0.6719,-0.1094 0.1718,0 0.3437,0.031 0.1719,0.031 0.2656,0.078 0.094,0.031 0.125,0.062 0.031,0.031 0.047,0.078 0.031,0.047 0.031,0.125 0.016,0.062 0.016,0.1719 z m 7.4112,4.2032 q 0,0.6094 -0.1407,1.0937 -0.125,0.4844 -0.3906,0.8282 -0.25,0.3437 -0.625,0.5312 -0.375,0.1719 -0.8594,0.1719 -0.2343,0 -0.4218,-0.047 -0.1875,-0.031 -0.375,-0.125 -0.1719,-0.1094 -0.3594,-0.25 -0.1719,-0.1563 -0.375,-0.375 v 0.5781 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.062,0.016 -0.1719,0.016 -0.1094,0 -0.1875,-0.016 -0.062,0 -0.1094,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -6.9532 q 0,-0.047 0.016,-0.078 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.031 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.078 v 2.797 q 0.2032,-0.2032 0.3907,-0.3438 0.2031,-0.1562 0.3906,-0.25 0.1875,-0.094 0.375,-0.125 0.1875,-0.047 0.3906,-0.047 0.5156,0 0.875,0.2032 0.3594,0.2031 0.5781,0.5468 0.2344,0.3438 0.3438,0.7969 0.1094,0.4531 0.1094,0.9688 z m -0.9063,0.094 q 0,-0.3594 -0.062,-0.6875 -0.047,-0.3438 -0.1875,-0.5938 -0.1406,-0.2656 -0.3594,-0.4218 -0.2187,-0.1719 -0.5625,-0.1719 -0.1562,0 -0.3281,0.047 -0.1562,0.047 -0.3281,0.1562 -0.1563,0.1094 -0.3438,0.2813 -0.1718,0.1719 -0.375,0.4375 v 1.8594 q 0.3594,0.4375 0.6719,0.6718 0.3281,0.2188 0.6719,0.2188 0.3281,0 0.5469,-0.1563 0.2343,-0.1562 0.375,-0.4062 0.1406,-0.2656 0.2031,-0.5781 0.078,-0.3282 0.078,-0.6563 z m 3.0518,2.3125 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2031,-0.016 -0.078,0 -0.1407,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.031 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0 0.125,0.031 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 z m 0.094,-6.2657 q 0,0.2969 -0.1093,0.4063 -0.1094,0.1094 -0.4219,0.1094 -0.2969,0 -0.4219,-0.1094 -0.1094,-0.1094 -0.1094,-0.4063 0,-0.2969 0.1094,-0.4062 0.125,-0.1094 0.4375,-0.1094 0.2969,0 0.4063,0.1094 0.1093,0.1093 0.1093,0.4062 z m 5.5237,6.2657 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2031,0.016 -0.1407,0 -0.2188,-0.016 -0.078,0 -0.125,-0.016 -0.047,-0.031 -0.078,-0.062 -0.016,-0.031 -0.016,-0.062 v -2.75 q 0,-0.3906 -0.062,-0.6406 -0.062,-0.25 -0.1875,-0.4219 -0.1094,-0.1719 -0.3125,-0.2656 -0.1875,-0.094 -0.4375,-0.094 -0.3125,0 -0.6406,0.2343 -0.3125,0.2188 -0.6719,0.6563 v 3.2812 q 0,0.031 -0.031,0.062 -0.016,0.031 -0.062,0.062 -0.047,0.016 -0.125,0.016 -0.078,0.016 -0.2187,0.016 -0.125,0 -0.2032,-0.016 -0.078,0 -0.1406,-0.016 -0.047,-0.031 -0.062,-0.062 -0.016,-0.031 -0.016,-0.062 v -4.6875 q 0,-0.047 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.047,-0.031 0.1094,-0.031 0.078,-0.016 0.2031,-0.016 0.1094,0 0.1875,0.016 0.078,0 0.1094,0.031 0.047,0.016 0.062,0.047 0.031,0.016 0.031,0.062 v 0.625 q 0.3906,-0.4531 0.7812,-0.6562 0.3907,-0.2031 0.7969,-0.2031 0.4688,0 0.7813,0.1562 0.3281,0.1563 0.5156,0.4219 0.2031,0.2656 0.2812,0.625 0.094,0.3594 0.094,0.8594 z m 4.5049,-1.2813 q 0,0.3594 -0.1406,0.6407 -0.125,0.2812 -0.375,0.4843 -0.2344,0.1875 -0.5781,0.2813 -0.3281,0.094 -0.7344,0.094 -0.25,0 -0.4844,-0.047 -0.2187,-0.031 -0.4062,-0.078 -0.1719,-0.062 -0.2969,-0.125 -0.125,-0.078 -0.1875,-0.125 -0.062,-0.047 -0.094,-0.1406 -0.016,-0.094 -0.016,-0.2657 0,-0.094 0,-0.1562 0.016,-0.078 0.031,-0.1094 0.016,-0.047 0.047,-0.062 0.031,-0.016 0.062,-0.016 0.062,0 0.1719,0.078 0.1094,0.062 0.2656,0.1406 0.1719,0.078 0.3906,0.1563 0.2344,0.062 0.5313,0.062 0.2187,0 0.3906,-0.047 0.1719,-0.047 0.2969,-0.125 0.1406,-0.094 0.2031,-0.2344 0.078,-0.1406 0.078,-0.3437 0,-0.1875 -0.1094,-0.3282 -0.094,-0.1406 -0.2656,-0.2343 -0.1562,-0.1094 -0.375,-0.1875 -0.2031,-0.078 -0.4219,-0.1719 -0.2187,-0.094 -0.4375,-0.2031 -0.2031,-0.1094 -0.375,-0.2657 -0.1718,-0.1562 -0.2812,-0.375 -0.094,-0.2343 -0.094,-0.5468 0,-0.2813 0.1094,-0.5313 0.1093,-0.25 0.3125,-0.4375 0.2187,-0.1875 0.5312,-0.2969 0.3281,-0.125 0.7656,-0.125 0.1875,0 0.3594,0.031 0.1875,0.031 0.3438,0.078 0.1562,0.047 0.25,0.1094 0.1093,0.047 0.1562,0.094 0.062,0.031 0.078,0.062 0.031,0.031 0.031,0.078 0.016,0.031 0.016,0.094 0.016,0.062 0.016,0.1406 0,0.094 -0.016,0.1563 0,0.062 -0.031,0.1094 -0.016,0.031 -0.047,0.062 -0.016,0.016 -0.047,0.016 -0.047,0 -0.1406,-0.062 -0.078,-0.062 -0.2188,-0.125 -0.1406,-0.062 -0.3281,-0.1094 -0.1875,-0.062 -0.4375,-0.062 -0.2187,0 -0.3906,0.047 -0.1563,0.047 -0.2656,0.1406 -0.1094,0.094 -0.1719,0.2188 -0.047,0.125 -0.047,0.2656 0,0.2031 0.094,0.3437 0.1094,0.1407 0.2812,0.25 0.1719,0.094 0.375,0.1875 0.2188,0.078 0.4375,0.1719 0.2188,0.078 0.4375,0.1875 0.2188,0.1094 0.375,0.2656 0.1719,0.1563 0.2657,0.375 0.1093,0.2188 0.1093,0.5157 z"
+       fill-rule="nonzero"
+       id="path343-1" />
+    <path
+       fill="#ffffff"
+       d="m 769.00662,356.1626 q 0,0.3594 -0.125,0.4844 -0.125,0.125 -0.4375,0.125 -0.3125,0 -0.4375,-0.1094 -0.125,-0.125 -0.125,-0.4844 0,-0.375 0.125,-0.5 0.125,-0.125 0.4531,-0.125 0.3125,0 0.4219,0.125 0.125,0.125 0.125,0.4844 z m 3.789,0.094 q 0,0.1406 -0.031,0.2344 -0.016,0.094 -0.062,0.1406 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1093,0.031 -0.2343,0.047 -0.1094,0.016 -0.2188,0.016 -0.375,0 -0.6406,-0.094 -0.25,-0.1094 -0.4219,-0.2969 -0.1562,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6562 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2812 0,-0.094 0.016,-0.1563 0.016,-0.078 0.031,-0.1093 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6562 v -1.1094 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1407,-0.047 0.078,-0.016 0.2031,-0.016 0.1406,0 0.2187,0.016 0.078,0.016 0.125,0.047 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 v 1.1094 h 1.2032 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1093 0.016,0.062 0.016,0.1563 0,0.1875 -0.047,0.2812 -0.047,0.078 -0.125,0.078 h -1.2032 v 2.6094 q 0,0.4844 0.1407,0.7344 0.1406,0.25 0.5156,0.25 0.125,0 0.2031,-0.016 0.094,-0.031 0.1719,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1562 z m 4.6788,0.2344 q 0.047,0.078 0.047,0.125 0,0.047 -0.062,0.078 -0.047,0.031 -0.1562,0.047 -0.094,0.016 -0.25,0.016 -0.1563,0 -0.25,-0.016 -0.094,0 -0.1563,-0.016 -0.047,-0.016 -0.078,-0.047 -0.016,-0.031 -0.047,-0.062 l -1.1093,-1.8594 -1.125,1.8594 q -0.016,0.031 -0.047,0.062 -0.031,0.031 -0.094,0.047 -0.047,0.016 -0.1407,0.016 -0.078,0.016 -0.2343,0.016 -0.1407,0 -0.25,-0.016 -0.094,-0.016 -0.1407,-0.047 -0.031,-0.031 -0.031,-0.078 0,-0.047 0.047,-0.125 l 1.4531,-2.2813 -1.375,-2.2031 q -0.047,-0.062 -0.047,-0.1094 0,-0.062 0.047,-0.094 0.047,-0.031 0.1407,-0.031 0.1093,-0.016 0.2812,-0.016 0.1563,0 0.2344,0.016 0.094,0 0.1406,0.016 0.062,0.016 0.078,0.047 0.031,0.016 0.062,0.047 l 1.0625,1.75 1.0782,-1.75 q 0.016,-0.031 0.047,-0.047 0.031,-0.031 0.062,-0.047 0.047,-0.016 0.125,-0.016 0.094,-0.016 0.2343,-0.016 0.1407,0 0.2344,0.016 0.1094,0 0.1563,0.031 0.047,0.031 0.031,0.078 0,0.047 -0.047,0.125 l -1.375,2.1719 z m 3.5372,-0.2344 q 0,0.1406 -0.031,0.2344 -0.016,0.094 -0.062,0.1406 -0.031,0.031 -0.125,0.078 -0.078,0.031 -0.1875,0.047 -0.1094,0.031 -0.2344,0.047 -0.1094,0.016 -0.2187,0.016 -0.375,0 -0.6407,-0.094 -0.25,-0.1094 -0.4218,-0.2969 -0.1563,-0.2031 -0.2344,-0.5 -0.078,-0.2969 -0.078,-0.7031 v -2.7344 h -0.6563 q -0.078,0 -0.125,-0.078 -0.047,-0.094 -0.047,-0.2812 0,-0.094 0.016,-0.1563 0.016,-0.078 0.031,-0.1093 0.016,-0.047 0.047,-0.062 0.047,-0.031 0.078,-0.031 h 0.6563 v -1.1094 q 0,-0.031 0.016,-0.062 0.016,-0.031 0.062,-0.047 0.062,-0.031 0.1406,-0.047 0.078,-0.016 0.2031,-0.016 0.1407,0 0.2188,0.016 0.078,0.016 0.125,0.047 0.047,0.016 0.062,0.047 0.031,0.031 0.031,0.062 v 1.1094 h 1.2031 q 0.031,0 0.062,0.031 0.031,0.016 0.047,0.062 0.031,0.031 0.047,0.1093 0.016,0.062 0.016,0.1563 0,0.1875 -0.047,0.2812 -0.047,0.078 -0.125,0.078 h -1.2031 v 2.6094 q 0,0.4844 0.1406,0.7344 0.1406,0.25 0.5156,0.25 0.125,0 0.2032,-0.016 0.094,-0.031 0.1718,-0.062 0.078,-0.031 0.125,-0.047 0.047,-0.031 0.094,-0.031 0.031,0 0.047,0.016 0.031,0.016 0.031,0.062 0.016,0.031 0.031,0.094 0.016,0.062 0.016,0.1562 z"
+       fill-rule="nonzero"
+       id="path345-1" />
+    <path
+       fill="#009999"
+       d="m 853.19402,338.8251 v 0 c 0,-2.2785 1.6917,-4.1255 3.7785,-4.1255 h 132.9787 c 1.0021,0 1.9632,0.4346 2.67178,1.2083 0.7086,0.7737 1.1067,1.823 1.1067,2.9172 v 16.5012 c 0,2.2785 -1.69168,4.1255 -3.77848,4.1255 h -132.9787 c -2.0868,0 -3.7785,-1.847 -3.7785,-4.1255 z"
+       fill-rule="evenodd"
+       id="path339-2"
+       style="stroke-width:0.957033" />
+    <path
+       stroke="#009999"
+       stroke-width="1.27893"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 853.21502,338.83908 v 0 c 0,-2.2835 1.6956,-4.13456 3.7873,-4.13456 h 133.2894 c 1.0045,0 1.9678,0.43556 2.67808,1.21096 0.7102,0.77539 1.1092,1.82701 1.1092,2.9236 v 16.53748 c 0,2.2835 -1.69558,4.13456 -3.78728,4.13456 h -133.2894 c -2.0917,0 -3.7873,-1.85106 -3.7873,-4.13456 z"
+       fill-rule="evenodd"
+       id="path341-6" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#ffffff;fill-opacity:1;stroke:none"
+       x="923.97882"
+       y="348.91553"
+       id="text1590-0-9-8-0-8-6-5-3-2-4-7"><tspan
+         sodipodi:role="line"
+         x="923.97882"
+         y="348.91553"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1"
+         id="tspan2686-2">Bins quantifications .tsv</tspan></text>
+    <path
+       stroke="#009999"
+       stroke-width="1.86965"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 39.446474,101.73289 v 0 c 0,-21.29869 13.35482,-38.56475 29.8288,-38.56475 H 198.84289 c 7.91112,0 15.49818,4.06312 21.09215,11.29537 5.59397,7.23231 8.73664,17.04138 8.73664,27.26938 v 154.25424 c 0,21.29871 -13.3548,38.56466 -29.82879,38.56466 H 69.275274 c -16.47398,0 -29.8288,-17.26595 -29.8288,-38.56466 z"
+       fill-rule="evenodd"
+       id="path317-1"
+       style="stroke:#009999;stroke-opacity:0.432099" />
+    <path
+       fill="#a3dada"
+       d="m 39.446474,101.73289 v 0 c 0,-21.32214 13.28763,-38.60712 29.6787,-38.60712 H 198.04077 c 7.87132,0 15.4202,4.06764 20.98601,11.30782 5.56583,7.24022 8.69268,17.06002 8.69268,27.2993 v 154.42377 c 0,21.32214 -13.28759,38.60708 -29.67869,38.60708 H 69.125174 c -16.39107,0 -29.6787,-17.28494 -29.6787,-38.60708 z"
+       fill-rule="evenodd"
+       id="path315-8-0-9"
+       style="fill:#fef9ff;fill-opacity:1;stroke-width:1.39947" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.942101"
+       stroke-linecap="butt"
+       d="m 92.259754,237.94021 -1.72726,4.81648 -0.86496,-4.75872 z"
+       fill-rule="evenodd"
+       id="path525-3-6-1-8"
+       style="fill:#009999;fill-opacity:1;stroke:#009904;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.986019"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 90.560384,118.16125 c 0,54.69953 0.0231,82.03933 0.0461,109.39818 l 0.01,11.02108"
+       fill-rule="evenodd"
+       id="path637-4-1-6-2"
+       style="stroke:#009904;stroke-opacity:1" />
+    <path
+       fill="#ffffff"
+       d="m 100.27091,51.9001 v 0 c 0,-2.23446 0.99568,-4.04585 2.22392,-4.04585 h 62.91282 c 0.58982,0 1.15548,0.42629 1.57255,1.18503 0.41706,0.75874 0.65136,1.78783 0.65136,2.86082 v 16.18286 c 0,2.23447 -0.99567,4.04585 -2.22391,4.04585 h -62.91282 v 0 c -1.22824,0 -2.22392,-1.81138 -2.22392,-4.04585 z"
+       fill-rule="evenodd"
+       id="path347-8-6"
+       style="stroke-width:0.661253" />
+    <path
+       stroke="#009999"
+       stroke-width="0.858269"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 100.27091,51.9001 v 0 c 0,-2.11744 0.99568,-3.83396 2.22392,-3.83396 h 62.91282 c 0.58982,0 1.15548,0.40397 1.57255,1.12297 0.41706,0.71901 0.65136,1.6942 0.65136,2.71099 v 15.33523 c 0,2.11743 -0.99567,3.83394 -2.22391,3.83394 h -62.91282 v 0 c -1.22824,0 -2.22392,-1.71651 -2.22392,-3.83394 z"
+       fill-rule="evenodd"
+       id="path349-6-1" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#00006d;fill-opacity:1;stroke:none"
+       x="134.96243"
+       y="63.455093"
+       id="text1590-0-9-8-2-2"><tspan
+         sodipodi:role="line"
+         x="134.96243"
+         y="63.455093"
+         style="font-size:8px;text-align:center;text-anchor:middle;fill:#00006d;fill-opacity:1"
+         id="tspan2412-1">Individual</tspan></text>
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 142.90196,200.76115 c 0,5.05408 -0.0472,7.58027 -0.0945,10.10817 -0.0472,2.52785 -0.0945,5.05746 -0.0945,10.11496"
+       fill-rule="evenodd"
+       id="path635-2"
+       style="stroke-width:0.870671" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 142.90196,200.76115 c 0,11.09048 -31.0236,22.18096 -62.047206,22.18096"
+       fill-rule="evenodd"
+       id="path515-0-2"
+       style="stroke-width:0.870671" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.942101"
+       stroke-linecap="butt"
+       d="m 137.22819,237.93663 -1.72726,4.81649 -0.86496,-4.75872 z"
+       fill-rule="evenodd"
+       id="path525-3-6-1-8-8"
+       style="fill:#009999;fill-opacity:1;stroke:#009904;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.991501"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 135.52882,118.09236 c 0,54.72942 0.0231,82.08418 0.0461,109.45798 l 0.01,11.02712"
+       fill-rule="evenodd"
+       id="path637-4-1-6-2-9"
+       style="stroke:#009904;stroke-opacity:1" />
+    <path
+       fill="#000000"
+       fill-opacity="0"
+       d="m 190.37538,199.7583 c 0,5.05408 -0.0472,7.58027 -0.0945,10.10817 -0.0472,2.52785 -0.0945,5.05746 -0.0945,10.11497"
+       fill-rule="evenodd"
+       id="path635-2-5"
+       style="stroke-width:0.870671" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.942101"
+       stroke-linecap="butt"
+       d="m 184.70161,236.76249 -1.72726,4.81648 -0.86496,-4.75872 z"
+       fill-rule="evenodd"
+       id="path525-3-6-1-8-8-1"
+       style="fill:#009999;fill-opacity:1;stroke:#009904;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="0.869383"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 183.00224,117.51133 c 0,54.53781 0.0231,81.79681 0.0461,109.07478 l 0.01,10.9885"
+       fill-rule="evenodd"
+       id="path637-4-1-6-2-9-5"
+       style="stroke:#009904;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="1.86965"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 237.52721,101.25383 v 0 c 0,-21.29869 13.35482,-38.56475 29.8288,-38.56475 h 129.56761 c 7.91112,0 15.49818,4.06312 21.09215,11.29537 5.59397,7.23231 8.73664,17.04138 8.73664,27.26938 v 154.25424 c 0,21.29871 -13.3548,38.56466 -29.82879,38.56466 H 267.35601 c -16.47398,0 -29.8288,-17.26595 -29.8288,-38.56466 z"
+       fill-rule="evenodd"
+       id="path317-1-46"
+       style="stroke:#009999;stroke-opacity:0.432099" />
+    <path
+       fill="#a3dada"
+       d="m 237.52721,101.25383 v 0 c 0,-21.32214 13.28763,-38.60712 29.6787,-38.60712 H 396.1215 c 7.87132,0 15.4202,4.06764 20.98601,11.30782 5.56583,7.24022 8.69268,17.06002 8.69268,27.2993 V 255.6776 c 0,21.32214 -13.28759,38.60708 -29.67869,38.60708 H 267.20591 c -16.39107,0 -29.6787,-17.28494 -29.6787,-38.60708 z"
+       fill-rule="evenodd"
+       id="path315-8-0-9-8"
+       style="fill:#fff9ff;fill-opacity:1;stroke-width:1.39947" />
+    <path
+       fill="#ffffff"
+       d="m 298.35164,51.42104 v 0 c 0,-2.23446 0.99568,-4.04585 2.22392,-4.04585 h 62.91282 c 0.58982,0 1.15548,0.42629 1.57255,1.18503 0.41706,0.75874 0.65136,1.78783 0.65136,2.86082 V 67.6039 c 0,2.23447 -0.99567,4.04585 -2.22391,4.04585 h -62.91282 v 0 c -1.22824,0 -2.22392,-1.81138 -2.22392,-4.04585 z"
+       fill-rule="evenodd"
+       id="path347-8-6-7"
+       style="stroke-width:0.661253" />
+    <path
+       stroke="#009999"
+       stroke-width="0.858269"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 298.35164,51.42104 v 0 c 0,-2.11744 0.99568,-3.83396 2.22392,-3.83396 h 62.91282 c 0.58982,0 1.15548,0.40397 1.57255,1.12297 0.41706,0.71901 0.65136,1.6942 0.65136,2.71099 v 15.33523 c 0,2.11743 -0.99567,3.83394 -2.22391,3.83394 h -62.91282 v 0 c -1.22824,0 -2.22392,-1.71651 -2.22392,-3.83394 z"
+       fill-rule="evenodd"
+       id="path349-6-1-2" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#00006d;fill-opacity:1;stroke:none"
+       x="333.04321"
+       y="62.976028"
+       id="text1590-0-9-8-2-2-9"><tspan
+         sodipodi:role="line"
+         x="333.04321"
+         y="62.976028"
+         style="font-size:8px;text-align:center;text-anchor:middle;fill:#00006d;fill-opacity:1"
+         id="tspan2412-1-5">Group</tspan></text>
+    <path
+       stroke="#ff6161"
+       stroke-width="0.862295"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 280.06899,118.1508 c -0.88629,27.34899 6.85291,56.15935 19.12646,78.86315 6.13674,11.35192 13.40695,21.17714 21.29963,28.52974 1.97304,1.83819 3.98505,3.52179 6.02795,5.03609 1.02148,0.75713 2.05065,1.47207 3.08666,2.1426 0.51795,0.33522 1.0376,0.65965 1.55871,0.9726 0.26063,0.15662 0.52157,0.31016 0.7829,0.46119 l 0.33933,0.19171"
+       fill-rule="evenodd"
+       id="path517-2-8-7-4"
+       style="stroke:#e7b68f;stroke-opacity:0.658824" />
+    <path
+       fill="#009999"
+       stroke="#009999"
+       stroke-width="0.862295"
+       stroke-linecap="butt"
+       d="m 327.3594,231.9873 4.93123,2.36058 -1.62014,-4.29054 z"
+       fill-rule="evenodd"
+       id="path639-1-0-4"
+       style="fill:#e7b68f;fill-opacity:0.658824;stroke:#e7b68f;stroke-opacity:0.658824"
+       inkscape:transform-center-x="19.629113"
+       inkscape:transform-center-y="-1.172934" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.862295"
+       stroke-linecap="butt"
+       d="m 336.4823,236.62911 -1.72726,4.03503 -0.86496,-3.98664 z"
+       fill-rule="evenodd"
+       id="path525-3-6-7-7-1"
+       style="fill:#e7b68f;fill-opacity:0.658824;stroke:#e7b68f;stroke-opacity:0.658824" />
+    <path
+       stroke="#009999"
+       stroke-width="0.862295"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 335.06838,117.4256 c 0,54.66731 0.012,81.99098 0.0241,109.33373 l 0.005,11.0146"
+       fill-rule="evenodd"
+       id="path637-4-1-64-0-1"
+       style="stroke:#e7b68f;stroke-opacity:0.658824" />
+    <path
+       stroke="#ff6161"
+       stroke-width="0.862295"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 335.06838,117.4256 c 0.87799,27.34899 -6.78873,56.15935 -18.94733,78.86314 -6.07926,11.35192 -13.28138,21.17715 -21.10014,28.52974 -1.95456,1.8382 -3.94773,3.5218 -5.9715,5.0361 -1.01191,0.75713 -2.03144,1.47207 -3.05775,2.1426 -0.5131,0.33522 -1.02788,0.65965 -1.54411,0.9726 -0.25819,0.15662 -0.51668,0.31016 -0.77557,0.46119 l -0.33615,0.19171"
+       fill-rule="evenodd"
+       id="path517-2-8-7-4-3"
+       style="stroke:#e7b68f;stroke-opacity:0.658824" />
+    <path
+       fill="#009999"
+       stroke="#009999"
+       stroke-width="0.862295"
+       stroke-linecap="butt"
+       d="m 285.5211,229.7533 -2.18527,3.86938 5.21425,-2.10827 z"
+       fill-rule="evenodd"
+       id="path639-1-0-4-8"
+       style="fill:#e7b68f;fill-opacity:0.658824;stroke:#e7b68f;stroke-opacity:0.658824"
+       inkscape:transform-center-x="18.406183"
+       inkscape:transform-center-y="-5.8315486"
+       sodipodi:nodetypes="cccc" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.862295"
+       stroke-linecap="butt"
+       d="m 281.48291,237.35431 -1.72726,4.03503 -0.86496,-3.98664 z"
+       fill-rule="evenodd"
+       id="path525-3-6-7-7-1-6"
+       style="fill:#e7b68f;fill-opacity:0.658824;stroke:#e7b68f;stroke-opacity:0.658824" />
+    <path
+       stroke="#009999"
+       stroke-width="0.862295"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 280.06899,118.1508 c 0,54.66731 0.012,81.99098 0.0241,109.33373 l 0.005,11.01461"
+       fill-rule="evenodd"
+       id="path637-4-1-64-0-1-6"
+       style="stroke:#e7b68f;stroke-opacity:0.658824" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="0.862295"
+       stroke-linecap="butt"
+       d="m 386.43056,235.13455 -1.72726,4.03503 -0.86496,-3.98664 z"
+       fill-rule="evenodd"
+       id="path525-3-6-7-7-1-1"
+       style="fill:#569bd7;fill-opacity:0.498039;stroke:#569bd7;stroke-opacity:0.498039" />
+    <path
+       stroke="#009999"
+       stroke-width="0.862295"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 385.01664,115.93104 c 0,54.66731 0.012,81.99098 0.0241,109.33373 l 0.005,11.0146"
+       fill-rule="evenodd"
+       id="path637-4-1-64-0-1-7"
+       style="stroke:#569bd7;stroke-opacity:0.498039" />
+    <path
+       stroke="#009999"
+       stroke-width="1.86965"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 434.41914,101.7534 v 0 c 0,-21.29869 13.35482,-38.56475 29.8288,-38.56475 h 129.56761 c 7.91112,0 15.49818,4.06312 21.09215,11.29537 5.59397,7.23231 8.73664,17.04138 8.73664,27.26938 v 154.25424 c 0,21.29868 -13.3548,38.56468 -29.82879,38.56468 H 464.24794 c -16.47398,0 -29.8288,-17.266 -29.8288,-38.56468 z"
+       fill-rule="evenodd"
+       id="path317-1-46-5"
+       style="stroke:#009999;stroke-opacity:0.432099" />
+    <path
+       fill="#a3dada"
+       d="m 434.41914,101.7534 v 0 c 0,-21.32214 13.28763,-38.60712 29.6787,-38.60712 h 128.91559 c 7.87132,0 15.4202,4.06764 20.98601,11.30782 5.56583,7.24022 8.69268,17.06002 8.69268,27.2993 v 154.42377 c 0,21.32215 -13.28759,38.60705 -29.67869,38.60705 H 464.09784 c -16.39107,0 -29.6787,-17.2849 -29.6787,-38.60705 z"
+       fill-rule="evenodd"
+       id="path315-8-0-9-8-2"
+       style="fill:#fff9ff;fill-opacity:1;stroke-width:1.39947" />
+    <path
+       fill="#ffffff"
+       d="m 495.24357,51.92061 v 0 c 0,-2.23446 0.99568,-4.04585 2.22392,-4.04585 h 62.91282 c 0.58982,0 1.15548,0.42629 1.57255,1.18503 0.41706,0.75874 0.65136,1.78783 0.65136,2.86082 v 16.18286 c 0,2.23447 -0.99567,4.04585 -2.22391,4.04585 h -62.91282 v 0 c -1.22824,0 -2.22392,-1.81138 -2.22392,-4.04585 z"
+       fill-rule="evenodd"
+       id="path347-8-6-7-9"
+       style="stroke-width:0.661253" />
+    <path
+       stroke="#009999"
+       stroke-width="0.858269"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 495.24357,51.92061 v 0 c 0,-2.11744 0.99568,-3.83396 2.22392,-3.83396 h 62.91282 c 0.58982,0 1.15548,0.40397 1.57255,1.12297 0.41706,0.71901 0.65136,1.6942 0.65136,2.71099 v 15.33523 c 0,2.11743 -0.99567,3.83394 -2.22391,3.83394 h -62.91282 v 0 c -1.22824,0 -2.22392,-1.71651 -2.22392,-3.83394 z"
+       fill-rule="evenodd"
+       id="path349-6-1-2-7" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#00006d;fill-opacity:1;stroke:none"
+       x="529.93506"
+       y="63.475601"
+       id="text1590-0-9-8-2-2-9-8"><tspan
+         sodipodi:role="line"
+         x="529.93506"
+         y="63.475601"
+         style="font-size:8px;text-align:center;text-anchor:middle;fill:#00006d;fill-opacity:1"
+         id="tspan2412-1-5-7">All</tspan></text>
+    <path
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 475.49473,118.63159 c 15.74606,0 23.61748,29.50106 31.49209,59.00219 3.93734,14.75056 7.87539,29.50118 12.79824,40.56405 1.23069,2.76569 2.52295,5.30096 3.89209,7.54813 0.68457,1.1236 1.38842,2.17515 2.11337,3.14744 0.36247,0.48651 0.73026,0.95255 1.10357,1.39822 0.18665,0.22327 0.3747,0.44066 0.56412,0.65284 0.0946,0.10518 0.18971,0.21093 0.28519,0.31435 l 0.27702,0.29612"
+       fill-rule="evenodd"
+       id="path523-9-54-7-9-6"
+       style="stroke:#009999;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 532.23395,234.86046 -1.72726,4.08882 -0.86496,-4.03978 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="1.02194"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 530.82004,118.82686 c 0,53.39493 0.012,80.0827 0.024,106.78904 l 0.005,10.75823"
+       fill-rule="evenodd"
+       id="path637-4-1-1-1-9" />
+    <path
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 583.98237,117.37452 c -14.57465,0 -21.86048,29.98823 -29.14927,59.97654 -3.64444,14.99414 -7.28951,29.98835 -11.84612,41.2339 -1.13915,2.81138 -2.33528,5.38849 -3.60257,7.67279 -0.63362,1.14214 -1.28512,2.21107 -1.95614,3.19941 -0.33549,0.49454 -0.67593,0.96828 -1.02146,1.42131 -0.17276,0.22696 -0.34681,0.44795 -0.52217,0.66362 -0.0876,0.10692 -0.17558,0.21442 -0.26396,0.31953 l -0.25641,0.30102"
+       fill-rule="evenodd"
+       id="path523-9-54-7-9-6-9"
+       style="stroke:#009999;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 537.51367,230.69092 -3.75875,3.22357 1.35806,-3.96202 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 528.02902,228.9696 1.24318,4.18743 -3.4493,-3.16072 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-3"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 530.82004,118.82686 c -15.78804,0 -23.68046,29.89493 -31.57608,59.78992 -3.94784,14.9475 -7.89638,29.89505 -12.83234,41.10562 -1.23401,2.80261 -2.52971,5.37172 -3.90251,7.6489 -0.68636,1.13859 -1.3921,2.2042 -2.119,3.18946 -0.36342,0.49301 -0.7322,0.96528 -1.1065,1.4169 -0.18715,0.22624 -0.37569,0.44654 -0.56563,0.66154 -0.0949,0.10658 -0.19021,0.21375 -0.28595,0.31856 l -0.27775,0.30006"
+       fill-rule="evenodd"
+       id="path523-9-54-7-9-6-9-0"
+       style="stroke:#56d1b4;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 476.91918,234.65406 -1.72726,4.08881 -0.86496,-4.03977 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-06"
+       style="fill:#56d1b4;fill-opacity:1;stroke:#56d1b4;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="1.02194"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 475.50527,118.62045 c 0,53.39494 0.012,80.08271 0.024,106.78905 l 0.005,10.75823"
+       fill-rule="evenodd"
+       id="path637-4-1-1-1-9-2"
+       style="stroke:#56d1b4;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 480.67793,231.4305 -3.75875,3.22356 1.35806,-3.96201 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-7"
+       style="fill:#56d1b4;fill-opacity:1;stroke:#56d1b4;stroke-opacity:1" />
+    <path
+       stroke="#70ad47"
+       stroke-width="2.82376"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 583.98237,117.37452 c -31.13938,0 -46.70589,30.78673 -62.27872,61.57351 -7.78649,15.3934 -15.57435,30.78686 -25.30974,42.33183 -2.43386,2.88622 -4.98946,5.53197 -7.69707,7.87708 -1.35375,1.17258 -2.7457,2.26996 -4.17938,3.28461 -0.71677,0.50771 -1.44414,0.99407 -2.18239,1.45916 -0.36912,0.233 -0.741,0.45987 -1.11562,0.68128 -0.18719,0.10977 -0.37515,0.22012 -0.56398,0.32806 l -0.54782,0.30901"
+       fill-rule="evenodd"
+       id="path523-9-54-7-9-6-9-0-0"
+       style="stroke:#56d1b4;stroke-width:1.73371;stroke-miterlimit:100;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 482.47092,234.88996 -5.16101,1.814 3.35638,-3.21702 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-7-4"
+       style="fill:#56d1b4;fill-opacity:1;stroke:#56d1b4;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 585.39628,233.40812 -1.72726,4.08881 -0.86496,-4.03977 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-06-7"
+       style="fill:#3c88b4;fill-opacity:1;stroke:#3c88b4;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="1.02194"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 583.98237,117.37452 c 0,53.39494 0.012,80.0827 0.024,106.78903 l 0.005,10.75825"
+       fill-rule="evenodd"
+       id="path637-4-1-1-1-9-2-7"
+       style="stroke:#3c88b4;stroke-opacity:1" />
+    <path
+       stroke="#70ad47"
+       stroke-width="2.13383"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 530.70484,118.88726 c 15.09432,0 22.63995,28.9344 30.18863,57.86885 3.77438,14.46723 7.54943,28.93452 12.2685,39.78488 1.17979,2.71257 2.41857,5.19913 3.73103,7.40314 0.65621,1.10202 1.33094,2.13338 2.02589,3.08699 0.34746,0.47717 0.70003,0.93426 1.05788,1.37137 0.17893,0.21897 0.35919,0.4322 0.54079,0.64029 0.0907,0.10318 0.18185,0.20687 0.27338,0.30831 l 0.26554,0.29042"
+       fill-rule="evenodd"
+       id="path523-9-54-7-9-6-9-0-7"
+       style="stroke:#3c88b4;stroke-width:1.47213;stroke-miterlimit:100;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 580.80645,227.46162 1.63648,4.10994 -3.73977,-2.96726 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-7-45"
+       style="fill:#3c88b4;fill-opacity:1;stroke:#3c88b4;stroke-opacity:1" />
+    <path
+       stroke="#70ad47"
+       stroke-width="2.82376"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 475.49473,118.63159 c 31.43085,0 47.14307,29.962 62.86166,59.92406 7.85936,14.98104 15.72012,29.96215 25.54665,41.19785 2.45664,2.80891 5.03614,5.38378 7.76911,7.66608 1.36641,1.14115 2.7714,2.20913 4.21849,3.19661 0.72349,0.49411 1.45767,0.96744 2.20283,1.42007 0.37257,0.22675 0.74792,0.44754 1.12606,0.66304 0.18894,0.10682 0.37867,0.21423 0.56926,0.31926 l 0.55295,0.30074"
+       fill-rule="evenodd"
+       id="path523-9-54-7-9-6-9-0-0-4"
+       style="stroke:#3c88b4;stroke-width:1.71831;stroke-miterlimit:100;stroke-dasharray:none;stroke-opacity:1" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.02194"
+       stroke-linecap="butt"
+       d="m 579.61605,231.26188 3.07541,3.61145 -4.67974,-2.07649 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-7-4-1"
+       style="fill:#3c88b4;fill-opacity:1;stroke:#3c88b4;stroke-opacity:1" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:13.3333px;line-height:1.25;font-family:sans-serif;fill:#00006d;fill-opacity:1;stroke:none"
+       x="331.49567"
+       y="36.156982"
+       id="text1590-0-9-8-2-2-6"><tspan
+         sodipodi:role="line"
+         x="331.49567"
+         y="36.156982"
+         style="font-size:13.3333px;text-align:center;text-anchor:middle;fill:#00006d;fill-opacity:1"
+         id="tspan2412-1-58">Alignment strategy before binning step</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:10.6667px;line-height:1.25;font-family:sans-serif;fill:#00006d;fill-opacity:1;stroke:none"
+       x="287.49371"
+       y="312.70258"
+       id="text1590-0-9-8-2-2-68"><tspan
+         sodipodi:role="line"
+         x="289.36871"
+         y="312.70258"
+         style="font-size:10.6667px;text-align:center;text-anchor:middle;fill:#00006d;fill-opacity:1"
+         id="tspan2412-1-9"><tspan
+   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.6667px;font-family:sans-serif;-inkscape-font-specification:'sans-serif Bold'"
+   id="tspan3511">Individual</tspan> :  The reads of each metagenomic sample are aligned to their own assembly. </tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:9.33333px;line-height:1.25;font-family:sans-serif;fill:#00006d;fill-opacity:1;stroke:none"
+       x="45.853512"
+       y="328.72736"
+       id="text1590-0-9-8-2-2-68-0"><tspan
+         sodipodi:role="line"
+         x="45.853512"
+         y="328.72736"
+         style="font-size:10.6667px;text-align:start;text-anchor:start;fill:#00006d;fill-opacity:1"
+         id="tspan3548"><tspan
+   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.6667px;font-family:sans-serif;-inkscape-font-specification:'sans-serif Bold';text-align:start;text-anchor:start"
+   id="tspan3511-1">Group</tspan> :         The reads of metagenomics samples that belong to the same group (defined in the </tspan><tspan
+         sodipodi:role="line"
+         x="45.853512"
+         y="342.06073"
+         style="font-size:10.6667px;text-align:center;text-anchor:middle;fill:#00006d;fill-opacity:1"
+         id="tspan3559"><tspan
+   style="font-size:10.6667px;text-align:start;text-anchor:start;fill:#00006d;fill-opacity:1"
+   id="tspan3617">                     Sample Sheet) </tspan><tspan
+   style="font-size:10.6667px;text-align:start;text-anchor:start"
+   id="tspan3543">are aligned against each sample assembly within the </tspan>group.</tspan></text>
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-weight:normal;font-size:10.6667px;line-height:1.25;font-family:sans-serif;fill:#00006d;fill-opacity:1;stroke:none"
+       x="47.395901"
+       y="358.4516"
+       id="text1590-0-9-8-2-2-68-0-1"><tspan
+         sodipodi:role="line"
+         x="47.395901"
+         y="358.4516"
+         style="font-size:10.6667px;text-align:center;text-anchor:middle;fill:#00006d;fill-opacity:1"
+         id="tspan3559-4"><tspan
+           id="tspan3545-3"
+           style="font-size:10.6667px;text-align:start;text-anchor:start;fill:#00006d;fill-opacity:1"><tspan
+   style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.6667px;font-family:sans-serif;-inkscape-font-specification:'sans-serif Bold';text-align:start;text-anchor:start"
+   id="tspan3511-1-6">All</tspan> :              The reads of every metagenomics samples </tspan><tspan
+           style="font-size:10.6667px;text-align:start;text-anchor:start"
+           id="tspan3543-3">are aligned against every sample assembly.</tspan></tspan></text>
+    <path
+       stroke="#009999"
+       stroke-width="2.29368"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 28.683794,75.79379 v 0 C 28.161614,40.33904 70.191184,11.59725 122.55934,11.59725 h 411.8749 c 25.1482,0 49.36589,6.76362 67.32551,18.80281 17.95966,12.03913 28.19025,28.36775 28.44106,45.39373 l 3.78183,256.77809 c 0.52215,35.45472 -41.50727,64.19632 -93.87549,64.19632 H 128.2322 c -52.368146,0 -95.244306,-28.7416 -95.766486,-64.19632 z"
+       fill-rule="evenodd"
+       id="path317-4-1-2" />
+    <path
+       stroke="#009999"
+       stroke-width="1.21773"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 631.97402,193.0842 c 20.47945,0.0733 33.33357,0.1124 44.24274,0.14283 3.74544,0.0105 7.26161,0.0199 10.77843,0.0293 l 5.54302,0.0145"
+       fill-rule="evenodd"
+       id="path637-4-1-1-1-9-21"
+       sodipodi:nodetypes="cscc"
+       style="stroke-width:2.84116;stroke-miterlimit:100;stroke-dasharray:none" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="2.12781"
+       stroke-linecap="butt"
+       d="m 687.93938,189.80058 10.417,4.64048 -10.39996,1.88292 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-3-2"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="1.21773"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 1027.7769,158.63917 c -8.9751,0.083 -14.6083,0.12729 -19.3892,0.16175 -1.6415,0.0119 -3.1824,0.0225 -4.7236,0.0332 l -2.4292,0.0164"
+       fill-rule="evenodd"
+       id="path637-4-1-1-1-9-21-3"
+       sodipodi:nodetypes="cscc"
+       style="stroke-width:2.00155;stroke-miterlimit:100;stroke-dasharray:none" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.9664"
+       stroke-linecap="butt"
+       d="m 1003.4723,154.75269 -8.0156,5.15051 8.0025,2.08988 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-3-2-6"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       stroke="#009999"
+       stroke-width="1.21773"
+       stroke-miterlimit="800"
+       stroke-linecap="butt"
+       d="m 1028.5074,261.54324 c -8.9751,0.083 -14.6083,0.12729 -19.3892,0.16175 -1.6415,0.0119 -3.1824,0.0225 -4.7236,0.0332 l -2.4292,0.0164"
+       fill-rule="evenodd"
+       id="path637-4-1-1-1-9-21-3-0"
+       sodipodi:nodetypes="cscc"
+       style="stroke-width:2.00155;stroke-miterlimit:100;stroke-dasharray:none" />
+    <path
+       fill="#70ad47"
+       stroke="#70ad47"
+       stroke-width="1.9664"
+       stroke-linecap="butt"
+       d="m 1004.2028,257.65676 -8.0156,5.15051 8.0025,2.08988 z"
+       fill-rule="evenodd"
+       id="path525-3-6-5-8-4-0-3-2-6-5"
+       style="fill:#009999;fill-opacity:1;stroke:#009999;stroke-opacity:1" />
+    <path
+       style="fill:#25a632;fill-opacity:0.596078;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0"
+       transform="matrix(0.73172884,0,0,0.32087103,60.389639,79.7023)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="86.289764"
+       y="90.544083"
+       id="text1757-0-3"><tspan
+         sodipodi:role="line"
+         x="86.289764"
+         y="90.544083"
+         id="tspan1755-8-4"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 1</tspan><tspan
+         sodipodi:role="line"
+         x="86.289764"
+         y="102.21074"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854">reads</tspan><tspan
+         sodipodi:role="line"
+         x="87.586311"
+         y="113.87741"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856"><tspan
+   style="text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+   id="tspan3858">(.fq)</tspan>  </tspan></text>
+    <path
+       style="fill:#25a632;fill-opacity:0.596078;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1"
+       transform="matrix(0.73172884,0,0,0.32087103,61.183931,250.14713)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="87.084045"
+       y="260.98883"
+       id="text1757-0-3-5"><tspan
+         sodipodi:role="line"
+         x="87.084045"
+         y="260.98883"
+         id="tspan1755-8-4-9"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 1</tspan><tspan
+         sodipodi:role="line"
+         x="87.084045"
+         y="272.65549"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="88.380592"
+         y="284.32214"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2"><tspan
+   style="text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+   id="tspan3858-6">(.fna)</tspan>  </tspan></text>
+    <path
+       style="fill:#25a632;fill-opacity:0.596078;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8"
+       transform="matrix(0.73172884,0,0,0.32087103,111.75841,250.14713)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="137.65852"
+       y="260.98883"
+       id="text1757-0-3-5-0"><tspan
+         sodipodi:role="line"
+         x="137.65852"
+         y="260.98883"
+         id="tspan1755-8-4-9-5"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 2</tspan><tspan
+         sodipodi:role="line"
+         x="137.65852"
+         y="272.65549"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="137.65852"
+         y="284.32214"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7" /></text>
+    <path
+       style="fill:#25a632;fill-opacity:0.596078;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3-6)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8-2"
+       transform="matrix(0.73172884,0,0,0.32087103,162.33288,250.14713)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="188.233"
+       y="260.98883"
+       id="text1757-0-3-5-0-6"><tspan
+         sodipodi:role="line"
+         x="188.233"
+         y="260.98883"
+         id="tspan1755-8-4-9-5-8"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 3</tspan><tspan
+         sodipodi:role="line"
+         x="188.233"
+         y="272.65549"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2-6">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="188.233"
+         y="284.32214"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7-9" /></text>
+    <path
+       style="fill:#f9d1ba;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-9)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-1"
+       transform="matrix(0.73172884,0,0,0.32087103,257.9902,247.50134)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="283.89032"
+       y="258.34302"
+       id="text1757-0-3-5-2"><tspan
+         sodipodi:role="line"
+         x="283.89032"
+         y="258.34302"
+         id="tspan1755-8-4-9-6"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 1</tspan><tspan
+         sodipodi:role="line"
+         x="283.89032"
+         y="270.00967"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-7">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="283.89032"
+         y="281.67633"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-9" /></text>
+    <path
+       style="fill:#f9d1ba;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3-65)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8-9"
+       transform="matrix(0.73172884,0,0,0.32087103,308.56467,247.50134)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="334.46478"
+       y="258.34302"
+       id="text1757-0-3-5-0-8"><tspan
+         sodipodi:role="line"
+         x="334.46478"
+         y="258.34302"
+         id="tspan1755-8-4-9-5-7"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 2</tspan><tspan
+         sodipodi:role="line"
+         x="334.46478"
+         y="270.00967"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2-9">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="334.46478"
+         y="281.67633"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7-3" /></text>
+    <path
+       style="fill:#b8cff1;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3-6-5)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8-2-3"
+       transform="matrix(0.73172884,0,0,0.32087103,359.13914,247.50134)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="385.03928"
+       y="258.34302"
+       id="text1757-0-3-5-0-6-5"><tspan
+         sodipodi:role="line"
+         x="385.03928"
+         y="258.34302"
+         id="tspan1755-8-4-9-5-8-3"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 3</tspan><tspan
+         sodipodi:role="line"
+         x="385.03928"
+         y="270.00967"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2-6-1">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="385.03928"
+         y="281.67633"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7-9-8" /></text>
+    <path
+       style="fill:#56d1b4;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-1)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-5"
+       transform="matrix(0.73172884,0,0,0.32087103,455.76248,247.50135)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="481.6626"
+       y="258.34302"
+       id="text1757-0-3-5-9"><tspan
+         sodipodi:role="line"
+         x="481.6626"
+         y="258.34302"
+         id="tspan1755-8-4-9-8"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 1</tspan><tspan
+         sodipodi:role="line"
+         x="481.6626"
+         y="270.00967"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-1">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="481.6626"
+         y="281.67633"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-5" /></text>
+    <path
+       style="fill:#009999;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3-0)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8-6"
+       transform="matrix(0.73172884,0,0,0.32087103,506.33696,247.50135)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="532.23706"
+       y="258.34302"
+       id="text1757-0-3-5-0-5"><tspan
+         sodipodi:role="line"
+         x="532.23706"
+         y="258.34302"
+         id="tspan1755-8-4-9-5-6"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 2</tspan><tspan
+         sodipodi:role="line"
+         x="532.23706"
+         y="270.00967"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2-64">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="532.23706"
+         y="281.67633"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7-5" /></text>
+    <path
+       style="fill:#3c88b4;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3-6-6)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8-2-5"
+       transform="matrix(0.73172884,0,0,0.32087103,556.91143,247.50135)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="582.81152"
+       y="258.34302"
+       id="text1757-0-3-5-0-6-7"><tspan
+         sodipodi:role="line"
+         x="582.81152"
+         y="258.34302"
+         id="tspan1755-8-4-9-5-8-8"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 3</tspan><tspan
+         sodipodi:role="line"
+         x="582.81152"
+         y="270.00967"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2-6-0">assembly</tspan><tspan
+         sodipodi:role="line"
+         x="582.81152"
+         y="281.67633"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7-9-1" /></text>
+    <path
+       style="fill:#25a632;fill-opacity:0.596078;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-35)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-4"
+       transform="matrix(0.73172884,0,0,0.32087103,110.96412,79.7023)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="136.86424"
+       y="90.544083"
+       id="text1757-0-3-55"><tspan
+         sodipodi:role="line"
+         x="136.86424"
+         y="90.544083"
+         id="tspan1755-8-4-2"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 2</tspan><tspan
+         sodipodi:role="line"
+         x="136.86424"
+         y="102.21074"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-3">reads</tspan><tspan
+         sodipodi:role="line"
+         x="136.86424"
+         y="113.87741"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-7" /></text>
+    <path
+       style="fill:#25a632;fill-opacity:0.596078;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-35-5)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-4-9"
+       transform="matrix(0.73172884,0,0,0.32087103,161.53859,79.7023)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="187.43872"
+       y="90.544083"
+       id="text1757-0-3-55-0"><tspan
+         sodipodi:role="line"
+         x="187.43872"
+         y="90.544083"
+         id="tspan1755-8-4-2-6"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 3</tspan><tspan
+         sodipodi:role="line"
+         x="187.43872"
+         y="102.21074"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-3-8">reads</tspan><tspan
+         sodipodi:role="line"
+         x="187.43872"
+         y="113.87741"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-7-0" /></text>
+    <path
+       style="fill:#f9d1ba;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-2)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-8"
+       transform="matrix(0.73172884,0,0,0.32087103,258.18099,78.33391)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="284.08115"
+       y="89.175735"
+       id="text1757-0-3-9"><tspan
+         sodipodi:role="line"
+         x="284.08115"
+         y="89.175735"
+         id="tspan1755-8-4-3"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 1</tspan><tspan
+         sodipodi:role="line"
+         x="284.08115"
+         y="100.84239"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-36">reads</tspan><tspan
+         sodipodi:role="line"
+         x="284.08115"
+         y="112.50906"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-1" /></text>
+    <path
+       style="fill:#f9d1ba;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-35-8)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-4-92"
+       transform="matrix(0.73172884,0,0,0.32087103,308.75546,78.33391)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="334.65561"
+       y="89.175735"
+       id="text1757-0-3-55-1"><tspan
+         sodipodi:role="line"
+         x="334.65561"
+         y="89.175735"
+         id="tspan1755-8-4-2-62"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 2</tspan><tspan
+         sodipodi:role="line"
+         x="334.65561"
+         y="100.84239"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-3-83">reads</tspan><tspan
+         sodipodi:role="line"
+         x="334.65561"
+         y="112.50906"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-7-4" /></text>
+    <path
+       style="fill:#b8cff1;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-35-5-0)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-4-9-8"
+       transform="matrix(0.73172884,0,0,0.32087103,359.32993,78.33391)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="385.2301"
+       y="89.175735"
+       id="text1757-0-3-55-0-2"><tspan
+         sodipodi:role="line"
+         x="385.2301"
+         y="89.175735"
+         id="tspan1755-8-4-2-6-2"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 3</tspan><tspan
+         sodipodi:role="line"
+         x="385.2301"
+         y="100.84239"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-3-8-1">reads</tspan><tspan
+         sodipodi:role="line"
+         x="385.2301"
+         y="112.50906"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-7-0-7" /></text>
+    <path
+       style="fill:#56d1b4;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-2-9)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-8-8"
+       transform="matrix(0.73172884,0,0,0.32087103,453.68494,80.20476)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="479.58508"
+       y="91.046585"
+       id="text1757-0-3-9-7"><tspan
+         sodipodi:role="line"
+         x="479.58508"
+         y="91.046585"
+         id="tspan1755-8-4-3-4"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 1</tspan><tspan
+         sodipodi:role="line"
+         x="479.58508"
+         y="102.71324"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-36-3">reads</tspan><tspan
+         sodipodi:role="line"
+         x="479.58508"
+         y="114.37991"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-1-8" /></text>
+    <path
+       style="fill:#009999;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-35-8-9)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-4-92-5"
+       transform="matrix(0.73172884,0,0,0.32087103,504.25941,80.20476)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="530.15955"
+       y="91.046585"
+       id="text1757-0-3-55-1-7"><tspan
+         sodipodi:role="line"
+         x="530.15955"
+         y="91.046585"
+         id="tspan1755-8-4-2-62-7"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 2</tspan><tspan
+         sodipodi:role="line"
+         x="530.15955"
+         y="102.71324"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-3-83-3">reads</tspan><tspan
+         sodipodi:role="line"
+         x="530.15955"
+         y="114.37991"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-7-4-6" /></text>
+    <path
+       style="fill:#3c88b4;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-35-5-0-7)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-4-9-8-3"
+       transform="matrix(0.73172884,0,0,0.32087103,554.83388,80.20476)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="580.73401"
+       y="91.046585"
+       id="text1757-0-3-55-0-2-8"><tspan
+         sodipodi:role="line"
+         x="580.73401"
+         y="91.046585"
+         id="tspan1755-8-4-2-6-2-9"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 3</tspan><tspan
+         sodipodi:role="line"
+         x="580.73401"
+         y="102.71324"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-3-8-1-4">reads</tspan><tspan
+         sodipodi:role="line"
+         x="580.73401"
+         y="114.37991"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-7-0-7-1" /></text>
+    <path
+       style="fill:#7dc884;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-1-0)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-5-6"
+       transform="matrix(0.73172884,0,0,0.32087103,1014.9403,71.78593)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="1040.8405"
+       y="82.62764"
+       id="text1757-0-3-5-9-1"><tspan
+         sodipodi:role="line"
+         x="1040.8405"
+         y="82.62764"
+         id="tspan1755-8-4-9-8-5"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 1</tspan><tspan
+         sodipodi:role="line"
+         x="1040.8405"
+         y="94.294296"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-1-6">alignment</tspan><tspan
+         sodipodi:role="line"
+         x="1040.8405"
+         y="105.96097"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan4696">(.bam)</tspan><tspan
+         sodipodi:role="line"
+         x="1040.8405"
+         y="117.62762"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-5-0" /></text>
+    <path
+       style="fill:#7dc884;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3-0-3)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8-6-2"
+       transform="matrix(0.73172884,0,0,0.32087103,1065.5148,71.78593)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="1091.4149"
+       y="82.62764"
+       id="text1757-0-3-5-0-5-8"><tspan
+         sodipodi:role="line"
+         x="1091.4149"
+         y="82.62764"
+         id="tspan1755-8-4-9-5-6-8"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 2</tspan><tspan
+         sodipodi:role="line"
+         x="1091.4149"
+         y="94.294296"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2-64-1">alignment</tspan><tspan
+         sodipodi:role="line"
+         x="1091.4149"
+         y="105.96097"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7-5-3" /></text>
+    <path
+       style="fill:#7dc884;fill-opacity:1;fill-rule:evenodd;stroke:none"
+       clip-path="url(#clipEmfPath1-8-6-3-3-6-6-0)"
+       d="m -0.07999584,11.439406 c 0,-6.3596698 5.15973204,-11.51940184 11.51940184,-11.51940184 h 46.077607 c 6.369669,0 11.519401,5.15973204 11.519401,11.51940184 v 94.235104 c 0,6.36967 -5.149732,11.5194 -11.519401,11.5194 H 11.439406 c -6.3596698,0 -11.51940184,-5.14973 -11.51940184,-11.5194 z"
+       id="path1751-9-0-1-8-2-5-4"
+       transform="matrix(0.73172884,0,0,0.32087103,1116.0893,71.78593)" />
+    <text
+       xml:space="preserve"
+       style="font-style:normal;font-variant:normal;font-weight:700;font-size:9.33333px;line-height:125%;font-family:Arial;text-align:start;letter-spacing:0px;word-spacing:0px;text-anchor:start;fill:#fff9ff;fill-opacity:1;stroke:none"
+       x="1141.9894"
+       y="82.62764"
+       id="text1757-0-3-5-0-6-7-5"><tspan
+         sodipodi:role="line"
+         x="1141.9894"
+         y="82.62764"
+         id="tspan1755-8-4-9-5-8-8-0"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1">Sample 3</tspan><tspan
+         sodipodi:role="line"
+         x="1141.9894"
+         y="94.294296"
+         style="font-size:9.33333px;text-align:center;text-anchor:middle;fill:#fff9ff;fill-opacity:1"
+         id="tspan3854-9-2-6-0-7">alignment</tspan><tspan
+         sodipodi:role="line"
+         x="1141.9894"
+         y="105.96097"
+         style="font-size:9.33333px;fill:#fff9ff;fill-opacity:1"
+         id="tspan3856-2-7-9-1-0" /></text>
+  </g>
+</svg>
-- 
GitLab