Repository 'quast'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/quast

Changeset 9:45924fa8d8c5 (2021-11-08)
Previous changeset 8:ebb0dcdb621a (2020-02-03) Next changeset 10:342a1d1fed7b (2021-11-08)
Commit message:
"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/quast commit 9e4867db42282a980f1149711159fa811b2d8414"
modified:
quast.xml
test-data/contigs3.fasta
test-data/test2_report.html
test-data/test2_report.pdf
added:
macros.xml
test-data/assembly_pacbio.fasta
test-data/operons.bed
test-data/pacbio_01.fastq
test-data/pacbio_01.fastq.gz
test-data/pacbio_02.fastq
test-data/pacbio_02.fastq.gz
test-data/pacbio_03.fastq
test-data/pacbio_03.fastq.gz
test-data/pacbio_04.fastq
test-data/pacbio_04.fastq.gz
test-data/test1_circos.png
test-data/test1_report.html
test-data/test2.log
test-data/test2_circos.png
test-data/test2_kmers.tab
test-data/test2_missasemblies.tab
test-data/test2_report.tab
test-data/test2_unaligned.tab
test-data/test3.log
test-data/test3_report.html
test-data/test3_report.pdf
test-data/test4.tab
test-data/test5.tab
test-data/test5_missasemblies.tab
test-data/test5_unaligned.tab
test-data/test6.tab
removed:
test-data/contigs3.fasta.textClipping
test-data/test1.tabular
test-data/test1_kmers.tabular
test-data/test1_mis_ass.tabular
test-data/test1_unalign.tabular
test-data/test2.tabular
test-data/test3.tabular
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 macros.xml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/macros.xml Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,26 @@
+<macros>
+    <xml name="requirements">
+        <requirements>
+            <requirement type="package" version="@TOOL_VERSION@">quast</requirement>
+            <requirement type="package" version="0.69.8">circos</requirement>
+        </requirements>
+    </xml>
+    <xml name="bio_tools">
+        <xrefs>
+            <xref type="bio.tools">quast</xref>
+        </xrefs>
+    </xml>
+    <token name="@TOOL_VERSION@">5.0.2</token>
+    <token name="@VERSION_SUFFIX@">2</token>
+    <xml name="gene_thresholds">
+        <param name="gene_thresholds" argument="--gene-thresholds" type="text" value="0,300,1500,3000" label="Comma-separated list of thresholds (in bp) for gene lengths to find with a finding tool"/>
+    </xml>
+    <xml name="citations">
+        <citations>
+            <citation type="doi">10.1093/bioinformatics/bty266</citation>
+            <citation type="doi">10.1093/bioinformatics/btw379</citation>
+            <citation type="doi">10.1093/bioinformatics/btv697</citation>
+            <citation type="doi">10.1093/bioinformatics/btt086</citation>
+        </citations>
+    </xml>
+</macros>
\ No newline at end of file
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 quast.xml
--- a/quast.xml Mon Feb 03 17:37:36 2020 -0500
+++ b/quast.xml Mon Nov 08 09:03:00 2021 +0000
[
b'@@ -1,20 +1,17 @@\n-<tool id="quast" name="Quast" version="@TOOL_VERSION@+galaxy1" profile="18.01">\n+<tool id="quast" name="Quast" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.01">\n     <description>Genome assembly Quality</description>\n     <macros>\n-        <token name="@TOOL_VERSION@">5.0.2</token>\n-        <xml name="gene_thresholds">\n-            <param name="gene_thresholds" argument="--gene-thresholds" type="text" value="0,300,1500,3000" label="Comma-separated list of thresholds (in bp) for gene lengths to find with a finding tool"/>\n-        </xml>\n+        <import>macros.xml</import>\n     </macros>\n-    <requirements>\n-        <requirement type="package" version="@TOOL_VERSION@">quast</requirement>\n-    </requirements>\n+    <expand macro="bio_tools"/>\n+    <expand macro=\'requirements\' />\n     <command detect_errors="exit_code">\n     <![CDATA[\n #import re\n \n #if str($in.custom) == \'false\'\n-    #set $labels = \',\'.join( [re.sub(\'[^\\w\\-_]\', \'_\', str($x.element_identifier)) for $x in $in.inputs ])\n+    #set $labels = \',\'.join( [re.sub(\'[^\\w\\-_]\', \'_\', str($x.element_identifier)) for $x in $in.inputs])\n+    echo $labels &&\n #else\n     #set $labels = []\n     #for $x in $in.inputs\n@@ -35,45 +32,79 @@\n #end if\n \n #if $assembly.type == \'genome\'\n-quast\n+    quast\n #else\n-metaquast\n+    metaquast\n #end if\n-    -o outputdir\n+\n+#if $reads.reads_option == \'single\'\n+    #for $read in $reads.input_1\n+        --single \'$read\'\n+    #end for\n+#else if $reads.reads_option == \'paired\'\n+    #for $read in $reads.input_1\n+        --pe1 \'$read\'\n+    #end for\n+    #for $read in $reads.input_2\n+        --pe2 \'$read\'\n+    #end for  \n+#else if $reads.reads_option == \'paired_interlaced\'\n+    #for $read in $reads.input_1\n+        --pe12 \'$read\'\n+    #end for\n+#else if $reads.reads_option == \'mate_paired\'\n+    #for $read in $reads.input_1\n+        --mp1 \'$read\'\n+    #end for\n+    #for $read in $reads.input_2\n+        --mp2 \'$read\'\n+    #end for\n+#else if $reads.reads_option == \'pacbio\'\n+    #for $read in $reads.input_1\n+        --pacbio \'$read\'\n+    #end for\n+#else if $reads.reads_option == \'nanopore\'\n+    #for $read in $reads.input_1\n+        --nanopore \'$read\'\n+    #end for\n+#end if\n+\n+--labels $labels\n+-o outputdir\n \n #if $assembly.type == \'genome\'\n     #if $assembly.ref.use_ref == \'true\'\n     -r \'$assembly.ref.r\'\n         #if $assembly.ref.features\n-    --features \'$assembly.ref.features\'\n+            --features \'$assembly.ref.features\'\n         #end if\n         #if $assembly.ref.operons\n-    --operons \'$assembly.ref.operons\'\n+            --operons \'$assembly.ref.operons\'\n+        #end if\n+        $assembly.ref.circos\n+        $assembly.ref.k_mer.k_mer_stats\n+        #if str($assembly.ref.k_mer.k_mer_stats) != \'\'\n+            --k-mer-size $assembly.ref.k_mer.k_mer_size\n         #end if\n     #else if $assembly.ref.est_ref_size\n-    --est-ref-size $assembly.ref.est_ref_size\n+        --est-ref-size $assembly.ref.est_ref_size\n     #end if\n     $assembly.orga_type\n #else\n     #if $assembly.ref.origin == \'history\'\n-    -r \'$assembly.ref.r\'\n+        -r \'$assembly.ref.r\'\n     #else if $assembly.ref.origin == \'list\'\n-    --references-list \'$temp_ref_list_fp\'\n+        --references-list \'$temp_ref_list_fp\'\n     #else if $assembly.ref.origin == \'silva\'\n-    --test-no-ref\n-    --max-ref-num \'$assembly.ref.max_ref_num\'\n+        --test-no-ref\n+        --max-ref-num \'$assembly.ref.max_ref_num\'\n     #end if\n #end if\n-    --min-contig $min_contig\n-    --threads \\${GALAXY_SLOTS:-1}\n-    $split_scaffolds\n-    --labels $labels\n-    $large\n-    $k_mer.k_mer_stats\n-#if str($k_mer.k_mer_stats) != \'\'\n-    --k-mer-size $k_mer.k_mer_size\n-#end if\n-    $circos\n+\n+--min-contig $min_contig\n+$split_scaffolds\n+$large\n+\n #if str($genes.gene_finding.tool) != \'none\'\n     $genes.gene_finding.tool\n     #if $genes.gene_finding.tool == \'--gene_finding\' or $genes.gene_finding.tool == \'--glimmer\'\n@@ -81,36 +112,52 @@\n         --gene-thresholds \'$gene_threshold\'\n     #end '..b'\n-            <param name="strict_NA" value="false"/>\n-            <param name="extensive_mis_size" value="1000"/>\n-            <param name="scaffold_gap_max_size" value="1000"/>\n-            <param name="unaligned_part_size" value="500"/>\n-            <param name="skip_unaligned_mis_contigs" value="-"/>\n-            <output name="quast_tabular" file="test3.tabular"/>\n+            <param name="output_files" value="tabular"/>\n+            <output name="quast_tabular" file="test4.tab" ftype="tabular"/>\n+        </test>\n+        <!-- Test 05: FASTQ read files -->\n+        <test expect_num_outputs="3">\n+            <conditional name="in">\n+                <param name="custom" value="true"/>\n+                <repeat name="inputs">\n+                    <param name="input" value="contigs1.fna"/>\n+                    <param name="labels" value="contig1"/>\n+                </repeat>\n+                <repeat name="inputs">\n+                    <param name="input" value="contigs2.fna"/>\n+                    <param name="labels" value="contig2"/>\n+                </repeat>\n+            </conditional>\n+            <conditional name="reads">\n+                <param name="reads_option" value="pacbio"/>\n+                <param name="input_1" value="pacbio_01.fastq,pacbio_02.fastq,pacbio_03.fastq,pacbio_04.fastq"/>\n+            </conditional>\n+            <conditional name="assembly">\n+                <param name="type" value="genome"/>\n+                <conditional name="ref">\n+                    <param name="use_ref" value="true"/>\n+                    <param name="r" value="reference.fna"/>\n+                </conditional>\n+            </conditional>\n+            <section name="alignments">\n+                <param name="upper_bound_assembly" value="true"/>\n+                <param name="upper_bound_min_con" value="1"/>\n+            </section>\n+            <param name="output_files" value="tabular"/>\n+            <output name="quast_tabular" file="test5.tab" ftype="tabular"/>\n+            <output name="mis_ass" file="test5_missasemblies.tab" ftype="tabular"/>\n+            <output name="unalign" file="test5_unaligned.tab" ftype="tabular"/>\n+        </test>\n+        <!-- Test 6: FASTQ.gz read files -->\n+        <test expect_num_outputs="1">\n+            <conditional name="in">\n+                <param name="custom" value="true"/>\n+                <repeat name="inputs">\n+                    <param name="input" value="contigs1.fna"/>\n+                    <param name="labels" value="contig1"/>\n+                </repeat>\n+                <repeat name="inputs">\n+                    <param name="input" value="contigs2.fna"/>\n+                    <param name="labels" value="contig2"/>\n+                </repeat>\n+            </conditional>\n+            <conditional name="reads">\n+                <param name="reads_option" value="single"/>\n+                <param name="input_1" value="pacbio_01.fastq.gz,pacbio_02.fastq.gz"/>\n+            </conditional>\n+            <param name="output_files" value="tabular"/>\n+            <output name="quast_tabular" file="test6.tab" ftype="tabular"/>\n         </test>\n     </tests>\n     <help>\n@@ -505,7 +693,7 @@\n \n where, again, values are defined as specified in `Quast manual <http://quast.sourceforge.net/docs/manual.html#sec3.1.1>`_. You can see that this report includes a variety of data that can only be computer against a reference assembly.\n \n- Using reference also produces an **Alignment viewer**:\n+Using reference also produces an **Alignment viewer**:\n \n .. image:: $PATH_TO_IMAGES/Align_view.png\n    :width: 515\n@@ -515,11 +703,5 @@\n \n     ]]>\n     </help>\n-\n-    <citations>\n-        <citation type="doi">10.1093/bioinformatics/bty266</citation>\n-        <citation type="doi">10.1093/bioinformatics/btw379</citation>\n-        <citation type="doi">10.1093/bioinformatics/btv697</citation>\n-        <citation type="doi">10.1093/bioinformatics/btt086</citation>\n-    </citations>\n+    <expand macro="citations"/>\n </tool>\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/assembly_pacbio.fasta
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/assembly_pacbio.fasta Mon Nov 08 09:03:00 2021 +0000
b
b'@@ -0,0 +1,6982 @@\n+>contig_1\n+AATAAACCGTTCCAGGGATAACAAAACTGAAACGTGTTCCTTTTCCTACTGTACTCTCCA\n+AATATTCAGGCGACTTTCTGATGATTCACAGCATGTTTCACGAATTCGCTAACCCTAATC\n+CGCTACCGCGGTTTAGCCGGCGAGACCCCGCTTTATCAACGCGATAAAAACGCTTCGGGT\n+CAGGGCGCGGAATAATGCTCCGGTGCAATGCCCGGGTCCGTTATCTTCAAACGCTAAATT\n+CGGCACCGTGCGGCACTCGCTGCCAGCGTACGGTGATATGCGTGCCCTTCCGGCGTATGG\n+AATCACGCGTTATAGACCAGGGTTGAAATCGCACTGCGGTAGCTGATCTTCGTTGCCAGA\n+CACCTTGAGGCCGTTATCTATCTCAAAGGTAAATGTCTGTTTTTCTGACTCAGAGTCTGA\n+CCTCGCGCTCAACAACGCGCAGCATCATCGGACACATCAACCTTTTCATTTGAGCAAATG\n+CGTCGGTGCGGCTTCTATTTTCGACAGCGTCAGCAATTGCTTCACCAGGTCCTTCCATCC\n+CGCTGGGTCTGCTCGCGCATGATGTGTGCAACGCTTTTTCCGCTACCGCGCCTTCCAGCG\n+GCTGCTCATTCATCATTCCCAGGTAACCCTGTAACACGGTCAAATGGCGTACGTAACTCA\n+TGGCTCACGTTGGCAAAAAAGTTACGCCGCGCCCCCTTCCAGTTGATGCATTTGCGTGAC\n+ATCACGCGCCACCATCAGCAACTGTTTGTGGGTATAAGGCATGACGCGAATTTCCAGATG\n+CCGCCCCACGGTGTTGAGCACCAGATTGAGCGGGGCGAGAAAAATCACGCGTTTTCAGAT\n+ATTGCGTAAACTCCGGGTAACGCAGTAGGTTAAGGATGTTCTGCCCGTTATCTCGGCCAG\n+CGCAAACCAAGAATTTGTTGCGGCCAGACCGTTACACCAGGAAAATACCGCCCTCTTCCG\n+TGGTCAGCACCACCGCGTCGGGCAGCGACTCCGCGCCGCTACGAAAGCGTTTTAATCAGA\n+TTGCCCAAGTTCACGGCGGCGTTTTTTATTTCCGCAGCTGCATCTGGTGTAAGCCGTATA\n+GTAGCGGTTCCCAGCTACCACGCCCCGGTGGCGGGGTCATACTGCGATCCCACCCAACAG\n+CCACCATGAAAGGCGCAATAAATTCCAGAAATGCCAGATAAGCAGTCCTGTTAACCGATG\n+CCAGCAAAAACCAGGGCAGGTAACCAAAAAATGCACCCAGGGATGAAAGCCGGGAGGCAG\n+CAAAGTAGCAGCTCCAGCACCAGCCCTTTTCCACGACAGCCGTTCCAGCAACGTAAGATA\n+CTCCAGTTAAGAAAACATAAGCCCTGCTCTGCGCCCGATGAGCAAGGCGTTAAAAGCGGG\n+GTTGAAAAACGATTATCCTGTACCGCGCACGGTCTGCACCATGCGGTCATGCCCGCCGGG\n+CTCCAGTGCTTTACGCAGGCACGAATGTGGACATCGACCGTGCGGTCTTCCCAATACACG\n+TTAGTTCCCCAGACGTGTTTAACAGCTGCTCGCGGCTTCACGCCGCTCAGGATGCGTCAT\n+AAAAAAGTGCAGCAGTTTAAATTCTGTCGGCCCCATCTCCAGCGGCTCTTCGCCCGCCAT\n+CACTCGGGGAGATGTCGGGTCGAGACTTAATCCCTGCATCTCAATCACCTCTTCCACCGC\n+CATTGGGAAATACGGCGCATTACCGCTTTGATTCGCGCCACCAGCTCCTTCGGCGAAAAC\n+ACGGCTTGGTGATATAGTCATCCGCGCCGGTTTCAGGCCGCGCACGCGATCTTCTTCTTC\n+CCCTCTGGCGGTCAACATCACAACTGGAATATCCCGGGTCATCGACTCGCGCTTGAGGTG\n+TTTGATGAACTGGATACCGGAGCCGCCAGGTAACATCCAGTCGAGGAGAATTAAAATCCG\n+GCCAGGGTTCATTCAGTTTGATTCACAGCACTGTCATAATCTTTCCGCTTCGACCGGCTG\n+AAGCCATTTTGTTCGAGCACGAAGCAGACCATTTCGCGAATTGGAGCTTCATCTTCTACG\n+ACCAGAATTACGTCTCGCCATGATTTGCCCTGTTGTAATAAATAGGTTGCGATCATTAAT\n+GCGACGTCATTATGCGTCAGATTTATGACAGATTTATGAAAAGCCTCGTCGCACATATCT\n+TCAGGTTATTGATTTCCGTGGCGCAGAAAAAAGCAAATGCACATTCGTTTGGGTATAATC\n+GCGCCCATGCTTTTTCGCCAGGGAACCGTTATGCGCATCCTTCACACCTCAGACTGGCAT\n+CTCGGCCAGAACTTCTACAGTAAAAAGCCGCGAAGCTGAACATCAGGCTTTTCTTGACTG\n+GCTGCTGGAGACAGCACAAACCCATCAGGTGGATGCGATTATTGTTGCCGGTGATGTTTT\n+CGATACCGGGCTCGCCGCCCAGTTACGCCCGCACGTTATACAACCGTTTTGTTGTCAATT\n+TACAGCAAACTGGCTGTCATCTGGTGGTACTGGCAGGAACCATGACTCGGTCGCCACGCT\n+GAATGAATCGCGCGATATCATGGCGTCCTCAATACTACCGTGGTCGCCAGCGCCGGACAT\n+GCGCCGCAAATCTTGCCTCGTCGCGACGGGACGCCAGGCGCAGTGCTGTGCCCCATTTCG\n+TTTTTACGTCCGCGTGACATTATTACCAGCCAGGCGGGGCTTAACGGTATTGAAAAAACA\n+GCACATTTACTGGCAGCGATTACCGATTATTACCAACAACACTATGCCGATGCCTGCAAA\n+CTGCGCGGCGATCAGCCTCTGCCCATCATCGCCACGGGACATTTAACGACCGTGGGGGCC\n+AGTAAAAGTGACGCCGTGCGTGACCATTTATATTGGCACGCTGGACGCGTTTCCGGCACA\n+AAACTTTCCACCAGCCGACTACATCGCGCTCGGGCATATTCACCGCGCACAGATTATTGG\n+CGGCATGGAACATGTTCGCTATTGCGGCTCCCCCATTCCACTGAGTTTTGATGAATGCGG\n+TAAGAGTAAATATGTCCATCTGGTGACATTTTCAAACGGCAAATTAGAGAGCGTGGAAAA\n+CCTGAACGTACCGGTAACGCAACCCATGGCAGTGCTGAAAGGCGATCTGGCGTCGATTAC\n+CGCACAGCTGGAACAGTGGCGCGATGTATCGCAGGAGCCACCTGTCTGGCTGGATATCGA\n+AATCACTACTGATGAGTATCTGCATGATATTCAGCGCAAAATCCAGGCATTAACCGAATC\n+ATTGCCCTGTCGAAGTATTGCTGGTACGTCGGAGTCGTGAACAGCCCGAGCGTGTGTTAG\n+CCAGCCAACAGCGTGAAACCCTCAGCGAACTCAGCGTCGAAGAGGGTGTTCAATCGCCGT\n+CTGGCACTGGAAGAACTGGATGAATCGCAGCAGCAACGTCTGCAGCATCTTTTCACCACG\n+ACGTTGCATACCCTCGCCGGGAGAACACGAAGCATGAAAATTCTCAGCCTGCGCCTGAAA\n+AACCTGAACTCATTAAAAGGCGAATGGAAGATTGATTTCACCCGCGAGCCGTTCGCCAGC\n+AACGGCTGTTTGCTATTACCGGCCCAACAGGTGCGGGGAAAACCACCCTGCTGGACGCCA\n+TTTGTCTGGCGCTGTATCACGAAACTCCGCGTCTCTCTAACGTTTCACAATCGCAAAATG\n+ATCTCATGACCCGCGATACCGCCGAATGTCTGGCGGAGGTGGAGTTTGAAGTGAAAGGTG\n+AAGCGTACCGTGCATTCTGGAGCCAGAATCGGGCGCGTAACCAACCCGACGGTAATTTGC\n+AAGGGCCACGCGTAGAGCTGGCGCGCTGCGCCGACGGCAAAATTCTCGCCGACAAAGTGA\n+'..b'TTCACCGGCAGACCGAGTGACTT\n+CGCCAGCAGACCCGCCGTCAAATCGCCGAAGTTTCCGCTTGGCAACCGGAGACAACCAGC\n+TGGTTCGCGGCTCCTGCGGCAGCTGCGCAACAGCTTCAAAGTAGTAGCAAATCTGCGCCA\n+GCAAACGGCTGATGTTAATCGAGTTAGCCGAGTTTAACCCTAGCGCCACTTTCAGTTCTT\n+CATCATCAAACGCCTGCTTCACCAGCGCCTGCAGGCATCGAAATCGCCGTCGATGGCAAC\n+AGTTTCGATATTGCCGCCCAATGTACAGAACAGTTTTTCTTGCAGTGGACTGATTTTGCC\n+TCGTGGATAGAGGATAACCACTTTCACATTCGGTAAACCGTAGAAAGCAGAGCCACTGCC\n+GCTCCGGTATCACCGGAGGTCGCGGTCAGAATGGTCACTGGCTTATCACCCGCAATATGG\n+GGTCAGCATTTGTGCCATAAAGCGACCCCGAAATCTTTAAATGCCAGCGTTGGCCCGTGG\n+AACAATTCCAGACAACCGACATCGCTTTCAACATTGGCGACCGGAGCCGGGAAGGCAAAC\n+GCCGCGCGCACGCGCTCTTCCAGGATTTCCTGTGGGATTTTCATCACCAATAAACGCCGA\n+GAGGATCTTCGCTCTGCGGGTGACAAAATCCAGCTTCAGCATCTCATCAATTTCAGTCAG\n+GCTTGAATTCCGGCAGGTCGTGCGGAAAAAACAGCCCCTGATTTTTGCCAACCCCTGGGT\n+TACGGCTTGCGCAAAGCTGACCTGCTCGTTGTGATCTTTCAGATTGTAGAGTTTCATTTA\n+TATTTCCAGTACTCGTGCGCCCGCCGTATCCAGCCGGCAAATATGAACAAAACCTTCCTG\n+ATTTTGCAGGTAGTTTTACCCAACCAGTCGGCAACGCGCTGGGCGGTTTCCGGCTTGTCA\n+CACAGAGCGAACAAGGTCCGGGCCGGAGCCGGAGATACCGCTCGCTACCGCGCCGATTTC\n+CGCGACCGCCCTGCCGCGCCTGCCGGAAGCCTGGCAGTAACCGTTCACGGTAGGGTTCAG\n+CGATAACATCTTTACATCAGCTTTCGCGGCAAGCTCAGGCTGACGGGAATAGCAGGGCGT\n+GAATGAAGCCTGCCAGATGTCGCCCGTGCGCAATGCAAATCCTGGCGGCGATACTGCGCC\n+GGTAAAATAGCCCTGGCTTCCTGCCTCGAGACTTTAATCCCCCGGATACGCCAGCACCCA\n+CAGCCACTCATCAAACCCTGGCACATGGCTGGCATGATGATTGGTTTTCTTCGATCATCA\n+ACTGCATACCACCGAGAAAACACGGTGCCACGTTGTCGTAATGAATGCTGCCGGAGATAC\n+GGCCTTCCAGCTCGCCCATCAAAGGCCAGCAAACGAGTGTCATTAAGCGGCTTGCCGCAG\n+TGTTCAATTTCATCGCCCATCAGCGCCGAGACCACCGAACAGGCACTGGAGCCTAAGCCC\n+AAACCGATCGGCATATTCTTTTCCAGGGTCATCGCCACTGGAATTTGCTTACCCAGTTCC\n+TGGCAAAAACGCTCCCAGCACTGATAAACGATATTTTCCCGTGGTTCTGACGAGCCTTAT\n+CGGCAAAGCGTCCGAGGTTGTTGAGACTGAATGTCTCTGCCGCCTCAACCGTGACTACAT\n+CTCCGAGCAATGCACCATCAACAGGTGTCACCGCCGCCCCGAGCACACAAACCCGACGCT\n+CATATTGGCACTGGAAGCCGGGGCATAAACTTTAACCATGTCAGACTCCTAACTTCCATG\n+AGAGGGTACGTAGCAGATCAGCAAAGACACCGGCAGCTGTAACGTCAATTTGCCCGCACC\n+AATATCCGCGCAGTACCAACGGCAAGCGGCTGATAATAGTGGCTATAGAAGGCCCAGGGC\n+GTTTTCGCCATTTTTCACTTTGAACAGCGGATCATTACCATCCACTTCGGGCAATCTTCA\n+CGCGGCAGACGCCATCTTCATCAATATTGCCAACATAGCGCAAAACTTTCCTTCATCACG\n+GGCCTTCGCCACGCGGCGGCAAAGAGATCGTCGAGTTGTGACAGATTCGCCATAAAAGCG\n+GCAACATCACCCTCGGCGTTAACCTCTGCGGGCAGCACAGGTTCAATTTCAATATCCGCC\n+AGCTCCAGTTCAGGCCCGTTTCACGAGCGAGAATCAATAGTTTACGGCCACATCCATACC\n+AGAAAGATCATCTCGCGGGTCCGGTTCGGTATAAACCCATTTCCCGCCGCCAGCGTGGTC\n+GCCTCGGAGAACTCATGCCTTCGTCTAAACTTGCCGAAGATATAAGAAAGCGAACCAGAC\n+AAGAATGCCGGAGAACTTCATCAATTCTCACCTGCATTGAGCAGATTTTGAAGGTTCTCA\n+ATAACCGGTAATCCAGCCCCAAACGTTGGTGTCATAGAGGAATTTTACGCCGCGATTTTC\n+CGCCCGCATAACGCAACTGATGGTAGTAATCCATCGACGAGGTGTTGGGCCTTTTTGTCG\n+GCGTGACAACGTGGAAACCTTCGCGCAGGAAGTCGGCATATTGATCCGCCACTGCCTGGC\n+TGGAAGTGCAGTCAACAATGACCGGTTTCAGCAGAATGATATTCTTTTCACGAGGCGAAA\n+TTAAGCGCCCGAAATAAACGGCTCTTGGCTTGCGGCCAGTTCTTCCTGCCAGTTTTCCAG\n+ATTAAGCCATTGTACATGGTGAGCAGAGCCTTCCGAGTTGGCAACACCGCAGAAACGTAA\n+GTCGATATGTTTATTCTCAGCCCAGCTTTGCTGACGCTTCAGTTGCTCCAGCAGCGCACC\n+GCCAACGCCACCGACGCCAATCACAACACTTCGATAACCTGATCGGTATTGGAACAGGCA\n+TCTGATAGTAACGCGCCACGCCAGTGGTCGCATCATCGTTATTTACCACGACGAGATTGA\n+GCGTTCAGAAAGATCCCTGAGCAATGGCGACAATTTGATATTTGGCGCGGCCAGGCGGCA\n+AAGAATCTTCGCCGAGATCCCACCCAAGGTAGCGCATACCATCACCTACCCCCAGATAAA\n+TGGCCAGCCGTTCCGTCACTGCCAGCGGCTCCCGTTAAGCCTTCTTTCAGTTCCAGGTAG\n+AACCTTTCCTGCATTGCCCGTTCAGCTCGCACACAGTTCGCTTTGTGGAACGCAGAAACT\n+GAATGGTGTATTCGGAAAGATGATTGCGTAATCAGCACACGGAAATACGGGCGCGTGACA\n+TCGCCTGCAAAGCGCGCGCCGCCATGCCGACCATCCCTTTCATCCCCGGACCAGAAACGC\n+TGAACATGCCATGTTATTCAGATTGGAAATGGCTCCTTGACCGGTAATTCGTCTTCACAC\n+GGCTGGCCACCAATTGAGCGTACCTGGTGCTTCGAGGATTTCCGGTATTTTTAATCAGGC\n+AAGGGATCTGGAACTGGGCGATGGGGGGTATGGTGCGGGGGTGAAGAACTTTAGCGCCGA\n+AAGTAGGAAACTCCATCGCTTCCTGGTAAGGAAATCGACTTCAACAACCTCGCATCGGGG\n+CACCTGACGCGGGTCGCAGGTATAGCCCCCGTCAACGTCCTCCAAATCTCGCAACAATCG\n+GGGCGTAAACAGGCAGCCAGCACCGCAGCAGAAGTAGTCGGAACCGTTGCGTCCAAGCAC\n+CAACCGTTCGCCTTTTTCATTACCGGCGGTGGAACCTGCCATCAGCACCATGTGATCAGC\n+CGGAATGCGGGCCTTGCCGCAATAGGCGGGTGGACTCAGGAATCGACGGTAGTTCGAGGT\n+AATGCCCCACTGCCAGCAGTTTTCCGACCGGATCCGATAACCAGTAACGTTGTGACCGCG\n+CGCGTCTAATAACGCTCGGCCATAATGGGAGCGACCTATTTTCCTCGCCACGGCCAAAAT\n+CAGCC\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/contigs3.fasta
--- a/test-data/contigs3.fasta Mon Feb 03 17:37:36 2020 -0500
+++ b/test-data/contigs3.fasta Mon Nov 08 09:03:00 2021 +0000
b
b'@@ -8351,11650 +8351,4 @@\n TGTACCTGACACCACAAACTGTTGCCACATCTTTAATTGCCTCATCCATTTTGAATTGCC\n TTGCCAAAAACTGATTATTCTTTATCAAGTTGACGATTTCTTCTTTCGTATGAATGCCTT\n TCCAAAATAGTTCGGTATGTGAGCCTCCTCTTTCATCATCTACAGAGAACGGAACACCAT\n-AATTAGTATAAACCTCTCCGT\n->NODE_10_length_40898_cov_2.16443\n-ATTATACAATAAATAACATAAAAGAGGGTGCGCCATAGACTTATGACACACCCTCTTTTT\n-TTCAGAACCGACCCAAAGCCCAACAAAGAACAAAAACCTTGATTATAAGATACTTTATAA\n-AACATTTCTCCCATTTTTCTTGCATGATTCAGATAATAATCGTAAATTTGCAGCAGATAA\n-AATACGCAAGCTTATGAAAGAGAAAAGATATACATTGCCAGAAGAGCAGAAAGATGCAGC\n-TTTCGCAGCAGAACCTGCACCAGCCTATCACGGAAATGCCGCCATAGCACTTCCCGAGGA\n-TGAATGTGCAGAAGAAGATATTGACTGGAATAAGATTCCTGTTGGCTGGCATCCGGCTAA\n-TGAAGAAGAAGCCATGGCTAGGATTGAAGCTATTGAGGCGGAGTATGAGAATGGGCAATA\n-TATTGATGCTGAAGATTTTGAAAGAGAACTAATTGCACAATATCCATGGCTAGCATAAGA\n-TTAACACTTTATTTCAAAAAGGAATTAAAGACTGTTATCGACTATGGATTAGTAGAATTC\n-GGTAAGACCACAGTAAAGCGATTCCATAATGAGTATAAAGACATCAAGCATCGCCTGATG\n-CTTCATCCTCTTTCTTCACCCAGAGAACCATTGCTTAAGCGATTCCACCGCCCTTACCAT\n-AGTGCGATTATCAAGGAGAATTGGAAGATTATCTATCGCTACGACGAAGCCAACGACCTC\n-GTCATTTTCGTAGATTTATGGGATATGAGAAGAAGCCCTAGATATCTGATCAGACAATTC\n-AAAAGAAAACTATAAAGGAAAGAGCTTATGAAGGAGAAAAGATATCCAATTGGCTGGCAT\n-CCGGCTAATGAAGAAGAAGCCATGGCTAGGATTGAAGCCATTGAAGCGGAATACGAAAGG\n-ACAGGCAAGGCTACAGATTTTGAAGAATTTATAGAAGAATTAAAGGCAGAAGGATTATGG\n-CTTATCCAATAAAAGCAATACCAACACTCTATGGTGAGGCGGCTCGTCGTTTCCAAGAAA\n-TGGCAGACGAAACAGAGCGCAAATATGATATTAGTCCCAAGCGAGACATCAAAAAAGATC\n-CTCGCTACCGTGCTATGCGCACAATACTCGAAAGGTCTAACATAAAATAGAACATTGCAG\n-GTGGTTCAGGAACGGGCTGAAAGCCCAAAAGCTCTTAGCCCAGGGCAGCGCCTGGGTACA\n-CTCGCAGTCAGCAATGCGCCCTGTAAGGGCAAAAGCTTCGTATAACACTCTATATTAGAA\n-CACATAGAAATAGCGTTTAAGGTCACAATTTGCGACCTTAAACTATTGGTTTTCAACTGT\n-TTTATTTATTTTCCTTTCCTCTTATCACCTCCAATACCTTTCCGAGATGATAAGTTACCA\n-AGCCATCCTCATAGGTAGTATCCAATACCTGAACCACGGCACTATCCCTATCCGAATGAT\n-AACCCACATAAAACCTTATCGCATCAAAACGACGGAGATAACGCTTGCCATCAGCCTCAT\n-CAATATAAGTATATTTGTTAAGCGTGGTCTGCTTCAGCGAACGGTACTCCTCGGTCTTCA\n-CACCAGATACAATCTCCTCGAAATACTGTTTCTCGATAATCAGCGTCAAAACCTTCAAGC\n-CCGACAGATTTAACTGCGATGGCTTTTTCTCTATTCGCTGCTCCAGACATTGCTGTTCCT\n-TATTGTAGGAAAAGTAGATGATAGTGCCATTCATGATTTTCTGAATGATACTGTCGATGA\n-TTTCCAGCGGAACCTGATACCATTCCGTAGCCTCATGCATCTCTCCCTTATCATCAGCCA\n-CCCTGAAACGGAAGTTCACCGTCTGCAACACCTGATGCACCAGGTCCTCAAACTTCTGGG\n-AGTGCATGTTCACTATCTTGTAAGTGCTTACAATCTCTACAGGTGCCATCAGATAAGTAG\n-GCTCGTGCTCGGCATTTGCCACACGTTCCTCTACCCGATTCGTAGAGAAACCTATTTTAT\n-ATAGATTCTTGATGTTACGAATTTCCGGATTCTCTGATTTCGAACGAAGCACGTAGATAT\n-ACCCCGTCACCTGGTCTTCCTGCTTCACATCCTCAGAATTGAAGAAATGAGCATCCGTCT\n-CCTCCAGAGTTTCGGTGATGGCATAACCACTTGCCACCACACTCTTGCGAAGTGTCTGGA\n-GATAGATATCCGACTCTGTACCATTTTCATAGATACAGCGGGTTCTGCCATCGGGCAAAC\n-CATTAGTACCCTTTTTCTTCTCAATAATCTCATATAACAAAACCGTCTGACCATCTACAA\n-GATAATAGCGTCCAGCCAATAAGCTCGTCGTCTTCGAGATTCTCTGCAACTGTCGCTTCC\n-CGGTCTTCAAATCCTGATGCACCTGCTCGAAGAGCGGCTTAAACTGTGCGAAATTCTCAC\n-ACAGTTTTCTTTGTGCCACATGGTCGGGCGCATCCTTCTTCTGAGCCATCACGCCTTTCA\n-TGTCGGCAGGCACATCGAAGAGTTTTGCCTCCTGATAGGAAACATCCATCAAGGGATCGC\n-TGAATATATCTTCTAATTCTTTATCTATATCCATATCACTATATATATAATAAGGTGAAA\n-AACTATAGCCTATCCCAACAGTTGATACTCATCATACTGTCTGAGGCTATCTGTTGCCTT\n-GGTTCGCAGAGCCTTGAGCGATGCAGCAAGCAACTTTTCTTTCAAGCCACCATCTGCTGT\n-GGGTTCGCTACCATGCTCTGCCACCCACTTGTTGATTTCAAGCAATTTCTGTGCCAGCCT\n-GTCATCGGGCGTCGGTGCCTTCGGTTTCGGACGTACATCCGCCAACAAGGGGTCATCAAA\n-TATCTCTAATAATTCTTCTGGCCAATCCATTTATGTTAATGTTGAATGTTACTTTTCCGG\n-CTCATACTCCAATCCCATCATTTTTCGAATCTTCAGGTTCTTGAGTTTCTGGAATGCAGC\n-AGCCAGTTCCCTTACCTTCGGGTCAGGGTCGTTGATGTCAGGGCGCAGACCGTCATGTTC\n-TGCCACCCATTGCTTATAGGGGCCCTTGAACAGCATCATCGCCTGTTCGATGGTCATATC\n-GAATTTCTGTTCAGCCATCGTGTCCTGGATAATCTTCAGGGTCTGCTTATCCACATTCTT\n-CGACAACACTTCGTAAGCACGCTGGAAAGGGTTGATGGAATCAATCAGATTGATGCTCAA\n-CTGGTCGATGTTAATCATTCGGTTTGCCAGTTTGATGAGGCGATTACCTTCCGCCTCCTT\n-CTCCTCATCGTTTGCCGAAGCATCGAAGTCGATAGGATTTCCCTTATCATCCACCACTTC\n-ACCACCCTTGACAAGGGTATCAAGCAGCAGGCGCTGACGAACTTCTTCCACTTCGTCCTC\n-GCTCAAATCCGGATACTTTTCACGAATCACTTTCGGAATGAGCGTTTTGGTGATGGTTTC\n-AGCCGTAGTACTTCCGCTGATGGCTTTCACCACCAGTTCGTCTTGCAAGATAGAAGCCTT\n-CAAATCATCCAACTGCTCCTTTACAATCATCTTCGTCTTCTCGCTCGACAAAGGTTTCAA\n-GCCCTCTATCACCAGGGTACGGGCATCCAGCGGACTACCCTCATCACTATCCACATCCTT\n-CACCGTCT'..b'CACCTTAACCTTCTTGTATGATACAAGTTTCAAGGCTAAGT\n-TTATTGCCTGTTCCTTAGCATCTGGGTCAAGCAGTATGATGATACGTTCTACTGGAGATT\n-TGATTATCTCGTTTATCTGATAAGCAGATATTGCCTTACCCATAGTAGCAATTCCCCGTT\n-CTCCCATAGTCATGGCATTGATTGCTCCCTCACACAGATAAACGGACCTGTACATATAAA\n-GAGCATCATAATTGTATATGATAAACTCTTTGCCAAGTCCGGTAATATCTTTATTAGGAT\n-TATTGTAACGAGGTCCATTGCCTATAACTAGACGAGCATTATAATACCTTAGCTCTCCGT\n-TATAATAGAACGGGATAATCAGATATCCGAAAAGAGGTCCATCATTACAGTAACCTACTC\n-CCATACGAGATAAAGCCTGTACATCGAAACCTCTTTTCTTAACGTAGCCTCTCATAGTAT\n-TAGCCAGTTGAGAATCCCCATATTTAATGTTCTGAAAACCTTCTGGGAGATATACTGGCT\n-TCTTTTCGGCAAGTTCTACCTTCTCTTCATGAAAGGTGTAAGTGTCAAAGTCTGCAGAGT\n-TTAAGAACCTAAGGAGTTCTGACCATTCGTCAAGGTTCTCTATATCCATTACCATTTGTG\n-CAGGTCTGGGGTGTTCTCCACATCTGAAACAGTTGGACCTATAAGTGGATAAGTTTATAC\n-CCATCTTATTCTCCCTGCCACAGTAAGGACATACGGGAAGTTTCATCCAACCGTTTCTAT\n-ATTCGTATGCTCCTAACCTTTTGATGAAATAGGTCTTAAGCTTACTCTTAAATTCATTAG\n-TGACTTGCATTACTTGGTTCTCCTTAAGATTCTAATACCTCGGTCTATTACCCTACGTAA\n-CCTCAAAAGGTCAGTTAAAGTCATAGGACCTAAGTATTCTGTGTAATTTTCGGAAGTTCT\n-ACACATACCTATCTCAACTCCCCACTCTTGGTTTTCATGATTATGATTACCGTCTGGTGA\n-ATACCTAACAGGTTCAAGTTTCTTCTTTATCTTGAACTTCTTATAATGCCTTATCATGAC\n-GGTGATGATTAGTGATGATTAAACTTCTGTCATATACGAAATACAGTATAGCCTTGATGA\n-TATCACTTGCACTGATACCTAAAGCCATGGACAGTTGTTTTACTGCATTCTTCTGATTTT\n-TATCCAAAGACAGTTCTGCTTTGCTTAAAGCTTCTTTGTATGCCTCAGGAGAATAAACTC\n-CCTTGACAACGAGTGGTTTTACTTCTTCCATTGTGTTTATATTTTTACTTGTTATATGTC\n-TCCAGTTGTATGTGCTCTCTTATCAGCATTGGCATCAGGATTACTTTTCTTGCCGGGAGC\n-CTTTGCAATCATTTCATCCAATTTTCCACCATATACTTCATCGTACTTCTTACGTTGTTC\n-TATGGTGAATTCTTTAGCTTTCTGCTTCTCTATATCTACATGGAACAAAGCTCTTCCCGA\n-CGGTTTACCATCTCTTTGAACTACCAATTCCAATCTCTGGATACCGTCCTTATCTTCTTG\n-TTCAGTAGCATTAAGTCCGTAGATTACATGGACATGACGAACAATATCTACACACTTAGC\n-AATATCGTTCTCATCGTATCTAGTAGCTCTGTGTTTACTACCTTCACGAGTAATATGGTT\n-AGCTGTCCATATCATATCCAGATTCTCAGCTTCTGCCATGTTCTGCATATCTATAAACAC\n-ATTAGAGATTCTCTCGGTATCTTCCTTGTCCCGATTGATAGAGGCAAGCTTTGCTCCGTA\n-GTCAATAATAACTACCTTGATATAAATCCCTTGGTTTGCTAGTTTATGTATAAGTTCAGT\n-AATATAATTGCAGTCAGTTACCATTGCAGGAACTCTTTCAACTACCAATTCTACTCCAAA\n-CCGCATAAGTTTTCTTATATGGCGTGATTCCAAATCATCATATTCTCCTGAGTAAACTTC\n-CTTCTTAGTTTTACTGATGGAAGCCTGGATAACACGGTCCATAATTTGGTCCTTACCGTT\n-CTCAGTATCTATATATAAAACTGACTTCTTCATACGAAGATAACCCAAAGCCAAGTTCAC\n-CAGGAAAAATGTCTTCCTCGCTTTAGGTTTATCAAGAAGTACTCCTATTGAGTGAGCAGG\n-GAATCCTCCAGCATTAGTTAACTTATTTATTTGTCTAAACGGACATGGGATAATTGCAGG\n-GTCTGCTTGACGTTTGAATTGTCTATCTACCAAGTCTCTGGTGAGATATAGTGGTTCGTC\n-TTCCTTTTTAGGTTTGGACTGTTGGAGTATCTTCTCCAGTTTACGAGAGTACTCTTCATA\n-TTGAGTGAAATCATTTAAGTCCAGGGATTCATTCAGATTCTTAACACCTATATAAGTTAC\n-GAACTGATAAACCTTTTCCTGGATATAATCCCGGTCACTCAACGGTAAAGTGTAAAGATT\n-ATCGATTATTTTAAGGATATTCGGTACATCATCCTTAGTTACTAAATCTACATAATCCTT\n-ACTTTCTAGTAAATCTTTTAATACCTCCTTTAATATATTCTTGGAGGGAATTCTACCTTC\n-TTTCTTGAAGAACTTAGTTATGCCCTCGGCAATAATCGAATGCTCAATCAAAGTTAGATA\n-ACTTGGCTTTATCTTTTTCAGGACCAAACCTCCTTCTTTATCTTGGACAATAAACCTAAG\n-AATCTCCAATTGAAAGTCAGTATTGAACTCAAACTTAAATTTGTTCTTTCTGGCCATTTC\n-TACGAGAGTTTAATTATTTATAATATATAGAACTACTTAGTCTCGGTTTACTACCAGAGA\n-GTAGCCACTTCTACTCCAGTATTCAAATCCTCAGCTCTTAGGTGAAATTTTAGGATATTT\n-CTTTGCATATATAAAAATAATGTAGTAATTTTGCAATATCAAAATAAATTTAATTTAGTC\n-AAGGCAATGAACAGAACTAATGGAAACGACGGCTCAGAATTGCATAGACTCAAACCTATG\n-CAAGAGGGCTATGACCAGGACCTATTTAATAGGCTCTACAAGCTTTGCAAACCGGTCATA\n-AAGAACCTGGTTAGGCAAATTGATGCAAGGAGATATAATGTAACTCCAGACATCATCCAA\n-TCTCAGTTTGAAGACAAGATGCTTTTCGTCTTCAACAAGTACTACGGAAAAGTAAGTGAG\n-GAACATCTCAAGGCTAATATCCTCCGTTCCCTATCCACTTATAAAGTCCATCTCCTCAAG\n-TATGCTTATAATGAACGAGCAGAATTCAATCAAAGCTTAGCTTCATTGGATGAGTTATTC\n-GATGATAGCAAAGAATATATAGATGACTCTGAAGAAACTGTATTTAAGGAAGAACTCCTG\n-GATAAAGTTCATCAATATATGAAGGAGCATTTATCTGATGATGCTTATATGGTTTGGCAA\n-GTAGTCACCAATCCTCCCCCTTATGTAGAAGAAAGAATGTTAGGACCAAGAGTTACTAAC\n-ATAGTTATTGCAGAATTCTTCGACCTCCCCAAAACTCGTTCAGCAGTTAAATGGATTGGG\n-GAACTTAGAGAAGATATTAGGTATTGGATGGAAAGAGCTGGAGAAGAAATAAATCTAGAT\n-TAACACACAAAAAGGGAGAACCCATTACTGAGCTCTCCCACATCCAATCAACCTAAAAAC\n-TTATGGCAAGAAAGAACAAGCTTATTCGGAAGTTTGTGTTGTGATTGTTTTGTACGAATT\n-ACTCTTACGGATATAACGGAGGGTAATTGCAGGAACCAGTTTGTCTATCTCCAACTTTTC\n-CTTAGAGGTTTCTGTAATAGAACCACTATCGCTTATAGTACTAAGGTTAAAGCTAGTACG\n+AATTAGTATAAACCTCTCCGT\n\\ No newline at end of file\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/contigs3.fasta.textClipping
b
Binary file test-data/contigs3.fasta.textClipping has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/operons.bed
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/operons.bed Mon Nov 08 09:03:00 2021 +0000
b
b'@@ -0,0 +1,1450 @@\n+\n+\n+\n+\n+\n+\n+<!DOCTYPE html>\n+<html lang="en" data-color-mode="auto" data-light-theme="light" data-dark-theme="dark">\n+  <head>\n+    <meta charset="utf-8">\n+  <link rel="dns-prefetch" href="https://github.githubassets.com">\n+  <link rel="dns-prefetch" href="https://avatars.githubusercontent.com">\n+  <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com">\n+  <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">\n+  <link rel="preconnect" href="https://github.githubassets.com" crossorigin>\n+  <link rel="preconnect" href="https://avatars.githubusercontent.com">\n+\n+\n+\n+  <link crossorigin="anonymous" media="all" integrity="sha512-L06pZD/4Yecj8D8pY5aYfA7oKG6CI8/hlx2K9ZlXOS/j5TnYEjrusaVa9ZIb9O3/tBHmnRFLzaC1ixcafWtaAg==" rel="stylesheet" href="https://github.githubassets.com/assets/light-2f4ea9643ff861e723f03f296396987c.css" /><link crossorigin="anonymous" media="all" integrity="sha512-xcx3R1NmKjgOAE2DsCHYbus068pwqr4i3Xaa1osduISrxqYFi3zIaBLqjzt5FM9VSHqFN7mneFXK73Z9a2QRJg==" rel="stylesheet" href="https://github.githubassets.com/assets/dark-c5cc774753662a380e004d83b021d86e.css" /><link data-color-theme="dark_dimmed" crossorigin="anonymous" media="all" integrity="sha512-xlDV9el7Cjd+KTSbwspx+c8its28uxn++hLZ9pqYYo1zOVcpLPlElTo42iA/8gV3xYfLvgqRZ3dQPxHCu4UaOQ==" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_dimmed-c650d5f5e97b0a377e29349bc2ca71f9.css" /><link data-color-theme="dark_high_contrast" crossorigin="anonymous" media="all" integrity="sha512-jkzjbgytRSAyC4EMcrdpez+aJ2CROSpfemvgO2TImxO6XgWWHNG2qSr2htlD1SL78zfuPXb+iXaVTS5jocG0DA==" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_high_contrast-8e4ce36e0cad4520320b810c72b7697b.css" /><link data-color-theme="dark_colorblind" crossorigin="anonymous" media="all" integrity="sha512-FzS8HhJ7XSHmx/dBll4FYlvu+8eivvb7jnttZy9KM5plsMkgbEghYKJszrFFauqQvv7ezYdbk7v/d8UtdjG9rw==" rel="stylesheet" data-href="https://github.githubassets.com/assets/dark_colorblind-1734bc1e127b5d21e6c7f741965e0562.css" /><link data-color-theme="light_colorblind" crossorigin="anonymous" media="all" integrity="sha512-IpkvxndMpMcO4paMJl83lYTcy18jv2jqG7mHZnTfr9HRV09iMhuQ/HrE+4mQO2nshL7ZLejO1OiVNDQkyVFOCA==" rel="stylesheet" data-href="https://github.githubassets.com/assets/light_colorblind-22992fc6774ca4c70ee2968c265f3795.css" />\n+  <link crossorigin="anonymous" media="all" integrity="sha512-4hzfg/znP4UxIOUt/r3SNYEZ6jBPJIS6PH4VC26tE0Nd4xAymMC3KXDaC9YITfG4fhyfxuB1YnDHo1H2iUwsfg==" rel="stylesheet" href="https://github.githubassets.com/assets/frameworks-e21cdf83fce73f853120e52dfebdd235.css" />\n+    <link crossorigin="anonymous" media="all" integrity="sha512-hY9cPg0yhzOEz+VzCWyvaD7AlZV7TmgCQdFioKUwVl3Uc7jY5jasMMQ3Nv2bzj/JG01ReXUHxmcGnk/EYdwmKQ==" rel="stylesheet" href="https://github.githubassets.com/assets/behaviors-858f5c3e0d32873384cfe573096caf68.css" />\n+    \n+    \n+    \n+    \n+    <link crossorigin="anonymous" media="all" integrity="sha512-5F1+i9sM/Bb3LnUtTfFBD/BO+o9/A/e8flUJj8Tb2C4nJseqm2dXuwrFTr3B7mHCsIPaCNzp/tZUMWeqfeEQvg==" rel="stylesheet" href="https://github.githubassets.com/assets/github-e45d7e8bdb0cfc16f72e752d4df1410f.css" />\n+\n+  <script crossorigin="anonymous" defer="defer" integrity="sha512-/0zs/So9AxtDONKx324yW8s62PoPMx4Epxmk1aJmMgIYIKUkQg4YqlZQ06B4j0tSXQcUB8/zWiIkhLtVEozU/w==" type="application/javascript" src="https://github.githubassets.com/assets/environment-ff4cecfd.js"></script>\n+    <script crossorigin="anonymous" defer="defer" integrity="sha512-8p4kkx6e3xBq1g3NP0O3/AW/aiTQ+VRxYencIeMD8crx7AEwrOTV+XOL/UE8cw4vEvkoU/zzLEZ9cud0jFfI4w==" type="application/javascript" src="https://github.githubassets.com/assets/chunk-frameworks-f29e2493.js"></script>\n+    <script crossorigin="anonymous" defer="defer" integrity="sha512-slE3Aa2Duzwgju0UbTfes+w5slmaEOhXwom+Ev+pPsxxOpeh2CGZqfriJGr6pkhTZX+ffOTTYl3GnSLtp7AkJw==" type="application/javascript" src="https://github.githubassets.com/assets/chunk-vendor-b2513701.js'..b'" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">\n+    <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path>\n+</svg>\n+    </button>\n+    You can\xe2\x80\x99t perform that action at this time.\n+  </div>\n+\n+  <div class="js-stale-session-flash flash flash-warn flash-banner" hidden\n+    >\n+    <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-alert">\n+    <path fill-rule="evenodd" d="M8.22 1.754a.25.25 0 00-.44 0L1.698 13.132a.25.25 0 00.22.368h12.164a.25.25 0 00.22-.368L8.22 1.754zm-1.763-.707c.659-1.234 2.427-1.234 3.086 0l6.082 11.378A1.75 1.75 0 0114.082 15H1.918a1.75 1.75 0 01-1.543-2.575L6.457 1.047zM9 11a1 1 0 11-2 0 1 1 0 012 0zm-.25-5.25a.75.75 0 00-1.5 0v2.5a.75.75 0 001.5 0v-2.5z"></path>\n+</svg>\n+    <span class="js-stale-session-flash-signed-in" hidden>You signed in with another tab or window. <a href="">Reload</a> to refresh your session.</span>\n+    <span class="js-stale-session-flash-signed-out" hidden>You signed out in another tab or window. <a href="">Reload</a> to refresh your session.</span>\n+  </div>\n+    <template id="site-details-dialog">\n+  <details class="details-reset details-overlay details-overlay-dark lh-default color-fg-default hx_rsm" open>\n+    <summary role="button" aria-label="Close dialog"></summary>\n+    <details-dialog class="Box Box--overlay d-flex flex-column anim-fade-in fast hx_rsm-dialog hx_rsm-modal">\n+      <button class="Box-btn-octicon m-0 btn-octicon position-absolute right-0 top-0" type="button" aria-label="Close dialog" data-close-dialog>\n+        <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-x">\n+    <path fill-rule="evenodd" d="M3.72 3.72a.75.75 0 011.06 0L8 6.94l3.22-3.22a.75.75 0 111.06 1.06L9.06 8l3.22 3.22a.75.75 0 11-1.06 1.06L8 9.06l-3.22 3.22a.75.75 0 01-1.06-1.06L6.94 8 3.72 4.78a.75.75 0 010-1.06z"></path>\n+</svg>\n+      </button>\n+      <div class="octocat-spinner my-6 js-details-dialog-spinner"></div>\n+    </details-dialog>\n+  </details>\n+</template>\n+\n+    <div class="Popover js-hovercard-content position-absolute" style="display: none; outline: none;" tabindex="0">\n+  <div class="Popover-message Popover-message--bottom-left Popover-message--large Box color-shadow-large" style="width:360px;">\n+  </div>\n+</div>\n+\n+    <template id="snippet-clipboard-copy-button">\n+  <div class="zeroclipboard-container position-absolute right-0 top-0">\n+    <clipboard-copy aria-label="Copy" class="ClipboardButton btn js-clipboard-copy m-2 p-0 tooltipped-no-delay" data-copy-feedback="Copied!" data-tooltip-direction="w">\n+      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-copy js-clipboard-copy-icon m-2">\n+    <path fill-rule="evenodd" d="M0 6.75C0 5.784.784 5 1.75 5h1.5a.75.75 0 010 1.5h-1.5a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-1.5a.75.75 0 011.5 0v1.5A1.75 1.75 0 019.25 16h-7.5A1.75 1.75 0 010 14.25v-7.5z"></path><path fill-rule="evenodd" d="M5 1.75C5 .784 5.784 0 6.75 0h7.5C15.216 0 16 .784 16 1.75v7.5A1.75 1.75 0 0114.25 11h-7.5A1.75 1.75 0 015 9.25v-7.5zm1.75-.25a.25.25 0 00-.25.25v7.5c0 .138.112.25.25.25h7.5a.25.25 0 00.25-.25v-7.5a.25.25 0 00-.25-.25h-7.5z"></path>\n+</svg>\n+      <svg aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true" class="octicon octicon-check js-clipboard-check-icon color-text-success d-none m-2">\n+    <path fill-rule="evenodd" d="M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"></path>\n+</svg>\n+    </clipboard-copy>\n+  </div>\n+</template>\n+\n+\n+\n+\n+  </body>\n+</html>\n+\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_01.fastq
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/pacbio_01.fastq Mon Nov 08 09:03:00 2021 +0000
[
b'@@ -0,0 +1,320 @@\n+@S1_1\n+ACCAGAATGGTTATCCATCACCACCACCGGCTCCGTGCTGACCACGCCGCCGGTTGGGCTGCGTCTTGTATGGTTACGAGTGGGGACCTCGCGAAATGAGACCCGGTAGTAGCGCTCGCGGTTATCCCGTGGACCATGATAGTAAAATTTTAAAATACTCGCTCTCACCAGCCGCAACGCCAGCTGGCGGGGGGCGAAAAGCAGTTCACCATCCACCGGTCGGGTGCGCAATTCACTGCTGCCCGGGCTATCAATAGCACTGATGGCAATACGGTATATCCGTGCGCTTTTGTTGTTATTCACTACACGTTTGCTGACAAAGTCAGTCTCGGACGGCAGCGAAAATGTCAGATTGCCGACCGAAATCGCCTGTGTCAAAGGTGCCGCCAGCATACAGACCGCTGTCAGCAGGGCCTTAGTTAATGTTACGCCACGTCGCCTGAACATGAATCTCTCCCTGAAGCGCTGACTTCGCCAAACCAGCCGTTATCATCTACCGTACGCAGCGAAATGGCGTTATCCATTGGAATCGAAAATTTGACTGTGGTCTTATCCATCTGCCCCACTTCGCCAGAGATATCAGTCCACGGTGTGGTCAACCACAGCGCATCGGTCAATATCCCGCCAGCTATCATCGCCCCGGCATCGTAGGTTTTTGTAGCTCCGTTGCGGGTAATAAAGGAAAGTGTCGCCGGGAAGGGTACTTTCGCCTTACCGGTCATCGGAGCTGAAGACACAATAGGAGCGCCCGCCAATCACCTGCGCGGGTCCGGTCACCTTGATCAGCACTTCGTCGGCAGCTGTTTTACCGCTGGTGGTTACGATATAGCCGAAATCGAGTGCCGACTCGCCGCTGCCAACATATCCCTCCCGCGACGGTGTCTGAGTATATTTATCGGAGATAATACTGATGCTGAAATCACGGGGTTTGATAATCAGCGTGTTGGAGGTAGAAAATTCATACCAGCCAGACTCCGGTGATGTGGTGTTCTGAAAGCGAAAGTTGAATAGATCTTTGGTGTTGAATCGCTGATCCTCGAGGTTCACCATCTGCTTAAAGAAGTTGCTCGAGAAGAAAACATAGATCGAGTCTGCGCTCTTCATCTCGTTGAAGGTGTAGTAATAGGCGGTATTGCTCACCGTTTCCATGAACTGCCCATTCAGACTGAACTGCATATCGTACGCCCCGACGGCCGAGGCTAACGACGAGTTGGCGATCGCCGGGAATATATGGATTGAGGTGTTGCTGAGTCCGTTTGTTTGCAGGGTATAGTTAACCATCTTACAACCTAATCCTGAACGGCTGCCGATGGTTTGCCGTCCGGCAGTCGGCGTTCCCTATCGCCCAGAGTCGGTACTCCGTCGCTGTTGATAAATACTTCCGCCAGCGAGTGGGTATTTATCAACCGTAGATTTGCTGCTTTCGTATGGGTGACGTTGCGAACATACCAGTTGCCGGAGGCCTGATCCTTACAGCGTGCGCCGCTTGCTGGCGTCATAGTTCACAGAGGTCTGGCAGGCATTGATGGTCATTGTAAAGCTGCTGCCGACGGGCATTTGTTGCATATACTGGTAAAACGCGTCTGACAACATGCCGTGCATCCACTTCGCGCCGCCGCTGGTCACCGTCGCGCCATAAAATCCACTGGCGTCGGTGGTTTGCGGCAGGATAAGACTGGTGGTCATAATTACACCCAGCGTACCAGTTGATGCAGCGCAAGCCAGTTAAAGGAGATGAAACTGGTGAATTTTCCAGCCACATATCAAACTTCCAGTTGGTATAAAGGCCGGTGTTGTAACCGTTATCAATGTAGCCGAGGCTTTGCTGATAGATGGTTCCTGAACCAGTGTATTTTAAACCGGTCCAGCGGTTGGCACCGGTCAGGCGCGGATCCAGCGCCCCGCCAGGAGTGACGAAAAAGTTGTCGTCTGAGTTGTTTTCGACAAACACAAACTCGCGTGCCGGTGCATCCGCCCAGGTTGTTTGCTCACTGCCGCTCTGAGCGCAGTTAATGGCCAGATTAGCGCGAAAATTATCATCGTTATTAGTAGGTTAACTCTCATTCTCTTCTCCTGTCTGCGTCACCGCCGCCCACGATGAGAGGCCGCTGCAGACCACATCACCGACCCAGACGGCACCGCGCGCCTGGTTGAGTTCCAGAGCCACTTCGCAGGTTTTATTGCCACTGTAGCGAAAATCGATAGTGGGGTATTTCTTATCCACGTCCATGACAAACTCGCCGTTTTCATCGGTTCGGGTTCGGCCGATATGGTTGTTAATCCGTGCGTTAGCCAGCAGTGTGCCGTCTTCCGCACGGATACGACCGGAGACGGTAACCATCTGCTTCACCTCTGGCTCAATGACAGCGACATTGCCTGGATAGAGAGTCAACGACTTTTGCGGCCGCTGACGATATCGTAACTGTCGAGTGAGTTTTTGCTTTCTGTAACTCCACCTCATATCTTCCATAGGGAGAGAGCGGGAGATAGTTTACGCTTGCCGTTAAGCGGGAAAATCCGCCCGTTGATTTTGGCGCTGATCTGACCGTCGTCCTCCAGCCCGGTGTTGAATATCACCCCAGCGTTGCCATCAGTCCGCCCGCGGCAGCAATGTTTTTACCCTGCCAGCCGACGCTGCCATTGGCGGTCAAGTTGGTATTGACGTAGCCGTCCGCCGCGCTATTGACGTTCAGCGTTCCGCTGGCGTAACGAGCGTCGAATTGTGCATACGCCCCGCCGCTGAGGGTTTTGTCATCAACCGGTATCGCCGGAGATGGCACGTGACAGATTGGCACCAACAGTGCGAATGGTTCCTTCATCAAACTGTTTGCGTGCTGACAGGTTTGCCATGGTGTAGACCGTTTTGATGAGTCATCCCTGCGCTAAACCAGTTGCCCAGTGGTAGCGAGAGATCGAGAGCGATATATTTTCCTTGTATTGGCGTTGCTGTCGCCGTTGTTATAGCGCTGAATACCGGCCCGCAGGCCAAGCGAACCAAAGGTACCGCTGTAGACATTTTGATAGTAATCTGCCGTGTAATAATGGCTGTTGTAACGGCGGTCATCATGGTAGCTGATGCTGAATGTGCCCAGCTTCGACCACAGTGAGTTCAGGTTGAGTGTGCCGCCGATTGGACGGTTGTCGGCATCGCTACGTCGCAATTGATTGCCAATGCGGGTTTTTTCCTGATTAACCCACAGCGAACTAAAGCCTCCCGGTAGAGTGGCGCTGATGCTGCCGATGCTGCTCCATGAGCTGTCACTGGCCAGCATATTTTGGCAGGTTAACGTTGATCGCCCCCCCAAGCGGCAGCGTCAACGGGTTTCACCCACCGCCTGATTATCGTATCCATATCCCGTTGCCGCCCAGCTAAGCGTACCCAATGAGCGGGAGGTCGAGGCACCTGCTAGCCAACTCTCTTTAGCTGGTCGCGTCTTTTTCCCGTTTTCCGACCAGCGAATCCATATGAAAGCTACCCGCCCCATACCTGCCACGCCAGTGGTGCACCGACGCCGCGCCCCCGGCTAAACAGACTTATTGACCCGCTGGGTGCGTTTGCTGATCACGCGACCGTTAACGATCACCTCAACTTCCACATCGTAAATCCCGTACGGTAGACCCCGGGTATCCACTTCATGATTGCCCATAGTGAAGTTCTGAACGCTTAGTAGCCGCCCATCACGGGTGAGATGTACTTCGCCCGCCGCCGGTAAAAAGGCGATCACTGGCGTGGCTGACTGGCTGCTGTCGAAGATGGTGGAGCTGGCCTGGTTTCCCCAGGAAAGGCCGTAAATCTTCCCTGCTGAAATGGCGGTCATCGGCCCTAAGGACTGCAAGTTCCAGGTGTCGAGCATTCCACCGGCAAATCGGTGACCGGCAAAATCGCGTTCATACATCGCTTTATATAATTCACTGTCCTGTTGACCGCTACCGATCCCGTACAGCGAGCCGTCGAGCACCACATGATGTTCGC'..b"IMAt[MIT2m9>A~]D@WFP`gUVZTorXS_--~~^ME+AtrM9is;d@?D~,VUK~<DSa.UP`A~~C~=<TG+JA={NJ~<LSNo>Ysb9~5HJFFFV-@OWUQ.S^ZanW~DwJtiecU~KJDjMG;fI8E*LSd&DMN;fJ=KReBGTS~'~)k<H^~Nm'ODTD)UNONCzI]<<~PaRANAB.:Gc8kWmGXKGY`k;@ldVC~dAOBPM`O^eXfDNXXG]Cc3~AWgNNU4aTU_en~AFN\\l8O9Vnc[Tc=H]L&Pz>l^[KEK~sJ=~VVOM7Xf~9NBWZXGjXT`SK=BT?JP6QKa:-BFpW8SNFj7_N<SlN-KX?J?LhLB3q,~W)BOXI28LW~=69MZVOhA_@=ubX<k@}cT~b5DsrKFOH@F@]&S?ihZb_SAHLgF5U}a3_0~F>DkDRuQ~V5y;XT~HoxM-^P9,Lt7wZ4@p6e<H\\\\FEPAN;R8AK-^=aAEOK~WFUKS=QHGvcc~gD~C<O9KWt;hH9mqSOOth~<&<AGe,maS:KmEz]NRUX4~O~l1L2Z~]S~Vh3JT~t:eE]k~:E?`[DLw~'[:f39PXm8=~BNT:G5=2~8~~GJIHlCGS[?HbGV9|MFl^Q:UsAdZvWVU\\(~2T~9:I2Q<9:D1FGy/ucHd):M|OdP>f?~6}mAE}O>1XPl~pN`NA7BC~Lz>~:JN48T_~k/WG~J]NAJ3^rC~]R~\\]VyIN.qS<MDo*2>4.VPAp~.EQF+BU^Z+FTKhGD6@N9i?>,E~YR~A?~Ca,E(Wa[Yf%fGGhLEDT9AO<R>Q69dElees6g@T?VI~J_D@=FANMO]Gb{vUcJWW>K@*~=U=f~9?^:<W>KjYXR*JNX'~.XEAeCCaMqYBoP>EZ5YpPOAr/~D@W+?[IA~=Q~~~fVBI8=\\PCG6PS3JV2KnKLe7j/b_T[[D?(CUnM+4M6y~Z~6DcQq>[I.ALf~`?I.KJFa~Pd3~t]\\C\\gT>1=JNS<^_\\]>z6~1@)h?RE)B>^~?:OP1C\\Ma~G>L0yY~_Wa[HSWyuXth5S-~3R*3~?j\\S-:GYPF7ofg@HLn~f`gVFSTJlE>iA-PQeIvMy~Tc`I(8RU7GGX[Z?Be2D%VRbngSA]_rYEIJK7A\\]5/0__L[^~M`~f(LZi(WBaP}eV/~^+XL7J?T:Y~TWL0EB2cXVPCrBPPd9T^oUH+Lc@)XV^~At'Dpe2PKTP)S-RGuk4NL<OU~MFU41R1~CGi4K1?_T~*G?5@1uL@2Zj*9<F?~VCyWGMKPPXAiF~<R39V~Tk.~Id6Sl.A=/;gJF@|TUrJ~oT>Y^hX+IJ~cxg2aTE~W>M`Q]Ik,~B[nlsAD\\rFg$-TxSIY:KFcVeAr@X^BG~Y~RR<m~/wd0Y5[@=GIVIr@y8j9NC7jBObQ.Y7)])PNIV<Wg@_KWVIBM~7~?@O>^~`NYoO4U,D$H<GvJ5.b]K*u49SD43PQd~+LSAA;&Qs5^@~n/,WN<HHBP~CE_PmQOU[cTY~T>RZXOI@R9n,E~8D<eDOQh3d-I>h~nNCd+Z;Q0Ifz~S@{[Ag>SEM66A:O;~>_LNA=o7^XOQR>gejObX].~<:e9DD'~?`9\\]FSic?0+bAkC42bMOg9Z~~QA~B~<&4TKJqBxf-~TDOS5S0R2o[MiW~eDAMM~R08Z~6T_:@-L_FBDIh5~@RPmB,o@OF~.60L.;_OE~ANKT_M\\BRZO6=35?~F^CBNIE|:>IXPGx]P?L~x^AD@3ND<K~OpAb2Gf]O'5pAMOZ[K8ZFS{Ge~Rhs~dISaqX6ZGFJ<}HG90.SwKxN2~~dQgZ@E1f2~<vFA~MKURc_VhDP~~].x\\iLPOZRC>F?4~BFy_NODB~VgBmd>SRiBH~OTY.nSIeYG1^~P?>QN;p(9^PF'1sC:pN_AQUhX7>~<~ZKorY1aA3u\\E@]H8\\Q]y~~LTd4\\]eUG=`?28Di65^fJ[@dPY-AT`>*0]iNKF4dQR^EI*:O7UEP~B,P~eNPR[AU8f4B:v0J<d^CPUeXzhsz5};+LXB\\/PEuE7;=_~UxL.>~G]FCA?yGn15DKG^>U,5WpBiU{:@Gx:FBTYBjU<wM~]N7d>EI~8)Q6So)]6HV~]VC4q7[c_o_LGSABrW?^HNi~GSH<~]:HE:<>~n~^LK<O&9cUb]Fm>pORKq^5TUMx`XiM?P<Y~3<[?~C\\HFCT}dkGYSM~sXUGC:gOZ]tGP1+^^-;6HKJD?AHUQRD:>VO>a,KK`FcA6P\\kRTYX)dY~-aCDETL@>YL~[q6:>U8EjRpI9Qa:.9j4u85~KA;VWUDEN7=I].]BUTYLk9ErC;[uCOh\\a~.IT0Kc<G<V6UU\\wBqM7>17G`'G~jdLQRSjE]VO0Oj<iKT^J==@IAGM^4i\\}F:<UK({:G9~S[gIk88AE,>\\CS<^H]:Db)=GL>CUBKQj7G@~N2zd6j>675RNQ\\OD^[I<tYdrf,]W6ZED_~fSc(IV7~6XXUZHC0BvLcc~g?EWsW~GD^We`)JT~P~FkWK9J\\aSNQQC`TWG?S\\@DF`a2<F`J'4AGP6a?o/\\IT\\p<F@7WX2{~hI/\\_e7MU5h8>D1dGN=Yyck~^ZUHM@2CWj~4WhR~zHfjZpV*GP[~)A~_WS75f=5L)ePHVeFA;:4R_KSgZ~f\\~bLT/RIm_N'MCAkV/vq~-[NOjcEP`7>JUX]Xy5?HD~jT>Z}~DPV0|6Rarn~G[ybCRN~=D;RUi6u,Oh^e/Gl~<IL0A;8~2u~G4sQ5bf[UyTGJ7e>t:/oE<-5K>?4Bj-FXXp_9Z:^ELe^CU~<M\\bcofT(^Ph]3T.]@W<G,EgFbV1/}\\@HJ]q~PM&~\\iYdJKOGcZKf\\~:MT~@OG=rauaM8~N4X+MKKVXOI,~=_y1|>];K10+Q~O)f;OsfP2~ZITxcFS\\3>N~8=pR~~TPUgQJ~`DO~3LIN`D~5pZt2os|/NN_JdA)TcKCAKc@@~WKJXJOPeIEY$@KNK<V?9WPXbPr~D7;~MTH7]TG@~Zu\\W/<c~d~49@^WNEROL]MW*h`LJ6[6ODfjG\\V)>EhFCB~aTPB`~^I[B9:I~j>L9('?KV@W~/~~+Z\\V=~HnJaRIVKbSB~_7]`F:4CcaEN\\3:I[031}>Q>T:FG]U/<Kb~aW)-JN4s=;-DmhHWMT<Y;E^@aE&~abT@IECPf38]@t'g]IL<[VRSYBQ8EQdd*G+9I*Y>6ex1[zpI*ECKYj&+7Q;92~~5*Z@K\\VFP9~ThUL~VN?/:ccuVEca5L[yMGoUcN~DWuU;>/hiQbUJR4(;7dy?@ElJI]'s}~=BRc:bR~Ef_W|&]~;jLebZiV3?/46[a&~,O6fbfjSBMNBw::MTY?~NR1KFpA)W~~Y=f=~V)AT>Ln6U^S=6OsT1~_IQ\\JtZ6BnWMh~=1R7@8?imO_~(VBeC^yjK.^4p~ZO<>MH~*N?pK/L~cJY8J<J85AQn~G^[)~m?K??<KK.l>OO\\Wqh`0@To>lLs>uS~lKq~H4<O@~2K:SlN;Z@~VhfQI~KTn]@]97]@|U_qAg+I5rs~BkztI]KcJS3BCE[:;8H3]jZ~H\\4<D~;SQ3=}PV\\z=dv>hTG~]Lb:CLjGo{Q;VJ_:N|2^ANX;BAG5lKdCnS:m&\\?pVM-~sOg59UhI4<B3KWsCbZCW@:NAmJk=rU:N5ZT~C8FHDV;_~/_]^`1[uRX`~O~Sgf0WNGTbNWmOA(@|d\\GPL9>/[mfH1MYqB]Oad4AB^5b[j^FV9J9DR0G~WpF[F~DFKe4?UF>-:[L~KOUCv_T;P~89P<Rosl=EX%A~0;$>n<=~YeCCBnLcPSW-M=vG,gHIgVGpO3eH~~HWeXxbO2B(Xvbi4Z<8>RP)tUVJIJNG8m~W?UJLZZ<-S~TYFaOQ+_BX.UaK'AdlhNN-gt=?SH~lER@X+Lu0<;J~b<IO9tG~5i]WLwk%~QS*feYj~CV9L*f?>=K/fc&vFKAbF5NFG1G:T_~Q_UJ=V?7Q8RT|.DQH_e9eUGl~J}5]IfA8IYD_T:~]JCG<TtR/J\n\\ No newline at end of file\n"
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_01.fastq.gz
b
Binary file test-data/pacbio_01.fastq.gz has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_02.fastq
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/pacbio_02.fastq Mon Nov 08 09:03:00 2021 +0000
[
b"@@ -0,0 +1,348 @@\n+@S1_82\n+ACTTTTGCTCACTGGTGCTCGGCGTGAAGAAATTGCGTCGCTTCGCTGGTCAGACGTAGATTTCAAATGGTCAAGCATGCGAATTAAAGACAAGATTCGAAGGTGAACGTATCATCCCTCTCACTCCTTATGTTTCTGAATTGTTAAATGTACTAGCGCATATCCCCAAATTCTGACGTAAATAAGGAGGGTTGGGTTTTCAGAAGTAACAGTAAAAGTGGCAAAATTATTGAGCCGCGTTCAGCGCACAACAGAGCATTAGTGCTGGCTCAGTTACCACATATCAGCCTTCACGGTTTACGTCGTAGTTTTGGTACTTTGGCCGAGTGGGTTGAAGTTCCCACTAGGTATTGTTGCTCAAATTATGGGACACAAACCCAGCGCTCTTGCCGAAAACACTATCGCCGTCGTCCGTTAGATCTGTTACGAAAATGGCACGAGAAATTGAGACATGGATCTTAAATGAAGCAGGTATTACCATAAAAAACAACGTTGATATGCGTTGATTCCATTAAAAATCAACATATTACAAAATATCATCAACTATTGATCAAGATAGATTTTCATGTTATCGTAATACACAGTTTAGTCAATGATACAGCAACTACACAGGAGATAAGCCAATGGCAACCCCAGCAACTGTATCCATAGAACCCACTCTGGCAGCTATCAGAGCTCGCTGGTGTATTAATTCAAGTAAAACAACTCAATCCTTTAACGATCCTGCGTCCATGGAAGAGGTTGTCGAGTATCTCAAAGGAACATACTCAGCTCTTCGCAAGTCTGTCGCATGCGCCAAACTGAAAATTTTACATCTTAAACAAAGAATGCAAAATGCTACTAACTTTCTCGCGCGTCTGATGTCATGTAAAAATCAGGCATCCAGATCGCATCACGTCGGCTAAATCAGCTAAAAGTGCCTTATCATCAGATTAGGTGATGGTAGTGACCCCGACCACCGAGCCCGAAACGTTTCCTTCTGCCTTCATTACTACCCCTACTAATTCAATAATGCTTAAAGCTTTCTTTGCCAATATCTCAATCACTGAGGTGGCAAAATGAGCGCATTCAAACTCCCGGATACATCTCAATCACAGCTCATTTCAACAGCTGAGTTAGCTAAAATCATTAGCTCAAATCTCAAACCATTCGTAAATGGCTTTGTCAGGACAAATTGCCTGAGGGGCTACCTCGCCCAAAACAAATCAATTGGCCGCCATTACTGGTTACGTAAAGATGTCCTCGATTTTATAGATACATTTTCTGTAACGAGAAAGTCTGTAATAAATTACAGATTTAATTTATTGATTTATAGCGATGTTGCCCCGAGAAAAATGGGGCAACACTGAGAAATTTCAGATAGTAGTTTTA\n++S1_82\n+@ChND]~~Vf/J-P[TCaRgKPh=esJ`e@T,@7OQQL>;~BS'b~Eb_pDq7k1W^NHQKZSYPe|0~8~}6PXU>~H~RIRI@V(Zg7>APOW*%B3~I_UOA~hL~=7>DYUA~V}fL9b~G7~GId+OPW]NEQYALc<_;O~r6vJR`<@h'?sI%ysAAU^SnIQDs^,/?^X/G0Eh@RWAO@G?:AMJSy\\K)ALx[>ZW~FI~I^gG$;EOJZ]BWvJ|g62j2PMN]96G=OGT~;YY-~;LGU]~O7W,~\\o^?.>Xw+%5AGJ>@0oB``K6GngS[LUW:=G3@C^:E^ASfXN+K2DthL~tDgM~~2F8BK|O\\XX_5VDv~d~8m~)IH(CZQ`I@QL3fp%,DHJ+M)/4]j_lJZofbUf<nRR5g^<VU<HVBbX_OJQ@AC2HZYvLA]V7~s?eV69?DORSC>)OFC_TRPZ?<TYK'~B~r>POEXKE;~U;xFY@V7QuX?7RPO\\Q?~@5r`T=8*@C(i;XrRqOYKI+G@SqL~8Y~4aRj2M~g[~i@jM8H1WbN_Pk[fK:eSQMXD*>3NruvRL9IWBO\\V~uGN_-'twf<KBQL'_P?F97uTA'?P?W8>P>JB@Kpn?-D?SM~E~;HkB~KA]Hb~~V9PQBONZHGVJGj~hO*PX6HW5PrfqHMp\\E7@TF^B\\3Uj;:Q~XCODIS~>4Q)[x>BVPIS5]D294Z~Ai@~MP:Nz^98QZn?D0NWST=I*N<;DlmQI4=TVG1A2>HEU~Qs'_PD/KJ3zT@?:gMQvY7P^waehlkJe5*QjBRU[ZZEAWA7LLYGhNSRI/2~Vx29%hIR3~;NUSfT>c\\X?2\\-C~UIbYFICJPD@vS*R^?qD`<>QUS`I~OZ~h2NNJTbQhcN]GO~eLTf=`(]1D=LDJ8'?=OKE3>Su\\-FbA,S[V4s46E:J?UKWLLnGYCY^>~GV~IH~KYHa`~SnDK~@a9o>TLR@^~[Xs`BT9GBD)WbbUFGUO0kA>]Lc;^_UIJ~~;~T+DS-E=ggdo;IG?@VKYd}Q@HoWPRVZO}KPNMSIBH<9QCON@iWvVB;lX*=;DgRdM~EY:qcK~~BP~N]>EGgXV[NBKZ:^?\\PIIRbR9R[6?ZF=s06>J{k`V._-LrNYD~a\\BQ~IfXO+/S~~W-maZJOCM@.wjQC9A-RODPV5rkkYJcU-gLeNT(O-~BYfOYYMJ|~]:DPa:HJS:^EZujtNlIPQHu0pRKF~G+IOF}AN'Icq7hR&XLN?R]M{VPdr~lmDrAP~tOKwr}O~M/^7?}/bXPJ~b>S]bK_XIBT&a_WGI82kveZjLLFfZ_cLY1;K>V3ErIFGlZ]@fddKDMB`VTRDE-_\\6V8-@|GjD[=p4Whu8U-KcDvIU<JX~oG`>Md;7:~9Sx'XQiBYKE\n+@S1_83\n+ATTGCGCCCCAGCCCAAAAGCAAAACAGCACAAACAACGCATAGGCAATGTTGCCAGGCGTTGAAGAGGCATTGCGATATTTTCCGCTAAACAGCGATTTTGACAGGGTGAAATCAGCCATAAAAACCTCCGGAAGTCATCTGCTTCTCTTCTGGTGTGATACCAGCGGCTTATGGCAAGTCTGACAGGTCATTTAGATTGTCAATATCAGAATCATGGTAAATTGATGTTGGGAATATTCCCGAAGCGTGAATCTTCGTTGTGAGTCACAAAATGGCAACCTTAAGTTAAATTTATTAACAATTACGAAAATGTTGTCTACACCACAGACGGTTGTTGCAGAATATGCAAGGATGTTGTTTTTCGTTAACGGAGCTGCCATGAATCTGCCTGTAAAAATCCGCCGTGACTGGCACTACTATGCGTTCGCCATTGGCCTTATATTCATTCTTAATGGCGTGGTGGGGTTACTGGGATTTGAAGCAAAAGGTTGGCAGACCTATGCCGTCGGTCTGGTGACGTGGGTGATTAGTTTCTGGCTGGCGGGGTTGATTATTCGTCGTCGCGATGAAGAAACTGAAAACGCCCAATAAGAATATTATCGGGCGTTAAAATATTCATTGTGGTTTTCAATGCGTTATCCGCAGCGTGACGCTCCAGCGCCAGTTCAATCAAACGTGTGATCAGATCGGTGTAACCCAGACCGCTGGCTTGCCACAGCTTCGGATACATACTGATATTACTGAAGCCAGGCAGGGTGGTTGATCTCGTTGATCACCACTTCGTTCTCTGGGGTTAAAAACACGTCTACACGCGCCATGCCTGCGCATCCCAACGTTTGATAAGCCTGAACGGCAATCGCCCGGATCTTATCGTTGATTTCTGGCGCAATGGCTGCCGGAACTACCACTTTCGCGCCATCTTCGTCAATGTACTTGGTGTCGTAGGCATAGAAATCGCTGGTGAGTTACGATCTCTCCACAGGTGCTGGCTTGCGGATTGTCGTTGCCCAGAACTGCGCATTCGAATCTCACGACCTTTGATCCCTTGCTCAACGATCACTTTATGATCGAACTCGAACGCCAGATCGACGGCAATTGCGTACTGTTCTTCACTGGTTACTTTGCTGACACCAACAGAAGAGCCCTGATTAGCCGGTTTTACAAACAGTGGTAACCCCAGTTTAGACTCCACTTCGGCAAAACTAATG"..b"GGGACATGGATCTTCCGGCACAGCCGACGCTGGCGGACATCACCGTTAATGGTCAGAAAGTGCCAGTTATTTACGCTCCGGCGAAAACCGGCAACATTTTTGTGCTCGATCGTCGTAATGGCGAACTGGTGGTTCCGGCACCGGAAAAACCGGTTCCCCAAGGTGCAGCGAAAGGCGATTACGTAACCCCAACTCAAACCGTTTTCTGAACTGAGCTTCCGTCCGACGAAAGATTTGAGCGGTGCGGATATGTGGGGAGCCACCATGTTTGACCAACTGGTGTGCCGCGTGATGTTCCACCAGATGCGCTATGAAGGCATTTTCACCCCGCCATCTGAACAGGGTACGCTGGTCTTCCCGGGTAACCTGGGGATGTTCGAATGGGGCGGGATTTCCGTTGATCCAAATCGTGAAGTGGCGATTGCCAACCCAATGGCACTGCGTTTGTTTCGAAACTGATCCCGCGTGGTCCTGGCAACCCGATGGAGCAGCCGAAAGATGGCCAAAGGCACGGGTACGGAATCCGGCATTCAGCCACAGTACGGTGTACCGTATGGTGTCACGCTCAACCCGTTCCTCTCACCATTTGGTCTGCCATGTAAACCAGCCAGCATGGGGTTATATTCTCGGCGCTGGATCTGAAAACTAATGAAGTGGATGTGGAAGAAACGTATTGGTACGCCGCAGGACAGTATGCCGTTCCCGATGCCGGTTCCGGTGCCGTTCAATATGGGTATGCCGATGCTGGGCGGGCCAATCTCCACGGCGGGTAACGTGCTGTTTATCGCCGCTACGGCAGATAACTACCTGCGCGCTTACAACATGAGCAACGGTGAAAAAACTGTGGCAGGGTCGATTTACCAGCGGGTGGTCAGGCTACGCCAATGACCTATGAAGTGAATGGTAAGCAGTATGTGGTGATCTCCGCAGGCGGTCACGGTTCATTTGGTACGAAGATGGGCGACTATATTGTGGCTTATGCGCTGCCGGATGATGTGAGTAAGACTTGCTCAGATTGCTGACAACGTGCGCGTTGTTCATGCCGGATGCGGCGTGAACGCCTTATCCAGCCTACAAAATTGTGCAAAATCAATGGATTGCACAGCTGAGCGTAGGCCTGATAAGCGTAGCGCATCAGGCAGATTTGCGTTTGTCATCAGTTTAATGCCCGGAGAGATCCGGGCATATTTCCGAATACGGTCTTTTTATACCGTAAACCCTAACATCATCCCCGTATCTTCATGTCCCAGCAGATG\n++S1_168\n+QMdV~8@_YBIkOdAHP6=pE21E|~IgX~G<M9O7B`Sz(~a@a^U%RdTpTY=?WDaBC6;a@ZU?J;8:mUHF0\\FU>}>PD6_~JN{JD3sQMNasHU`?>lR~BUDNPO]hELMLXIm~=`?Y~\\BDD(A@Td?mIP0W+b;2~WPT`HBXj>EcuDf>,/KVRHMYsQDWDM\\@h?QCEO~:\\~XUBLPD?~ydE5L|W`RX~~TMz7`@FZ5.H_HW=r|JRR{TXHO~jcXNa~~ZdJu8f]t;LBeGnKOJ\\J~GO?1F&KhaHN:;UbCJMuD|qfC_@Oo~zo'Kg3NhO)DUOL`6?a@[XQEPFUBD6l~_L~rAbG2~HHTUg/K`fYK<y`\\~3ZBwQ~H~XA~JU&7\\4KDVM^HC7P;*~o~cB~JP~b>T_9]0:Rb~~2TKP~KWMUY;=H~L3G~_kt-S,MWv(7n~yLJK7lcD;:MGPJeENN0EH4V8CA*C4sB$F[KLA~_J3yNUEBXPM\\RSO<[dK]2@U0@X`If]EAkI;E]>DG^ccC1$LMOT<DhNGcm5;YQMxHT3[DC~H^Oo~Ro;*HN{Z)8*e~kZWHoQMLF;MVpR0HK0XD~YY9D/;KeZJGGa_?D{IG2l\\~Ja+iQZjN/?VG~NOd;y9PZUL[PhcDIMAP@~0bZu~^7De6dDU~~`=EFG^S<OqC~kd>kl\\@_YZS~MI`N~KJMELPZ<4RJ[jHAWEf=&-~I]?F<FgHF~dOC~+Y9j~A@OWNkYD+I/Zbat7Y?X+BUQOq>@B0e>E-\\~AQFBC]E~NeSE;P~=cCL~:X@9]`F)cb[`+^^EL,CXRmZ]HGWpWenO;gXpR\\V0M(POMAgw~gBRZYBa)UGHI~qS`@:)~beJO-W~C;TC~SRH@Pk~8=FP7?4TM@U7^7Q~;rW;/?;`O\\j`?Z]Gpcp~]ZStWt&G^B*s:YbyU}H6W?Slt%{acPMO=a6hX7vIH~~@DaotZA~*LCTGCOid)(~}b5M:?HAD'@QE\\J}6XWkh{Kr>Y]\\ZL\\E?fdG(oUEURSW~~RfF=X;63.+_M_9yK<l@Z>~BQ%SfT>OB`EVY~ONaA@?^[1Gk@>eW8arHbMv1HJFk]~OI;\\pK~foFo?<h:~;$L/H??C&E[F;8(I@<46U`yM4OJB-C~>CJ~HG>YGP1\\Jx]d:uU~?GUI:6P9:e423O-Lm~i~MVWT@2H6[~4v.[(=PQFI/KL8XND?Lm:W=d@KoFQB*Ft1`xBB;EH?Lh14+4DM~<ik~b~R5AR8TL=/G<E@>JLX?OLAUNLAY~hGagVmb;~GUt8Yc;t~SFGOSea:Cz8~v~CYMu@Ac~EHQL.EUX*<~HZB<:9;dB6J~5c7]&HN~JT>lGQ<$B0]X_~QU7\\66PO`VCp/&@QZG8p>>7H>IKx-rUC>K]EQ@QCSQqVBiq~=^PI~XN8-V`e?14KOPMa_]a*AWXOM@;X~Z`VE~M3S}pd~Z~>=7[XiLZee+D~B<F~m5Sua*~EYRiY~bT9sBO]]tO@|P>xKRTBG:s7tm;R9~~4aP@HOLe~F);~QGtZWM~]Fki~J~@R\\rX<7TQVaFR52]3Fd['Kq[l?PZuYHl?3_SAlrOMWR__WLQ~A?[IgH@-VWYC^O?f~PbPI~~,R_Ntx_So~A~bW{PABuA~7MO2~~UH~E8QbF:I1]B_~~?EoMC8HQ7>'WB]VTgEVYT5~^N0:`PjJ_:C>LJC\\@NKTN9}c~AIVRNEB\\HK;VBSG9lBD~R~~aKP~C;_~8lRZ0U~`[4WD1>X>by>L<>IYFVUVd0SzVjUIKB:72OK9\\dF<JRWUM*~PGD9:GKc~~4H82@A9LIB9sFEDUZVcKTDdq;X~T:WR@][*YX;6`:~X>'~e[BS7mTuL`B7FJ`VGM(IlYB~99}cF~KlG]9MC^2MNFSgME9hO;{GQv+Z,~M4VV~~E29EP~d~BGP^[ZAxi<B43Dbi~~{DRlAUX7|;-\\o*1IMM1]HUVG[[H<PF8KWI%U~GLW@NF6O7OZTCIYU&_DJ6=X:EeOKe69rBb7`i~~~KX@KaV,NG.u<@QFBFi\\mYR_~FSI:OGgY]b5MI8~MuSW96[8;PQ*u5NQK/~DC%j~LUay]rTtOqAG~~MpL'V0i4U~nA~9Aie[:RET:WMXOK~>HM2Q=[T)Ox]G;]>JQ~gJRl~\\=;F[U/V~@J?:gfsD]UHoED~SDP~SHZBCjE~:HDiF\\.NOSHQC~WnB~lj@4PP<=cL`h9V{KLA8>^Gb5Ua0?V/p=UhC8FME7WcYaIT=Ri,bR6AH\\(9XW=PRPFRXI^[@GMt7TM+9D1vS<p~Ts2@A~MeOQ1n}dB;:Lb~*@';A2cg~YMBBAOO~\\(M@3-ppD`_MP]N`LH~@pP>A~MO~[^}6_60Q:}8;ZnWvDjGM>2\\eUV-DfQB?~=F^(I~;+7-K[IE]@Z<:`p~1?~H)AG@@BSZCZI;\\O>8xTLVQkd[UHXYTGaFE7SR5n~IQFR~RM4M0AdU5D'JZYe~^RE/IUENMCT^F8JUU>cHMS[Bo\\JBG>A3MCkmt<03<XP?Nzi38VLDv9SbR~`xu~\\H%R~uL~[UW>j8jI|~]5~V~B5P~l9lSk~C6qvRqTp@OK2Ff])PP~mM~Z\\~PkcfJ]4@E~OxDH9fe}oEGUSpUJGC4/?EV]k^9Y~LHMGYR?=290INY~G~5KBw=M~PvOA-;?OAImx~15_}omJPQN?WWNAQZy1SKEUDAhRXZ<DMBaH9VOH:]UcGe`t=Y~ae~36@vHUCQW`\n\\ No newline at end of file\n"
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_02.fastq.gz
b
Binary file test-data/pacbio_02.fastq.gz has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_03.fastq
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/pacbio_03.fastq Mon Nov 08 09:03:00 2021 +0000
[
b"@@ -0,0 +1,324 @@\n+@S1_170\n+CCGGTATCAACGAGATAAAATTAACGACGCATACTCTTTGACAACATCATCTGCCACTTCTGCTCGCGGTTAAGTTCCGTGAGCGGAACGGCAGGAATACGCGGCGTCTTTCTTACACCGACTAATTTTTCCCGACTGTTATTGCGCAGGCGCGCGTAAATTTGCTCATCGATATCGACCACTTTAACCAGTCGCTGACACGGCATCCCCGCCCTTCCAGCTTATTAGGGATCATCTTAACTTCGCAGCTTATTTCTGTGACTTCCGACAGAATATAAGTCAGGGTATTAACCGCCTTGCTGTGTTCAATATCGAAATGAATAGAGATCTCTCTTGCTATCACCCACCGATTTTCAGCCATCATCCATTCGGCGATTAACAAGTAGAGTGGTTTTTCAACATATCCTTCACACATACGAACTCCAGTTTCACAAATTAAAAGTCTGGCTATGACTCGTTTTGAAGCAATTAAACAAGGCCATATTAAAACTTGTGGATATATCGATAGTATGCAACTTCACCGTCGATAAGTGTGAGCTAAATCCTGCTTATGTCATCAAAAATATCGATTCCCCAAAAAGATTTACTTAATGGGCAAAAAAAAACGGTCCTCATCAGAGAACCGTATTAGTTATTCGATCAAATTAGCGGATGAAAAATATCTGCCATGACACGCTATTATTTGATCTGTGCGTGCATTTACCTGCACCGAAATTACTTTTTCAGTCGCATCGGCATTCAGCGCCATCGCGGTGGCAAAGCCGCCGTTCCAGGGTGGTGTCGTAATGCACTTTATATTGCAGCGCACTGCGACGAATCACGCGGGAGTCTTCAATCGCACGACGGCCTGAGGTGGTGTTGATGATGTAGGTATATTCGCCATTCTTGATACGGTCCTGAATGTGCGGACGGCCTTCATGCACCTTGTTTACCAGACGCGGGTTGATACCTGCTTCGCCCAGCACAATCGCCGTGCCGTGGGTCGCATCCAGCTCGAAGCCCTGTTTCAGCAGTTTTGCCGCCAGGTCCACCACGCGTTCTTTATCGCCTTCGCGCACGTGAAAGTAGCGCACGACCGTGTTTCTTCATGGTGGAGTTGCTGCCCAGCTGCGCTTTGGCAAACGCTTCAGCGAAGGTGCGGCCCACGCCCATGACTTCCCCGGTAGAGCGCATTTCTGGCCCTAACAGCGGGTCAACGCCCGGGAATTTATTGAACGGCAGCACCACTTCTTTCACCCAGTAGTACGGCGGGATAACTTCTTTGGTTACGCCCTGCTCAGCCAGCGATTTGCCAGCCATCACGCGCGCCGCCACTTTTGCCAGCGGTACGCCGGTGGCTTTGGAGACGAACGGAACGGTACGCGCCGCACGCGGGTTAACTTCAATCAGGTAGACTTCGTTGTTTTTCACCGCAAACTGCACGTTCATCAGGCCGCGCACCTGCAATTCGAAGGCCAGTTTCTGCACCTGCTGGCGCATCACATCCTGAATTTCCTGACTTAAGGTGTAGGCTGGCAGAGAACATGCGGAGTCACCGGAGTGCACGCCCGCCTGCTCAATATGCTCCATGATGCCGCCAATCAGCACCATTTCGCCGTCGCAGATGGCATCCACGTCAACCTTCTACCGCGTCATCGAGGAAGTGGGTCCAGCAACACTGGCGCATCGTTAGACACGCTGACCGCCGTCTGGAAGTAGCGACGCAGGTCAGCTTCGTCATAGACGATTTCCATCGCCCGACCGCCGAGAACATAAGACGGACGTACCAACCAGCGGGTAGCCAATCTCTTTCCGCCTTCTCTACCGCATTTCAATAGCGGTAACGGTGGCGTTCGCCGGTTGTTTCAGTTTCAGACGCTCAACCGCATGCTGGAAGCGTTCACGGGTCTTCTGCACGGTCGATAGCATCCGGGCTGGTGCCGATAACCGGTACGCCAGCAGCTTCCAGCGCGCGCGCCAGTTTCAGCGGGGATCTGACCGGCCGTACTGGACGATAACGCACTTTCGGCTTCTCGATACGCACGATTTCCAGCACATCTTCCAGAGTTACCGGCTCGAAGTAGAGGC\n++S1_170\n+S]v~~VC4G}IkA]\\sUHJMVv9LLgU:H92YS~HRTHG~CMOQt>KOTjYzLfGwVYc\\QmG6h^H85Ld5xCWe>b'OEZJbNNI5;<fJ_qOSEUJJ/=P~>nN8WNW~;aKX~RM8]~QLTa_vH9,80Rf~8C5NNL:X>T)vk>,RvC^Nb<Hl-J~gZddfdVCC/:X~^YqSTWlNzD~JN0A@M~/:_kZALZP?gr>BReRlK7F18(MU2LRQIUJk;d4F<ER~>N~NC@F]GYOMZ~eMIG%OZ8GRy;t4N<eJXNUX]~G1ElA]Qb<Xjt:O(?0XHZLTj~\\>LEl;~~~CO|]*[UIPNQ`@MPTl=.:`_m~=;P29L)9~~lZGL1pYEFUem=Xa~d?[GtUQJYIm[PPF4=[ABCwTVOHMJ_~H@<dU1H8=.P/^`CdjNN4_a]E5~JRG9?LHI@~<UiHH09ggKUHVf<GSqIYgP~rX:E`BBL;q~A~06cTAIZn=k~M^.jARNm~G<ZWLlO.lM'VSe}huUIeKFBpHh8YD~TZpB)-jPfZ]Q)D.~i~Q~_~C]lHQ[,kIV@~UA*LOik>3TO8P/2d~PN~~/HO_81l`Di2RS@.7d~>HMFV@7I@XU@UXEhILs~y=O\\L2~?=K=IPH]mVR~S=SPP>lFE(?BX8bGDS~@a:JnZODP8lOJ-0~R~OVDPRCsI0@[F~{54.~NRA]I6>gn~a9~B`~ODCI[/F5I$_>4d;C09~L~~~hyMZULJE~KT17GJ~MJZY?MhOPZ?[W9Z;b9j4TAIBI\\F@cL<@nlud*K&Q6?~_3VVSNLYdKb/h=H0~R@>835{hQXGGT)fYGK?jqUFD4IkCNwA-mL<YBfNPLSq`TJJ~iGNKZjLa?C.Ky(MbMGKMsx~0MTf/~~\\Q'{~Z`J;[\\>8U~E5JJPTCKRFVl:Ij44Hh&-ONLY<nT(=P0CW<e>M~NPBFIXs>M~*M'AY<VR,>C?KF?c@^\\\\Y=~Y@FDkAbQC~QPV]9qM0;[>?u\\LVJo&EfYBn[i7LG77uGLF?Ee~N={]fV;:`+qcjAaJ~TP7~G@S]Zs~^I}?Tk|I=fB~i9KII=PFca<L7J&jfVNQ'8ME[5Lpv\\PLl~RAmcDWQM3YUe>7J[HKQi_?XvgBUFK<~\\JmNL>*W~J@eUG?(KGR~gNV]Ds-G->G`F{@dkAJkHGG~KC]mX~jMM<sbc}jh8<SNhe~Yb6?:MTluoSM@BDJ_=C?~~/ec~GAbq~KH1H@A~3:gHVaWX;HRLDQHG.;D89e$g~4TDEk~J~cbFA7[J>AmOc~ShjU~[IYOF`4G2~E=XgZ[0eIM~W-?8~dYRIE~c~LiLB<Py?KB*6~4v2BV\\EiQ*V>C~P@N?[,ZZ~wD:FSt;A\\cE~I`~~C)R>DBLRNI~P0G;[HE_~>uzvI@TO\\TL~E\\zV[Hs;aSIQyC~$TZ~OCS8Ig]uP&F?E.mYL?QF[iL~M^sM,C7RC[II@hDMiW[:IQfSN2vtuGjG3LQjLX5LFNjSE8`nNK&T[Q:sEbc~8F&|OQaX=mf@1XP5OB~\\\\Z&7>q^AX?=bB>JN_<8W_~qfDJuPZk~5@~~LgYK<pVZ9g4VB~Mu]8NP:t8YC[TI~@E6b\\P~SmVKI\\bXZ~B64`G@HMUX;=-h:3}|O<p1+N?Jz\\cEY-K`Pb\\p@DP8?C~H3TDTarHd4T|&&\\EZ__9~OjkMm4T2HA;LRM`EF7i:KM:K<=5W~@U:d;UXAxLVqUdKcQMjY(~3N9?HFE~~BE70MLK]2TF~=j5~HCPaDOROGbq[fUH3w?nHY%4LT9Ib~>L3>~RP=5_RTV~I>F>6R0>|cDHH:NllZ)~U\\=7tDSLU<I^6L{~~[9wM:~RDMJ:n9eMl~D_&quFcC.qL~gKHY/Sg-7iOA\\3I?R~~mJ~LD~?E*6a]W=4)~XR\\NH>Le&R'ROY8yED"..b"fwC~Wl\\mL/oNmRII*BaE'Z-Pp=cb)A~ho~fOf?GA~?Llbi@dg]jiIpF~cj`eeKVYH9;vHPnGMD>~l;MIpC>BqB@Hg\\;V8OC?X;8^J~fo$^Qlq~@`~;^p9~A~Z8CPWS_~MT^oSQ^SA~98~HUZAEB6&@0ZG2y]GY]g@LZP[84~6?ddD6MRK^X;ZKR-?M`Sk<IeVdE+z8[)FNQGD~VML~V79<pGHF{>P*&ngEsLLS=Ob]T3K>An=p\\.bSI8y,FK0FCTIt,RM?b@XG+2RC~MoGPW}WaRYh~K;~)Bsbg2]T*G~/K>F3I|KVR3AEWV9F/'/dCYSf^BIaG-Pb~TS2O^[/fX4:B~N-ZBiY|7MH6S8LFH~D~@HL~b?NKDGJ~R<Wh%C_jN7~/~6IEaI~~NKYAH9IYNPFb\\~TJ~.ALqx?i^EpN]nNx(:pH%Ba?d5~>cSV`FT=>?J,~^WK:NW0?NXUOyGKJ;JV~[~[(RT?a]~K:EmDf>3`\\^FxGJFbTM6@n1XqF@gf~O@6hf8G&|4KX:F^SYNnkE5\\5`DK\\7~XF<M;\\E@]@E8UM<E`kQU[lK6~<J5TAa@TYKNH_Ke~`XT~hyZHL%1(Ku[EDOxRAno{C0%`NeL~L,pAYBWi~KR9EAMFM4uKYNGZQGJ(ooZDVRC~Q{QA06I51SL@H/Z,A_\\dgkP[K>\\aM~N^W*~JkGOWXYn)]Q/~~NMf-\\NMwz@4w\\QALOXCT:W~gO~@`_=`~HB~3aK\\IHeDfFR~R{Bm2VfU6bjS?`E;8T8~1CWMY:N==_;_Y9UL`7.SUU9i2<~y`jkQ7M]OVv[PXkB)\\TML\\@&Djnmv+kgcIH,OSM'vGJK$B\\)Z~>7JLk^B\\Dt_lK@@e~`HLNBfuJPp6BRiMI@w@ZtY~O6h~G1LFQQO^PDW}Q?`fbT~ohVhOOM=%D&XXd5[-V=bm>6cMEQ~fh~ZXTOm4[.f~bMFRB`EVY4MT=@.@N+.E%LZDXA6F'y,c4502lH[O<o44i9EErHGUQ_x<~'@~XBOLHCP~H|LQdAWV6ZX~a~EDL?ML~];T\\H,cYB]*=pC\\kzE~T~X2Z~G9<jCjBLK~i<M>;<?Gb?cVm5RLc{P<pT+bKEUJN`H,Xj@g^<sOIYhAa5JA'XKU@M4HO[d~;q)fK~Vp9O4A;x>X%VV_~b0}~:)LRP;]I<@Qnk9]0?~~8sTm?|D>[GkX@nhcI~?OrLa`%uM179^~+DQA~k;X|%C:TiX~gT<[*~;`kVPZMAX?B<=?_GmH2n@X[tF?M@z>t2Z^J>JULbg]Y~X6GON94^OcFR%PdWLZK88REA:N^~|I~SO*3\\qsKIINYI^;`<j<DZ^GXTjHRaa@F~~8[m'i~IEVO-b~~E9@~TTX<J(LsOI?NH0;?2]<=*OJcCH]E@Y-gAZ]HJpBWB>6WA~S.\\M~L~G~~^H&~+.O~^|HnPGNcRE8Q+KTLUAUDUQB.v~&~,?|am'FHHRoWT]<V9Mc`KHa+z_2Q^e<a_h@TiTZykRRKBKa8VQT/WGeB4Tfh6~Tkeh:F7iA~HPIHZpN(831b:T,@;j1BQGiFw~Z*gX~=;5CR[bSgSWD]~FZ5rL49hzM^umM\\?LV6AtY~H@MYUaHPfbG[?:ha1$>[SY6PhLV2/C^KP>fiZv2NYJ<VS]HGKS`^~T@a*mR2lC?3>*xrX~4E7~{J[%MkS?S?fg~QIBF@QREMD~1~W:~`8U:QUFHsSZ74N5WTG~QV@keAOny9^qUSNN6ehN[6;eyGVBY~~=E=ai<AJ379Z]\\p=fZ^'2jso`~N(V<[g>rS+bQKSXSAH~kCP@'ADSl;,gHb:QL~_/Abic{I:NH@=>P]KA~LQfVSF~/N@O;~R7L5vHObST%be@>~>pI_Z^*^\\e>Y(3WS=eIg;VTM=D@\\Q:X`*b>\\O~9{MGSN9{bF];:UbL0Z\n+@S1_250\n+ATTTATCGACCAGTTTCGGAATACCATCCTGACGGCGGCGAGCATGACCAATGGGGTACTCCACCACCACTTCTTCAAATCGTGTGCCGTCGGTGAACTCAAGGGTAATGGCATTGGCGATGGCGCGTTTTTCCGGGTCGTGGTAGTCAGCGGTAAATGCCGGATCTTCAAAGCAATTGATCTTCTCGCGCAGGGCGTCAATGCGTTTATCTTGCGCAACGTTGTCCTCGTAATCTGCCGCCTTAAGCGCCCGAATAGCAGCGGGATCGCCACCATGTACTGAATGCAGTGATCGCGGTCTGCCGGGTTATTGGAGCGGCCCCTTTTTTGTCGATGATGCGAATACAGGCTTCGTGGGTGCGAATGGTCACTTTTTCGATATCCGCCGCCGTTTTGCCTGCTGCCTGCATCTGTTCATAGAGCGTCATCGCTGCTTCAACTGCCGTCTGGGAGTGGAACTCCGCCGGGAAGGAGATTTTGAACAGCACATTTTCCATAACGTAGGAACCGTACGGGCGCTGGAAGCGGAACGATTCACCTTTAAAGGAGACGTCGTAGAAGCCCCACACCGGCGCAGTCAGGGCTGGACGGGTAACCCATTTCGCCCGTTTTCGCCATCAGTGCCAGACGTACCGCGCGGGAAGTGGCATCGCCCGCCGCCCAGGATTTACGCGTGCCGGTGTTCGGCGCATGGCGATAGGTGCGCAGCGACTGACCGTCCACCCACGCCAGCGAAACGGCGTTGAGAATTTCCTCGCGGGTCAGGCCGAGCATTTCGGCCGACCACGGCGGTGGAAGCCACTTTCACTAACAGAACGTGGTCGAGGCCGACGCGGTTAAAGGAGTTTTCCAGCGCGATGCAGCCCTGAATTTCATGGGCTTTGATCATTGCGGTCAGCACCTGTTTCATGGTCAACGGGCGCTTTGCCGCTGGCGACCGCGTTGCGCGAAAGCCAGTCCGCCGTTGCCAGAATGCCGCCAAGGTTGTCGGAAGGATGGCCCCACTCCGCCGCCAGCCAG\n++S1_250\n+odkG<aOUlUKK:f;QfPR<GMl7WY~_k?H]^~eVJD?~wHIcsRDJeST;,K~H5~j~{>HGl<~AMx@5BFoqVtCJMTS?)CUjBKcuGpA>.~<@n7-lLWL2P^>~Eb>0/Ps,YIX'Aw~DShA:~C]6{;tLu4:~TG~GTpIA~,~@YwA~^O5HOg>K~4TTv^PNd@RH5XV2[T*0>B^XNh_~G~8._\\XXKrk>6IC}-V]L{_?8^~N?M?zhq-oV_?~q6Qe?X4mI\\SRFEN=a9Z[UVU:OH'ih~P\\0c?~9DkQ^9g2;*A};XFNB~WN+HDSERB5FNf=PXLAOB,Z&&E<XXYWD'7FH9vJ[s@`4-YE[6Cy5ET6-sB[QXFkHLtNDOt~I8L>q6AS>Q=DSb8UH7DzbGMoOGFeT~O\\d~wZb:~\\J:^~XkS*~UYL~8+L>4Ae-`ORK8?x~tUIa.GJVY:CAfL=XNXTSs5FGErc:h[:K'B=cVEICMZA~8LXF4~w[,~bFjBOHZGe[V~<~+S~N~>NeXj8Lc`nP\\WTAVeWC;K[c9o_;:JH5WSvBJ+LuOD9{Y^<~PeC[~~=dRXY\\1,e[UKZ^;7VY:NTP>aP^BP8~>,]bZI=M9\\:_8Q=CHfZA%AN>^&Y]AdXLh3~?<7ZEhQb~3~~<NVKNTx[+W0`qS6.6<~E36~IXArD/jA@ETHO<~y>W~Z?QcBW~AZa3I:^X`+\\TCXVT)7b(`\\G^HD~:DFiR'TF8L0b>4=O4k7IT~sE\\TI9Z\\kQ~<4AwIE+jHPa<]A~B4Hl`Bq<SBE~[pOZ.DXY[~JA/~^?G[~FcDxACdKS/LQ_E`84/Oa_Ls]?QKLV84~VImpIXC~JMOodA~q)NGaYA=UcVaIMk0e@zZGBZFJ9iBXe~Qg=rDSk>;Fg{L~NOdL9<e8S8QKZP3=?F&J~)\\b?n6`OBM~cAKW:?aL1%p_@Z~L~YT}IC\\V9PGGehFDeM}YJI6MJ[~WHTgG@ICVZ\\~Q@+U`S~,47Z`Q3S%=B~RGOH\\MN]eoJ`7Gc]hGXSKNAu'.<(@LYedt;?\n\\ No newline at end of file\n"
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_03.fastq.gz
b
Binary file test-data/pacbio_03.fastq.gz has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_04.fastq
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/pacbio_04.fastq Mon Nov 08 09:03:00 2021 +0000
[
b"@@ -0,0 +1,328 @@\n+@S1_252\n+CGGAAGAGATTACCCGTTTGTGCCACGCGCCGGGCAACGTTGACTACTCCCGCTACATTGGTGGTATTTATTCCAGCGAATGGTTCTGGGCAAAAATCCTGCATGTGACTCGCCAGGACAGCGCCGTGGCGCAATCTGCCGCATCGTGGATTGAGCTGTGCGACTGGGTGCCAGCTCTGCTTTCCGGTACCACCCGCCCGCAGGATATTCGTCGCGGACGTTGCAGCGCCGGGCATAAATCTCTGTGGCACGAAAGTGGGGCGGCCTGCCGCCAGCCAGTTTCTTTGATGAGCTGGACCCGATCCTCAATCGCCATTTGCCTTCCCCGCTGTTCACTGACACTTGGACTGCCGATATTCCGGTGGGCACCTTATGCCCGGAATGGGCGCAGCGTCTCGGCCTGCCTGAAAGCGTGGTGATTTCCGGCGGCGCGTTTGACTGCCATATGGGGCGCAGTTGGCGCAGGCGCACAGCCTAACGCACTGGTAAAAGTTATCGGTACTTCCACCTGCGACATTCTGATTGACCGACAAACAGAGCGTTGGCGACGCGGGCAGTTAAAGGTATTTGCGGTCAGGTTGATGGCAGCGTGGTGCCTGGATTTATCGGTCTGGAAGCAGGCCAATCGGCGTTTGGTGATATCTACGCCTGGTTTGGTCGCGTACTCAGCTGGCCGCTGGAACAGCTTGCCGCCCAGCATCCGGAACTGAAAACGCAAATCAACGCCAGCCAGAAACAACTGCTTCCGGCGCTGACCGAAGCATGGGCCAAAAATCCGTCTCTGGATCACCTGCCGGTGGTGCTCGACTGGTTTAACGGCCGCCGCACACCGAACGCTAACCAACGCCTGAAAGGGGTGATTACCGATCTTAACCTCGCTACCGACGCTCCGCTGCTGTTCGGCGGTTTGATTGCTGCCACCGCCTTTGGCGCACGCGCAATCATGGAGTGCTTTACCGATCAGGGGATCGCCGTTAATAACGTGATGGCACTGGGCGGCATCGCGCGGAAAAACCAGGTCATTATGCAGGCCTGCTGCGACGTGCTGAATCGCCCGCTGCAAATTGTTGCCTCTGACCAGTGTCTGTGCGCTCGGTGCGGCGATTTTTGCTGCCGTCGCCGCGAAAGTGCACGCAGACATCCCATCAGCTCAGCAAAAATGGCCCAGTGCGGTAGAGAAAACCCTGCAACCGTGCAGCGAGCAGGCACAACGCTTTGAACAGCTTTTATCGCCGCTATCAGCAATGGGCGATGAGCGCCGAACAACACTATCTTCCAACTTCCGCCCCGGCACAGGGCTGCCCAGGCCGTTGCGACTCTATAAGGACACGATAATGACGATTTTTGATAATTATGAAGTGTGGTTTGTCATTGGCAGCCAGCATCTGTATGGCCCGGAAACCCTGCGTCAGGTCACCCAACATGCCGAGCACGTCGTTAATGCGCTGAATACGGAAGCGAAACTGCCCTGCAAACTGGTGTTGAAACCGCTGGGCACCACGCCGGATGAAATCACCGCTATTTGCCGCGACGCCGAATTACGACGAATCGTTGCGCTGGTCTGGTGGTGTGGCTGCACACCTTCTCCCCGGCCAAAATGTGGATCAACGGCCTGACCATGCTCAACAAACCGTTGCTGCAATTCCACACCCAGTTCAACGCGGCGCTGCCGTGGGACAGTATCGATATGGACTTATGAACCTGAACCAGACTGCACATGGCGGTCGCGAGTTCGGCTTCATTGGCGCGCGTATGCGTCAGCAACATGCCGTGGTTACCGGTCACTGGCAGGATAAACAAGCCCATGAGCGTATCGGCTCCTGGATGCGTCAGGCGGTCTCTAAACAGGATACCCGTCATCTGAAAGTCTGCCGATTTGGCGATAACATGCGTGAAGTGGCGGTCACCGATGGCGATAAAGTTGCCGCACAGATCAAGTTCGGTTTCTCCGTCCAATACCTGGGCGGTTGGCGATCTGGTGCAGGTGGTGAACTCCATCAGCGACGGCGATGTTAACGCGCTGGTCGATGAGTACGAAAGCTGCTACACCATGACGCCTGC\n++S1_252\n+F~CVYFCW*VaF5iO>K>Cs_?Rgc8IIsHL?EMS\\dSFQ<fTCW5NeDNZ`\\~R>dZTZ0aV4~vdKMj[HXCH~4SO6-xlMS8YGP~aTKHI4~<P<_}R5>Wg&=E6@~Z\\Pf3rFaWWy^)~LyPVHLsMGPBH]E=~ApHcI;HLX_1R<eRV]e~e~kAEH@J3REaP=k)T'I)Hlf|*UNG,BEi?:eBP-IED]2RV{S}X[Y_Q=YRdlzQj~4c5U.FG:XIT^~>GOl^=P<]\\i~>ZWMOSBCZo/&~|HFOgBKtNCFIPOi?Fh9^LE~`T~J;%96}PL:/\\T~woCCHd7E7YLRhaOS/M\\?=SE6eaBl<keeK24fm}7[DBA8`a[e~6^8Z/@MQ?EKb6@=<-]`ZRL~hJ6C;O45VQ?CT<Nj6dBqV>eOA@BXc\\WE6^E~~8eDY_DA{c3`C0FvB9J@4ZsT4PVw~~U|2J?^o@[O)NADBT>QLFNQ%HjfULKSI,><::W)I,PJPbKc3G,P[PcJvV~O1Ge<I^GBo\\C~_P4ACP`HodVB+IZX$U:cZY~dI,.A_E~Mk+LmRy~8JR7L~d5Y6~;OG8C_pF\\EHXd?Z~e~n^dC%vLYJA.@?>_S/+'|H]A_3`Za\\MJC|>BXhKD@ZGMVS>tV~wAEFOcK~MuIX+YS~X>b3@~NT<4o6\\=0UL5YYpeVF[&~KIBHa=:k9n,La8EThOW9YLOEED~X]ZG91EPh@IHH~JgLAk)dFH}^iK/:L~P;ITDLxQ~mX3~EOabMEcAY;<H~F:ldnHYAZ[JD?I;T=6y[SI;stJB.EG`HOE:HJQF3?_I:kR_-HHL~NERHLf9NrUl6{]=EAPJM~dVg02SK:^3W/W%?:m\\aMQoHA0K?TiIRF&3IeHQ~6VD:~DHiq1TFE<KD@mPPJ|dMXTSL~561KJ?5KD~D3@XJJe\\GH~oOTH~~~PI~V?~aW|m1?OH(L_KmAk|WPO7hr2blDsOW7>I`7~g0Nwd~G>OVbK@C~G5Q9T6LNU4Te>FW<oJHN>(k8PMVYJwEN^kG,~eOBU5ce:8[^A/?M1cDD~~~HR~S~j{*OKQa+FAQ>H@~W~og0G8GEb+J,)~+lUb1-*QdHe.S<B?gBgG-<=IN~KU\\LT_'x?3~AVLFJNVDNkjMH=OQHV`-`G`=Y>|SK]?IFI]Mq0O3vFQ~@`QEGCG7Gh*)_YDqHQBK{\\VP`7TH;8GIqVK~tedAFg~2>D~SQ?'MWW[IMCNW8R`^;=Z0\\M+,%*6>-ccT]OaFmLLE^|ZnM9DWF~J`<;c<vU4~5TPffB:Y]T\\;@H`KP.cS*wDy0ff~7tV?=8($6qYR=H]JM<j~?FB~@SoD4Z~>CT9NKpNQ`nf~~P1J[W6W~GT=XL>LkuX7NOEV5Oqk4ZO,yC;EwB~nFPb\\[[:ATP5d,JJ8zC[$[w`U=xy4sSZ~g;YOmgN;/S~f~2~VGFFa@4G:]~~ERWBHO{U2L3@OXvDG~~Z0&'h~g<7@q2RKJQfW<8]F>YjSSmWBPEEA.l?T`0QVk50AGTVP\\EnW~J=B~R@PoRbW8]>ob`>FR~TxS=:~@'F~KA=KeKYI\\:'Rn~JGJFZZE~TUr_E7MXastZ+Jh[eARPd8M|MTBnBDRSuL(~BNS`4=J7E@P6N1G~=gzH6t~H=P~fZ~^Y9DJ?>hFPcSF~W[~Q?sWFOT\\[5GNbD?KK@RH;H\\[o~`kFKhpYKO~}fJFvaQIbNPz]2CU;]C)\\`T-=8WRBkBxXZ@B:cHWAuQ[[RCSBCDZ-s]~&1OBxN<Cp9R)W{XrQxC~LDOKTP7FJR~8VO7A\\)@SpdTOK~6ZTIV`[i=~G(EMSEUvPLn?L5O.r5R)bX[1a)gLl]9=_<YD>~>LK0IU;sXa\\xO=RwAE|1NbcFZPPFQL.Ls=OBOH;9mTa1bE~'GteRHCr0P77/R;OL1]KRgDJ"..b"YwQ6.~pPB6Do~\\NZSGfZ~=@Q~HN~N5O:$/Bb`9&(ADU|^eE';8[mE~I~*UWPJ8Z9<XvXdyY`?~IYc]Y~R3dT^vQ`?qBW&XNxDIRfD~R@xYsJHB/}GRO2MaQIWf`G<@BMWQCX=RUg???ENB~Ri<G%Ys7DJTHDiXb=vbR4.;WBHSDTjAmH:>6ff~g~Q=@GR]BLNgBQ[UPd;QH~O?5X9{;Yn~U6<QM^BLuM~q^ZN@MXNRH~N=FG6O(ZNFdHo~58:]U9TEQdB^LaBPMN]eiQDR>Os]qaJ~rSJ=K~?~cNI~~IM9n;~JJ~~WMm1GVN->bLJ=:FnXjADPXaH?X,W0~UI<M<P2HC~:L7/DMyZ's~PQLV`fXITX\\\\i;U2~~2~\n+@S1_333\n+AGCACAATCCCCGGCATGGCCGAGGATCAACATGCCGCTCATCTCCACGCACCTTGACCCGCCAGCATTTTCTGCCGCGCCCGCAGTTCGCGACTGCTCCATATGCAGCATCAATGGTCAGCACTACGCACAATACACCTGCCGCCAGCGCAATACGCAACGAGGTCCACAGCGCCTGCCACAGCACCGGTTGTGCCAGCACTTCCGGCAACTGGCGATTTACCCCATCGACGATCACCGCCAGTAACGGTGGCAGCAACAGCAGCAGCGCCAGCACAATTAACACCGTGTCGCAAATGCGGCTATGCAGACGATCGTCCGGGTCGCGCCAGCCTTGCAGCAGCGTGGTGCCGGGCGCAATGGCCTTACTCAATCGCTGACTCAACAGCACCAGCCCGAGGCAGCACACCATCTGGAGCAGCGCCAGCATTGCCGCGCGGGCAGGATCGTAGTCGTAACTCAGCGCCTGAAGATTGCCAGCTCGATAGTGGTCGCCTGCGGGACCGCCCCCCAGCGATAGCACGGTGGCGAAGCTGGCGAAACAGAGCATAAAGATAAGCGCAGCAACCGGCGGGATTTGTCGCCGTAACCACGGCCATTCGACGAAGCGGAAAAAATGCCAGGCTACGCATCCCAAGCTGGGCGGCAAGTTGACGCTGTTCGCGGGGATGTTTTCCAGTGCCTGGAGTAATAAGCGGCTCGCCATCGGCAGATTAAAAACACATGGGCCAGCAAAATACCTTGCAGGCCGTAGGGCGAAAGAGGTCCACTCCAGACCGAGCGATTGGCAGAGTGTTGCTAGCCAGCCCTGGCGACCATAGACGCTAAGAATGCCGAAAACAGCGACCAACACCGGGAGGATCAAGGTCATTGCACACAGACGCAACAGCGCCAGCCGACCCGGAAAGCGCCTGCGATAGAAGCGCGCGGGCGAGGAATATCGCGGGTATGACAGAGAGCAGTGCCGAGAGAAACGCCTGCCAGAAGGAGAAGCGCACCACATGCCACAGATAGCTGTCCTGCCAGACTGCCACCCAGGTCATCCTGCGGCGCGTTCCACCACAGGGCGAGAAGACGCCGCCAGCGCAACCGCTACACCAGCGTGGTGGCGCTTACACCTGGAATTAACCAGCCGCGGAATTAACGGCTGACGGCGCGTTGCCATTCGCTAATCCATGCCTGACGTTGTGCCGCCACTTCGGCTGGCGTGAACTCCAACGTGGTTGCGGGTTTGGTCAATTTTTCAAACCGGCAGGCAGCGTGACGTTTGCCACCGGATACATCCAGTTGCCGGTTGGGATCGCATTCTGGAAAGGCGGAGAAACCATAAACTGGAGGAATTTTTGCGCCAGCTCCGGCTGCTTGCTGGCAGCGGTGCGGGCGGCGACTTCCACTTGCAGATAGTGACCTTCGCTGAAGTTCGCGGCGGCGTAGTTATCTTTCTTCTCTTCGAGAATTGTGATAAGCCGGAGAGGTGGTGTAACTCAGTACCAGATCGCTTTCACCTTTTAAAAACAGGCCGTAGGCTTCGCTCCAGCCTTTGGTGACCGTGACCGTTTTCTTCGCCAGTTTCTGCCAGGCCTTGTGGGGCGTCATCGCCATAGACTTTTTGCATCCATAGCAACAGACCCAGCCCCGGTGTACTGGTGCGCGGATCCTGATAAATCACCCGCCAGTTTTGATCGCTCTCAACCAGTTCTTTCAGGCTTTGGTGGCGGGTTTTTCAGTTTGTTCTTGTCATAAACGAAGGCGAAGTAGCCATAATCAAACGGTACGAAAGTGTCAT\n++S1_333\n+?O_~1KVP]UEGy;~H>731`H?Dmkmc;d95&pf2*KU_+X5~fb-'V7eGN&H1S~R^M[iMCWADclafNmM(GO`~FQ*jQ7V71<SPTI\\o`~uPgX/)@PaC`O~4-\\~DhBJVK~m)4RURP?e/TldQ4Qij.O~e?S5aj@G~~?&(bFS'RH0o~lI*6?np_dZY4NK|KOyG]WH>~Y~A`~6ZSOJZL~AwO~ST8~PSN9~|c+lMJcK:OBR0N[L~Z\\S=G9c>j'b.:J[X;QjSEBKPA\\D_I`Z1;~~@5`KXNy\\GEH~>WRbYi}=eWNQ&~~d6ua0~?NX\\I0/L;aXdEJLnFWY[i=[b8>U)~Y^v95UApX[,JFhLM~DPE~>::VX~g@_NVMIMC\\^:29=N=^~HK~v`|iVeLBd~?Q<R]C)~~M:0U0BOOxqXncIOE^DN\\f<zFGM.G>a1YWk~J5Mw^GBDlXQs4hHdWR\\ZWs^~4Nb`jUL@Ky9:~J<Qb\\KnAPXq32CK~%8b>v@.OZCXD:f%B\\R`8\\FH~[~+bA<L~D~<><~KS~2rfUs2D:Q9SoPPROB.`K?K_qFY0C3W~p@`M8QN~3WSY:f~G2\\hOWA~PTFSTJ|P%:~MC@Z~EDR\\;HW@;0cI[+G>F[OWhJohSm(S5[R8]hRT=vR1~ELX2PSI>1`_NVC/M(FC\\qJ8\\ZLVS\\ZP+7t5WM?RQ~''TDcaD6a^\\;SJR__7LJXMAQCr$?:Qx;BN<.~Np]}SU?\\:~KBIRySf;TJ<fRK]KJyULUf,E^EWY`cVua]LI&~STHL6~TQG~;[:aO=d~@8U~w?nIXEcY&F~HO1+5E63=e@YD8;@GDjF>bxDJ?42@9,FXgGMl=R-~OK~WT?\\rc`fBY6ZU=Mi/?pKa~rU8:G6Xc5~4-J~Q:befUMJOY~Rrh~Xbl~v~.^GQQ0WDMUjV4WKZgQ<=OL3-JKP~IK\\Lpb~JhV]C~BV(V,J9DEFdbJRvl2U~?D84d6?VK~VH{?5Q~PZBR^cE9E?\\IhHVkOJGUW~aCDk>@~L><8>^k\\a\\_\\79@NMe~r9E@h3P6{^GT=BM+=zTsZ%W47NEUY7EB~WOeK)v1MAXH@j7K`\\,9]Y@RmBpPI=O3Q~p~%c-=_IC~@I8~h;jAQ2eIFYWLSkQ7i84Ruk_W@)FM8L;~V%>pd~~lHF)~<Bc%ITR&K&XI`[mqo_R>M`2~L0iiISNSj~C~SR~]CE6+^~WUK<erznm4XIy+~7EP6U<Iql6;;>=UrQ>D]~wFSaK?;0~kt~2]EA6>5~G~9BT)Qc-@N~DdJL~SOZ9IZ>i~L~=BnR@]QgL2EN*f:ETSaDn~~~4XyzX3SjG96TmH7*;K@<~H?QY\\RPIQ@NvnIR~Z5Ch}TI'\\J;kX1e_~.J\\UWglTDMLJ^64R7w=\\D>7K3[e:NQn@YRRD48UHT.OEoTo~?0J@~@Y0|<{7]dGH1zH:-~AW_aYUGATCD\\?~~U0oc[~N=0SA~~8_{H3H8M~=]CM_~[_X'O@d{~C7~lH[P>9KT?f]ZOV6cekN>D8?PG'LCCR~mX[GmhPL`,o:QNA+Cg?N62]WKLeL^GKD~kYSHs&8|TB<d@z2.9Cp?\\?G:)PTH~s4PBYspH(e[$[N@UB%_QqZ~6+67RJ>?*(LCIF;b1ZM13Y*Z|*9MVP:LRAShZN`[O>\\tQSHE~R5-?8K9oSE>4MXGK~uhJX@Wl~Q5?WJw=P~7GH~~YC9MMdRVKLKl5Z>~EL-A3<;~[55-=c~S0j-@VTlb`CFjZQO~~Q~e]7N7>Dp83k[mZL4)`YdOY8FEIi+64~vP5IW*[O:O1RGM~L=M5\\~\n\\ No newline at end of file\n"
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/pacbio_04.fastq.gz
b
Binary file test-data/pacbio_04.fastq.gz has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test1.tabular
--- a/test-data/test1.tabular Mon Feb 03 17:37:36 2020 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,50 +0,0 @@
-Assembly contig1 contigs2_fna
-# contigs (>= 0 bp) 3 1
-# contigs (>= 1000 bp) 3 1
-Total length (>= 0 bp) 6710 6650
-Total length (>= 1000 bp) 6710 6650
-# contigs 3 1
-Largest contig 3980 6650
-Total length 6710 6650
-Reference length 6650 6650
-GC (%) 51.28 52.00
-Reference GC (%) 52.00 52.00
-N50 3980 6650
-NG50 3980 6650
-N75 1610 6650
-NG75 1610 6650
-L50 1 1
-LG50 1 1
-L75 2 1
-LG75 2 1
-# misassemblies 0 0
-# misassembled contigs 0 0
-Misassembled contigs length 0 0
-# local misassemblies 0 0
-# scaffold gap ext. mis. 0 0
-# scaffold gap loc. mis. 0 0
-# possible TEs 0 0
-# unaligned mis. contigs 0 0
-# unaligned contigs 0 + 1 part 0 + 0 part
-Unaligned length 1950 0
-Genome fraction (%) 71.579 100.000
-Duplication ratio 1.000 1.000
-# N's per 100 kbp 0.00 0.00
-# mismatches per 100 kbp 0.00 0.00
-# indels per 100 kbp 0.00 0.00
-# genomic features 7 + 7 part 13 + 1 part
-# predicted rRNA genes 0 + 0 part 0 + 0 part
-Largest alignment 2030 6650
-Total aligned length 4760 6650
-NA50 1610 6650
-NGA50 1610 6650
-NA75 - 6650
-NGA75 - 6650
-LA50 2 1
-LGA50 2 1
-LA75 - 1
-LGA75 - 1
-K-mer-based compl. (%) 68.09 100.00
-K-mer-based cor. length (%) 100.00 100.00
-K-mer-based mis. length (%) 0.00 0.00
-# k-mer-based misjoins 0 0
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test1_circos.png
b
Binary file test-data/test1_circos.png has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test1_kmers.tabular
--- a/test-data/test1_kmers.tabular Mon Feb 03 17:37:36 2020 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,10 +0,0 @@
-All statistics are based on contigs of size >= 500 bp, unless otherwise noted (e.g., "# contigs (>= 0 bp)" and "Total length (>= 0 bp)" include all contigs).
-
-Assembly                              contig1  contigs2_fna
-K-mer-based compl. (%)                68.09    100.00      
-K-mer-based cor. length (%)           100.00   100.00      
-K-mer-based mis. length (%)           0.00     0.00        
-K-mer-based undef. length (%)         0.00     0.00        
-# k-mer-based misjoins                0        0           
-    # k-mer-based translocations      0        0           
-    # k-mer-based 100kbp relocations  0        0           
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test1_mis_ass.tabular
--- a/test-data/test1_mis_ass.tabular Mon Feb 03 17:37:36 2020 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,25 +0,0 @@
-All statistics are based on contigs of size >= 500 bp, unless otherwise noted (e.g., "# contigs (>= 0 bp)" and "Total length (>= 0 bp)" include all contigs).
-
-Assembly                                        contig1  contigs2_fna
-# misassemblies                                 0        0           
-  # contig misassemblies                        0        0           
-    # c. relocations                            0        0           
-    # c. translocations                         0        0           
-    # c. inversions                             0        0           
-  # scaffold misassemblies                      0        0           
-    # s. relocations                            0        0           
-    # s. translocations                         0        0           
-    # s. inversions                             0        0           
-# misassembled contigs                          0        0           
-Misassembled contigs length                     0        0           
-# local misassemblies                           0        0           
-# scaffold gap ext. mis.                        0        0           
-# scaffold gap loc. mis.                        0        0           
-# misassemblies caused by fragmented reference  0        0           
-# possible TEs                                  0        0           
-# unaligned mis. contigs                        0        0           
-# mismatches                                    0        0           
-# indels                                        0        0           
-    # indels (<= 5 bp)                          0        0           
-    # indels (> 5 bp)                           0        0           
-Indels length                                   0        0           
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test1_report.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test1_report.html Mon Nov 08 09:03:00 2021 +0000
b
b'@@ -0,0 +1,4829 @@\n+<!DOCTYPE html>\n+<html lang="en">\n+<head>\n+    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >\n+\n+    <style rel="stylesheet">\n+/*!\n+ * Bootstrap v2.0.4\n+ *\n+ * Copyright 2012 Twitter, Inc\n+ * Licensed under the Apache License v2.0\n+ * http://www.apache.org/licenses/LICENSE-2.0\n+ *\n+ * Designed and built with all the love in the world @twitter by @mdo and @fat.\n+ */\n+.clearfix{*zoom:1;}.clearfix:before,.clearfix:after{display:table;content:"";}\n+.clearfix:after{clear:both;}\n+.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0;}\n+.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}\n+.tooltip{position:absolute;z-index:1020;display:block;visibility:visible;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);}.tooltip.in{opacity:0.8;filter:alpha(opacity=80);}\n+.tooltip.top{margin-top:-2px;}\n+.tooltip.right{margin-left:2px;}\n+.tooltip.bottom{margin-top:2px;}\n+.tooltip.left{margin-left:-2px;}\n+.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000000;}\n+.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000000;}\n+.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000000;}\n+.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000000;}\n+.tooltip-inner{max-width:200px;padding:3px 8px;color:#ffffff;text-align:center;text-decoration:none;background-color:#000000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}\n+.tooltip-arrow{position:absolute;width:0;height:0;}\n+\n+</style>\n+\n+    <style rel="stylesheet">\n+/* Main things */\n+html, body, div, span, h1, h3, h4, h5, h6, blockquote, pre,\n+em, sub, sup, dl, dt, dd, ol, ul, li,\n+fieldset, form, label,\n+table, caption, tbody, tfoot, thead,\n+article, aside, canvas, details, figure, figcaption, footer, header, hgroup,\n+menu, nav, output, section, time {\n+    margin: 0;\n+    padding: 0;\n+    border: 0;\n+    font-size: 100%;\n+    font: inherit;\n+    vertical-align: baseline;\n+}\n+body {\n+    margin: 0;\n+    font-family: Lucida Grande, Verdana, Arial, sans-serif;\n+    font-size: 12px;\n+    color: black;\n+    padding-bottom: 30px;\n+}\n+a {\n+    text-decoration: none;\n+    /*color: #0c4f72;*/\n+    color: #0077B5;\n+    border-bottom: 1px solid #487b95;\n+    border-color: #487b95; /* #487b95 */\n+    border-color: rgba(12, 79, 114, 0.2); /* #0c4f72; */ /* #a0d2eb; */ /*rgba(0, 88, cc, 0.3);*/\n+}\n+a:visited {\n+    text-decoration: none;\n+    color: #8C66B2;\n+    border-bottom: 1px solid #8c66b2;\n+    border-color: #8c66b2;\n+    border-color: rgba(102, 51, 153, 0.2);\n+}\n+a:hover {\n+    text-decoration: none;\n+    color: #b33; /* #0088cc; */\n+    border-bottom: 1px solid #ffcccc;\n+    border-color: #ffcccc;\n+    border-color: rgba(255, 0, 0, 0.2); /* #55b2e0; */ /*#005580;*/\n+}\n+a.dark_bg_link {\n+    color: white; /* #0088cc; */\n+    border-bottom: 1px solid #cccccc;\n+    border-color: #cccccc;\n+}\n+a.dark_bg_link:hover {\n+    color: white; /* #0088cc; */\n+    border-bottom: 1px solid white;\n+}\n+\n+.leading_link_dot {\n+    border-bottom: white solid 1px;\n+}\n+\n+a.header_link, a.header_link:hover, a.header_link:visited {\n+    color: black;\n+    border-bottom: 1px solid #bbb;\n+}\n+\n+\n+.dotted-link {\n+    cursor: pointer;\n+    text-decoration: none;\n+    /*color: #0c4f72;*/\n+    color: #0077B5;\n+    border-bottom: 1px dashed #487b95;\n+    border-color: #487b95; /* #487b95 */\n+    border-color: rgba(12, 79, 114, 0.2);\n+}\n+.dotted-link:hover {\n+    text-decoration: none;\n+    color: #b33 !im'..b'                  : "<span>plot shows the NGAx metric value as x varies from 0 to 100.</span><span>NGAx is computed similarly to NGx, but based on lengths of aligned blocks instead of contig lengths. Contigs are broken at misassembly breakpoints. NGAx is the minimum block length <b>y</b> such that using blocks of length at least <b>y</b> accounts for at least x% of the bases of the reference genome. This metric is computed only if a reference genome is provided.</span>",\n+    "GC content"                    : "<span>plot shows the distribution of GC percentage among the contigs, i.e., the total number of bases in contigs with such GC content. Typically, the distribution is approximately Gaussian. However, for some genomes it is not Gaussian. For assembly projects with contaminants, the GC distribution of the contaminants often differs from the reference genome and may give a superposition of multiple curves with different peaks.</span>",\n+\n+    "Duplication ratio"             : "<span>is the total number of aligned bases in the assembly (i.e. <i>Total length</i> - <i>Fully unaligned length</i> - <i>Partially unaligned length</i>), divided by the total number of aligned bases in the reference (see the <b>Genome fraction (%)</b> metric). If the assembly contains many contigs that cover the same regions of the reference, its <i>Duplication ratio</i> may be much larger than 1. This may occur due to overestimating repeat multiplicities and due to small overlaps between contigs, among other reasons.</span>",\n+    "Largest alignment"             : "<span>is the length of the largest continuous alignment in the assembly. This metric is always equal to the <i>Largest contig</i> metric but it can be smaller if the largest contig of the assembly contains a misassembly event.</span>",\n+    "Total aligned length"          : "<span>is the total number of aligned bases in the assembly.</span>",\n+    "Avg contig read support"       : "<span>is the average coverage of contigs that have large unique alignments to the reference. Read coverage is extracted from contig names (SPAdes/Velvet naming scheme only).</span>",\n+\n+    "# N\'s"                         : "<span>is the total number of uncalled bases (N\'s) in the assembly.</span>",\n+    "# N\'s per 100 kbp"             : "<span>is the average number of uncalled bases (N\'s) per 100000 assembly bases.</span>",\n+\n+    "# mapped"                      : "<span>is the number of reads that mapped to the assembly.</span>",\n+    "Mapped (%)"                    : "<span>is the percent of reads that mapped to the assembly.</span>",\n+    "# properly paired"             : "<span>is the number of reads that mapped within expected range and orientation of each other to the assembly.</span>",\n+    "Properly paired (%)"           : "<span>is the percent of reads that mapped within expected range and orientation of each other to the assembly.</span>",\n+    "# singletons"                  : "<span>is the number of reads which do not overlap any other reads.</span>",\n+    "Singletons (%)"                : "<span>is the percent of reads which do not overlap any other reads.</span>",\n+    "# misjoint mates"              : "<span>is the number of reads with mate mapped to a different contig.</span>",\n+    "Misjoint mates (%)"            : "<span>is the percent of reads with mate mapped to a different contig.</span>",\n+    "Avg. coverage depth"           : "<span>is the average depth of coverage.</span>",\n+    "Coverage >= 1x (%)"            : "<span>is the total number of bases with at least 1x coverage, divided by the total length of the assembly.</span>",\n+\n+    "# similar correct contigs"     : "<span>is the number of correct contigs similar among > 50% assemblies (see Icarus for visualization).</span>",\n+    "# similar misassembled blocks" : "<span>is the number of misassembled blocks similar among > 50% assemblies (see Icarus for visualization).</span>"\n+}\n+\n+        </div>\n+    </div>\n+</div>\n+</body>\n+</html>\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test1_unalign.tabular
--- a/test-data/test1_unalign.tabular Mon Feb 03 17:37:36 2020 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,6 +0,0 @@
-Assembly contig1 contigs2_fna
-# fully unaligned contigs 0 0
-Fully unaligned length 0 0
-# partially unaligned contigs 1 0
-Partially unaligned length 1950 0
-# N's 0 0
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2.log
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test2.log Mon Nov 08 09:03:00 2021 +0000
b
b"@@ -0,0 +1,198 @@\n+/usr/local/bin/quast --labels contig1,contig2 -o outputdir -r /tmp/tmpfgnwy_vl/files/7/5/6/dataset_7567d03a-76ca-49a4-aaa2-334a7b5a8f74.dat --features /tmp/tmpfgnwy_vl/files/4/0/6/dataset_406c3bca-dfac-498b-954d-476186610bc9.dat --operons /tmp/tmpfgnwy_vl/files/e/5/8/dataset_e5851e9e-28d2-42f8-9a7a-0d05d0770635.dat --circos --k-mer-stats --k-mer-size 101 --min-contig 500 --min-alignment 65 --min-identity 95.0 --ambiguity-usage one --contig-thresholds 0,1000 --extensive-mis-size 1000 --scaffold-gap-max-size 1000 --unaligned-part-size 500 /tmp/tmpfgnwy_vl/files/2/3/b/dataset_23b499d4-cf8d-47a3-8ba1-906758c987bb.dat /tmp/tmpfgnwy_vl/files/b/3/5/dataset_b3571672-0e6e-4ff5-8e31-b7135a2d1bd6.dat --threads 1\n+\n+Version: 5.0.2\n+\n+System information:\n+  OS: Linux-5.11.0-37-generic-x86_64-with-debian-10.9 (linux_64)\n+  Python version: 3.7.12\n+  CPUs number: 8\n+\n+Started: 2021-11-07 18:59:01\n+\n+Logging to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/quast.log\n+\n+CWD: /tmp/tmpfgnwy_vl/job_working_directory/000/12/working\n+Main parameters: \n+  MODE: default, threads: 1, minimum contig length: 500, minimum alignment length: 65, \\\n+  ambiguity: one, threshold for extensive misassembly size: 1000\n+\n+Reference:\n+  /tmp/tmpfgnwy_vl/files/7/5/6/dataset_7567d03a-76ca-49a4-aaa2-334a7b5a8f74.dat ==> dataset_7567d03a_76ca_49a4_aaa2_334a7b5a8f74\n+\n+Contigs:\n+  Pre-processing...\n+  1  /tmp/tmpfgnwy_vl/files/2/3/b/dataset_23b499d4-cf8d-47a3-8ba1-906758c987bb.dat ==> contig1\n+  2  /tmp/tmpfgnwy_vl/files/b/3/5/dataset_b3571672-0e6e-4ff5-8e31-b7135a2d1bd6.dat ==> contig2\n+\n+2021-11-07 18:59:01\n+Running Basic statistics processor...\n+  Reference genome:\n+    dataset_7567d03a_76ca_49a4_aaa2_334a7b5a8f74.dat, length = 6650, num fragments = 1, GC % = 52.00\n+  Contig files: \n+    1  contig1\n+    2  contig2\n+  Calculating N50 and L50...\n+    1  contig1, N50 = 3980, L50 = 1, Total length = 6710, GC % = 51.28, # N's per 100 kbp =  0.00\n+    2  contig2, N50 = 6650, L50 = 1, Total length = 6650, GC % = 52.00, # N's per 100 kbp =  0.00\n+  Drawing Nx plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/basic_stats/Nx_plot.pdf\n+  Drawing NGx plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/basic_stats/NGx_plot.pdf\n+  Drawing cumulative plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/basic_stats/cumulative_plot.pdf\n+  Drawing GC content plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/basic_stats/GC_content_plot.pdf\n+  Drawing contig1 GC content plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/basic_stats/contig1_GC_content_plot.pdf\n+  Drawing contig2 GC content plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/basic_stats/contig2_GC_content_plot.pdf\n+Done.\n+\n+2021-11-07 18:59:02\n+Running analysis based on unique 101-mers...\n+NOTICE: Permission denied accessing /usr/local/lib/python3.7/site-packages/quast_libs/kmc. KMC will be downloaded to home directory /tmp/tmpfgnwy_vl/job_working_directory/000/12/home/.quast\n+Downloading KMC (file: kmc)...\n+KMC successfully downloaded!\n+Downloading KMC (file: kmc_tools)...\n+KMC successfully downloaded!\n+  Running KMC on reference...\n+/tmp/tmpfgnwy_vl/job_working_directory/000/12/home/.quast/kmc/kmc -t1 -hp -m2 -n128 \\\n+-k101 -fm -cx1 -ci1 outputdir/quast_corrected_input/dataset_7567d03a_76ca_49a4_aaa2_334a7b5a8f74.dat \\\n+outputdir/k_mer_stats/tmp/dataset_7567d03a_76ca_49a4_aaa2_334a7b5a8f74.dat.kmc outputdir/k_mer_stats/tmp \\\n+>> outputdir/k_mer_stats/kmc.log 2>> outputdir/k_mer_stats/kmc.err\n+/tmp/tmpfgnwy_vl/job_working_directory/000/12/home/.quast/kmc/kmc_tools -t1 -hp histogram \\\n+outputdir/k_mer_stats/tmp/dataset_7567d03a_76ca_49a4_aaa2_334a7b5a8f74.dat.kmc outputdir/k_mer_stats/tmp/dataset_7567d03a_76ca_49a4_aaa2_334a7b5a8f74.dat.kmc.histo.txt \\\n+>> outputdir/k_mer_stats/km"..b'ntigs_reports/unaligned_report.txt, unaligned_report.tsv, and unaligned_report.tex\n+  Drawing misassemblies by types plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/contigs_reports/misassemblies_plot.pdf\n+  Drawing misassemblies FRCurve plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/contigs_reports/misassemblies_frcurve_plot.pdf\n+Done.\n+\n+2021-11-07 18:59:04\n+Running NA-NGA calculation...\n+  1  contig1, Largest alignment = 2030, NA50 = 1610, NGA50 = 1610, LA50 = 2, LGA50 = 2\n+  2  contig2, Largest alignment = 6650, NA50 = 6650, NGA50 = 6650, LA50 = 1, LGA50 = 1\n+  Drawing cumulative plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/aligned_stats/cumulative_plot.pdf\n+  Drawing NAx plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/aligned_stats/NAx_plot.pdf\n+  Drawing NGAx plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/aligned_stats/NGAx_plot.pdf\n+Done.\n+\n+2021-11-07 18:59:05\n+Running Genome analyzer...\n+  Loaded 14 genomic features of type "ANY"\n+  NOTICE: Reference name in file with genomic features of type "ANY" (NC_000913.3) does not match the name in the reference file (NC_000913.3_1_6650). QUAST will ignore this issue and count as if they match.\n+WARNING: Incorrect format of operon\'s file! GFF, NCBI and the plain TXT format accepted. See manual.\n+WARNING: /tmp/tmpfgnwy_vl/files/e/5/8/dataset_e5851e9e-28d2-42f8-9a7a-0d05d0770635.dat was skipped\n+  WARNING: No genomic features of type "operon" were loaded.\n+  1  contig1\n+  1  Analysis is finished.\n+  2  contig2\n+  2  Analysis is finished.\n+  Drawing genomic features cumulative plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/genome_stats/features_cumulative_plot.pdf\n+  Drawing genomic features FRCurve plot...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/genome_stats/features_frcurve_plot.pdf\n+  Drawing # complete genomic features histogram...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/genome_stats/complete_features_histogram.pdf\n+  Drawing Genome fraction, % histogram...\n+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/genome_stats/genome_fraction_histogram.pdf\n+Done.\n+\n+NOTICE: Genes are not predicted by default. Use --gene-finding or --glimmer option to enable it.\n+\n+2021-11-07 18:59:05\n+Creating large visual summaries...\n+This may take a while: press Ctrl-C to skip this step..\n+  1 of 3: Creating Icarus viewers...\n+  2 of 3: Creating Circos plot...\n+/usr/local/bin/circos -conf outputdir/circos/circos.conf > outputdir/circos/circos.log \\\n+2> outputdir/circos/circos.err\n+  3 of 3: Creating PDF with all tables and plots...\n+Done\n+\n+2021-11-07 18:59:15\n+RESULTS:\n+  Text versions of total report are saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/report.txt, report.tsv, and report.tex\n+  Text versions of transposed total report are saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/transposed_report.txt, transposed_report.tsv, and transposed_report.tex\n+  HTML version (interactive tables and plots) is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/report.html\n+  PDF version (tables and plots) is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/report.pdf\n+  Circos plot is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/circos/circos.png (legend is in legend.txt, configuration file is in circos.conf)\n+  Icarus (contig browser) is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/icarus.html\n+  Log is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/12/working/outputdir/quast.log\n+\n+Finished: 2021-11-07 18:59:15\n+Elapsed time: 0:00:13.941680\n+NOTICEs: 3; WARNINGs: 3; non-fatal ERRORs: 0\n+\n+Thank you for using QUAST!\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2.tabular
--- a/test-data/test2.tabular Mon Feb 03 17:37:36 2020 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,16 +0,0 @@
-Assembly contigs1_fna contigs2_fna
-# contigs (>= 0 bp) 3 1
-# contigs (>= 1000 bp) 3 1
-# contigs (>= 500 bp) 3 1
-Total length (>= 0 bp) 6710 6650
-Total length (>= 1000 bp) 6710 6650
-Total length (>= 500 bp) 6710 6650
-# contigs 3 1
-Largest contig 3980 6650
-Total length 6710 6650
-GC (%) 51.28 52.00
-N50 3980 6650
-N75 1610 6650
-L50 1 1
-L75 2 1
-# N's per 100 kbp 0.00 0.00
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2_circos.png
b
Binary file test-data/test2_circos.png has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2_kmers.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test2_kmers.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,10 @@
+All statistics are based on contigs of size >= 500 bp, unless otherwise noted (e.g., "# contigs (>= 0 bp)" and "Total length (>= 0 bp)" include all contigs).
+
+Assembly                              contig1  contig2
+K-mer-based compl. (%)                68.09    100.00 
+K-mer-based cor. length (%)           100.00   100.00 
+K-mer-based mis. length (%)           0.00     0.00   
+K-mer-based undef. length (%)         0.00     0.00   
+# k-mer-based misjoins                0        0      
+    # k-mer-based translocations      0        0      
+    # k-mer-based 100kbp relocations  0        0      
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2_missasemblies.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test2_missasemblies.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,23 @@
+All statistics are based on contigs of size >= 500 bp, unless otherwise noted (e.g., "# contigs (>= 0 bp)" and "Total length (>= 0 bp)" include all contigs).
+
+Assembly                     contig1  contig2
+# misassemblies              0        0      
+  # contig misassemblies     0        0      
+    # c. relocations         0        0      
+    # c. translocations      0        0      
+    # c. inversions          0        0      
+  # scaffold misassemblies   0        0      
+    # s. relocations         0        0      
+    # s. translocations      0        0      
+    # s. inversions          0        0      
+# misassembled contigs       0        0      
+Misassembled contigs length  0        0      
+# local misassemblies        0        0      
+# scaffold gap ext. mis.     0        0      
+# scaffold gap loc. mis.     0        0      
+# unaligned mis. contigs     0        0      
+# mismatches                 0        0      
+# indels                     0        0      
+    # indels (<= 5 bp)       0        0      
+    # indels (> 5 bp)        0        0      
+Indels length                0        0      
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2_report.html
--- a/test-data/test2_report.html Mon Feb 03 17:37:36 2020 -0500
+++ b/test-data/test2_report.html Mon Nov 08 09:03:00 2021 +0000
[
b'@@ -2651,7 +2651,7 @@\n <script type="text/javascript">\n \n var gns = {\n-    genes: {\n+    features: {\n         isInitialized: false,\n \n         maxY: 0,\n@@ -2673,7 +2673,7 @@\n         yAxisLabeled: false\n     },\n \n-    draw: function (name, title, colors, filenames, data, refGenesNumber, tickX,\n+    draw: function (name, title, colors, filenames, data, refFeaturesNumber, tickX,\n                     placeholder, legendPlaceholder, glossary, order, scalePlaceholder) {\n //    div.html(\n //        "<span class=\'plot-header\'>" + kind[0].toUpperCase() + kind.slice(1) + "s covered</span>" +\n@@ -2695,8 +2695,8 @@\n             info.maxY = 0;\n             info.maxX = 0;\n \n-            if (refGenesNumber) {\n-                info.maxY = refGenesNumber;\n+            if (refFeaturesNumber) {\n+                info.maxY = refFeaturesNumber;\n             }\n \n             for (var fi = 0; fi < plotsN; fi++) {\n@@ -2754,10 +2754,10 @@\n             //        }\n             //    }\n \n-            if (refGenesNumber) {\n+            if (refFeaturesNumber) {\n                 info.series.push({\n-                    data: [[0, refGenesNumber], [info.maxX, refGenesNumber]],\n-                    label: \'reference,&nbsp;\' + toPrettyString(refGenesNumber, \'genes\'),\n+                    data: [[0, refFeaturesNumber], [info.maxX, refFeaturesNumber]],\n+                    label: \'reference,&nbsp;\' + toPrettyString(refFeaturesNumber, \'features\'),\n                     isReference: true,\n                     dashes: {\n                         show: true,\n@@ -2824,7 +2824,7 @@\n             info.isInitialized = true;\n         }\n \n-        addLegendClickEvents(info, filenames.length, showPlotWithInfo, refGenesNumber);\n+        addLegendClickEvents(info, filenames.length, showPlotWithInfo, refFeaturesNumber);\n \n         showPlotWithInfo(info);\n \n@@ -4214,7 +4214,7 @@\n             var refLen = referenceValues[\'Reference length\'];\n             var refFragments = referenceValues[\'Reference fragments\'];\n             var refGC = referenceValues[\'Reference GC (%)\'];\n-            var refGenes = referenceValues[\'Reference genes\'];\n+            var refFeatures = referenceValues[\'Reference genomic features\'];\n             var refOperons = referenceValues[\'Reference operons\'];\n             var refChr = referenceValues[\'Reference chromosomes\'];\n             var totalReads = referenceValues[\'# total reads\'];\n@@ -4233,8 +4233,8 @@\n             }\n             if (refGC)\n                 $(\'#reference_gc\').show().find(\'.val\').html(toPrettyString(refGC));\n-            if (refGenes)\n-                $(\'#reference_genes\').show().find(\'.val\').html(toPrettyString(refGenes));\n+            if (refFeatures)\n+                $(\'#reference_features\').show().find(\'.val\').html(toPrettyString(refFeatures));\n             if (refOperons)\n                 $(\'#reference_operons\').show().find(\'.val\').html(toPrettyString(refOperons));\n             if (refChr) {\n@@ -4322,7 +4322,7 @@\n     var alignedContigsLens = null;\n     var refLengths = null;\n     var contigs = null;\n-    var genesInContigs = null;\n+    var featuresInContigs = null;\n     var operonsInContigs = null;\n     var gcInfos = null;\n \n@@ -4427,18 +4427,18 @@\n         firstPlot = false;\n     }\n \n-    genesInContigs = readJson(\'genes-in-contigs\');\n+    featuresInContigs = readJson(\'features-in-contigs\');\n     operonsInContigs = readJson(\'operons-in-contigs\');\n //    if (genesInContigs || operonsInContigs)\n //        contigs = readJson(\'contigs\');\n \n-    if (genesInContigs) {\n-        makePlot(firstPlot, assembliesNames, order, \'genes\', \'Genes\', gns.draw,  {\n-                filesFeatureInContigs: genesInContigs.genes_in_contigs,\n+    if (featuresInContigs) {\n+        makePlot(firstPlot, assembliesNames, order, \'features\', \'Genomic features\', gns.draw,  {\n+                filesFeatureInContigs: featuresInContigs.features_in_contigs,\n                 kind: \'gene\',\n-                filenames: genesInContigs.filenames\n+                filenames: '..b'4.0,45.0,46.0,47.0,48.0,49.0,50.0,51.0,52.0,53.0,54.0,55.0,56.0,57.0,58.0,59.0,60.0,61.0,62.0,63.0,64.0,65.0,66.0,67.0,68.0,69.0,70.0,71.0,72.0,73.0,74.0,75.0,76.0,77.0,78.0,79.0,80.0,81.0,82.0,83.0,84.0,85.0,86.0,87.0,88.0,89.0,90.0,91.0,92.0,93.0,94.0,95.0,96.0,97.0,98.0,99.0,100.0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,1,0,1,0,0,3,1,0,1,2,1,5,5,5,2,5,4,4,7,1,6,2,5,1,0,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],[[0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0,17.0,18.0,19.0,20.0,21.0,22.0,23.0,24.0,25.0,26.0,27.0,28.0,29.0,30.0,31.0,32.0,33.0,34.0,35.0,36.0,37.0,38.0,39.0,40.0,41.0,42.0,43.0,44.0,45.0,46.0,47.0,48.0,49.0,50.0,51.0,52.0,53.0,54.0,55.0,56.0,57.0,58.0,59.0,60.0,61.0,62.0,63.0,64.0,65.0,66.0,67.0,68.0,69.0,70.0,71.0,72.0,73.0,74.0,75.0,76.0,77.0,78.0,79.0,80.0,81.0,82.0,83.0,84.0,85.0,86.0,87.0,88.0,89.0,90.0,91.0,92.0,93.0,94.0,95.0,96.0,97.0,98.0,99.0,100.0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,3,2,1,0,0,5,3,4,4,7,3,5,2,4,7,0,10,1,1,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]],[[0.0,1.0,2.0,3.0,4.0,5.0,6.0,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0,17.0,18.0,19.0,20.0,21.0,22.0,23.0,24.0,25.0,26.0,27.0,28.0,29.0,30.0,31.0,32.0,33.0,34.0,35.0,36.0,37.0,38.0,39.0,40.0,41.0,42.0,43.0,44.0,45.0,46.0,47.0,48.0,49.0,50.0,51.0,52.0,53.0,54.0,55.0,56.0,57.0,58.0,59.0,60.0,61.0,62.0,63.0,64.0,65.0,66.0,67.0,68.0,69.0,70.0,71.0,72.0,73.0,74.0,75.0,76.0,77.0,78.0,79.0,80.0,81.0,82.0,83.0,84.0,85.0,86.0,87.0,88.0,89.0,90.0,91.0,92.0,93.0,94.0,95.0,96.0,97.0,98.0,99.0,100.0],[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,1,0,0,0,0,0,0,3,2,1,0,0,5,3,4,4,7,3,5,2,4,7,0,10,1,1,2,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]]],"list_of_GC_contigs_distributions":[[[0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100],[0,0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,0]],[[0,5,10,15,20,25,30,35,40,45,50,55,60,65,70,75,80,85,90,95,100],[0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0]]],"lists_of_gc_info":null}\n             </div>\n             <div id=\'icarus-json\'>\n-                {"links":["icarus_viewers/contig_size_viewer.html"],"links_names":["View in Icarus contig browser"]}\n+                {"links":["icarus_viewers/alignment_viewer.html"],"links_names":["View in Icarus contig browser"]}\n             </div>\n         </div>\n     </div>\n@@ -4789,6 +4789,9 @@\n     "# predicted genes (unique)"    : "<span>is the number of unique genes in the assembly found by a gene prediction tool.</span>",\n     "# predicted genes (>= 0 bp)"   : "<span>is the number of found genes having length greater than or equal to 0 bp.</span>",\n \n+    "Complete BUSCO (%)"            : "<span>is the percent of BUSCO (Universal Single-Copy Ortholog) genes found in the assembly in a complete form.</span>",\n+    "Partial BUSCO (%)"             : "<span>is the percent of BUSCO (Universal Single-Copy Ortholog) genes found in the assembly in a partial form.</span>",\n+\n     "Cumulative length"             : "<span>plot shows the growth of assembly contig lengths. On the x-axis, contigs are ordered from largest (contig #1) to smallest. The y-axis gives the size of the x largest contigs in the assembly.</span>",\n     "Nx"                            : "<span>plot shows the Nx metric value as x varies from 0 to 100.</span>  <span>Nx is the minimum contig length <b>y</b> such that using contigs of length at least <b>y</b> accounts for at least x% of the total assembly length.</span>",\n     "NGx"                           : "<span>plot shows the NGx metric value as x varies from 0 to 100.</span> <span>NGx is the minimum contig length <b>y</b> such that using contigs of length at least <b>y</b> accounts for at least x% of the bases of the reference genome. This metric is computed only if a reference genome is provided.</span>",\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2_report.pdf
b
Binary file test-data/test2_report.pdf has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2_report.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test2_report.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,48 @@
+Assembly contig1 contig2
+# contigs (>= 0 bp) 3 1
+# contigs (>= 1000 bp) 3 1
+Total length (>= 0 bp) 6710 6650
+Total length (>= 1000 bp) 6710 6650
+# contigs 3 1
+Largest contig 3980 6650
+Total length 6710 6650
+Reference length 6650 6650
+GC (%) 51.28 52.00
+Reference GC (%) 52.00 52.00
+N50 3980 6650
+NG50 3980 6650
+N75 1610 6650
+NG75 1610 6650
+L50 1 1
+LG50 1 1
+L75 2 1
+LG75 2 1
+# misassemblies 0 0
+# misassembled contigs 0 0
+Misassembled contigs length 0 0
+# local misassemblies 0 0
+# scaffold gap ext. mis. 0 0
+# scaffold gap loc. mis. 0 0
+# unaligned mis. contigs 0 0
+# unaligned contigs 0 + 1 part 0 + 0 part
+Unaligned length 1950 0
+Genome fraction (%) 71.579 100.000
+Duplication ratio 1.000 1.000
+# N's per 100 kbp 0.00 0.00
+# mismatches per 100 kbp 0.00 0.00
+# indels per 100 kbp 0.00 0.00
+# genomic features 7 + 7 part 13 + 1 part
+Largest alignment 2030 6650
+Total aligned length 4760 6650
+NA50 1610 6650
+NGA50 1610 6650
+NA75 - 6650
+NGA75 - 6650
+LA50 2 1
+LGA50 2 1
+LA75 - 1
+LGA75 - 1
+K-mer-based compl. (%) 68.09 100.00
+K-mer-based cor. length (%) 100.00 100.00
+K-mer-based mis. length (%) 0.00 0.00
+# k-mer-based misjoins 0 0
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test2_unaligned.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test2_unaligned.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,6 @@
+Assembly contig1 contig2
+# fully unaligned contigs 0 0
+Fully unaligned length 0 0
+# partially unaligned contigs 1 0
+Partially unaligned length 1950 0
+# N's 0 0
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test3.log
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test3.log Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,66 @@
+/usr/local/bin/quast --labels contigs1_fna,contigs2_fna -o outputdir --eukaryote --min-contig 500 --min-alignment 65 --min-identity 95.0 --ambiguity-usage one --contig-thresholds 0,1000,500 --extensive-mis-size 1000 --scaffold-gap-max-size 1000 --unaligned-part-size 500 --skip-unaligned-mis-contigs /tmp/tmpfgnwy_vl/files/7/8/2/dataset_78284ced-4f1f-4eb6-a4e0-97cb937c125a.dat /tmp/tmpfgnwy_vl/files/6/b/d/dataset_6bd1949d-014f-47ff-8b78-b609c6a19455.dat --threads 1
+
+Version: 5.0.2
+
+System information:
+  OS: Linux-5.11.0-37-generic-x86_64-with-debian-10.9 (linux_64)
+  Python version: 3.7.12
+  CPUs number: 8
+
+Started: 2021-11-07 18:59:34
+
+Logging to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/quast.log
+
+CWD: /tmp/tmpfgnwy_vl/job_working_directory/000/15/working
+Main parameters: 
+  MODE: default, threads: 1, eukaryotic: true, minimum contig length: 500, minimum alignment length: 65, \
+  ambiguity: one, threshold for extensive misassembly size: 1000
+
+Contigs:
+  Pre-processing...
+  1  /tmp/tmpfgnwy_vl/files/7/8/2/dataset_78284ced-4f1f-4eb6-a4e0-97cb937c125a.dat ==> contigs1_fna
+  2  /tmp/tmpfgnwy_vl/files/6/b/d/dataset_6bd1949d-014f-47ff-8b78-b609c6a19455.dat ==> contigs2_fna
+
+2021-11-07 18:59:34
+Running Basic statistics processor...
+  Contig files: 
+    1  contigs1_fna
+    2  contigs2_fna
+  Calculating N50 and L50...
+    1  contigs1_fna, N50 = 3980, L50 = 1, Total length = 6710, GC % = 51.28, # N's per 100 kbp =  0.00
+    2  contigs2_fna, N50 = 6650, L50 = 1, Total length = 6650, GC % = 52.00, # N's per 100 kbp =  0.00
+  Drawing Nx plot...
+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/basic_stats/Nx_plot.pdf
+  Drawing cumulative plot...
+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/basic_stats/cumulative_plot.pdf
+  Drawing GC content plot...
+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/basic_stats/GC_content_plot.pdf
+  Drawing contigs1_fna GC content plot...
+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/basic_stats/contigs1_fna_GC_content_plot.pdf
+  Drawing contigs2_fna GC content plot...
+    saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/basic_stats/contigs2_fna_GC_content_plot.pdf
+Done.
+
+NOTICE: Genes are not predicted by default. Use --gene-finding or --glimmer option to enable it.
+
+2021-11-07 18:59:35
+Creating large visual summaries...
+This may take a while: press Ctrl-C to skip this step..
+  1 of 2: Creating Icarus viewers...
+  2 of 2: Creating PDF with all tables and plots...
+Done
+
+2021-11-07 18:59:36
+RESULTS:
+  Text versions of total report are saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/report.txt, report.tsv, and report.tex
+  Text versions of transposed total report are saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/transposed_report.txt, transposed_report.tsv, and transposed_report.tex
+  HTML version (interactive tables and plots) is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/report.html
+  PDF version (tables and plots) is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/report.pdf
+  Icarus (contig browser) is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/icarus.html
+  Log is saved to /tmp/tmpfgnwy_vl/job_working_directory/000/15/working/outputdir/quast.log
+
+Finished: 2021-11-07 18:59:36
+Elapsed time: 0:00:02.245904
+NOTICEs: 1; WARNINGs: 0; non-fatal ERRORs: 0
+
+Thank you for using QUAST!
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test3.tabular
--- a/test-data/test3.tabular Mon Feb 03 17:37:36 2020 -0500
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
b
@@ -1,16 +0,0 @@
-Assembly contigs3_fasta
-# contigs (>= 0 bp) 30
-# contigs (>= 1000 bp) 30
-# contigs (>= 500 bp) 30
-Total length (>= 0 bp) 1197377
-Total length (>= 1000 bp) 1197377
-Total length (>= 500 bp) 1197377
-# contigs 30
-Largest contig 78752
-Total length 1197377
-GC (%) 42.28
-N50 38725
-N75 34003
-L50 12
-L75 20
-# N's per 100 kbp 0.00
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test3_report.html
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test3_report.html Mon Nov 08 09:03:00 2021 +0000
b
b'@@ -0,0 +1,4829 @@\n+<!DOCTYPE html>\n+<html lang="en">\n+<head>\n+    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" >\n+\n+    <style rel="stylesheet">\n+/*!\n+ * Bootstrap v2.0.4\n+ *\n+ * Copyright 2012 Twitter, Inc\n+ * Licensed under the Apache License v2.0\n+ * http://www.apache.org/licenses/LICENSE-2.0\n+ *\n+ * Designed and built with all the love in the world @twitter by @mdo and @fat.\n+ */\n+.clearfix{*zoom:1;}.clearfix:before,.clearfix:after{display:table;content:"";}\n+.clearfix:after{clear:both;}\n+.hide-text{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0;}\n+.input-block-level{display:block;width:100%;min-height:28px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;-ms-box-sizing:border-box;box-sizing:border-box;}\n+.tooltip{position:absolute;z-index:1020;display:block;visibility:visible;padding:5px;font-size:11px;opacity:0;filter:alpha(opacity=0);}.tooltip.in{opacity:0.8;filter:alpha(opacity=80);}\n+.tooltip.top{margin-top:-2px;}\n+.tooltip.right{margin-left:2px;}\n+.tooltip.bottom{margin-top:2px;}\n+.tooltip.left{margin-left:-2px;}\n+.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-top:5px solid #000000;}\n+.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:5px solid #000000;}\n+.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #000000;}\n+.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:5px solid #000000;}\n+.tooltip-inner{max-width:200px;padding:3px 8px;color:#ffffff;text-align:center;text-decoration:none;background-color:#000000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;}\n+.tooltip-arrow{position:absolute;width:0;height:0;}\n+\n+</style>\n+\n+    <style rel="stylesheet">\n+/* Main things */\n+html, body, div, span, h1, h3, h4, h5, h6, blockquote, pre,\n+em, sub, sup, dl, dt, dd, ol, ul, li,\n+fieldset, form, label,\n+table, caption, tbody, tfoot, thead,\n+article, aside, canvas, details, figure, figcaption, footer, header, hgroup,\n+menu, nav, output, section, time {\n+    margin: 0;\n+    padding: 0;\n+    border: 0;\n+    font-size: 100%;\n+    font: inherit;\n+    vertical-align: baseline;\n+}\n+body {\n+    margin: 0;\n+    font-family: Lucida Grande, Verdana, Arial, sans-serif;\n+    font-size: 12px;\n+    color: black;\n+    padding-bottom: 30px;\n+}\n+a {\n+    text-decoration: none;\n+    /*color: #0c4f72;*/\n+    color: #0077B5;\n+    border-bottom: 1px solid #487b95;\n+    border-color: #487b95; /* #487b95 */\n+    border-color: rgba(12, 79, 114, 0.2); /* #0c4f72; */ /* #a0d2eb; */ /*rgba(0, 88, cc, 0.3);*/\n+}\n+a:visited {\n+    text-decoration: none;\n+    color: #8C66B2;\n+    border-bottom: 1px solid #8c66b2;\n+    border-color: #8c66b2;\n+    border-color: rgba(102, 51, 153, 0.2);\n+}\n+a:hover {\n+    text-decoration: none;\n+    color: #b33; /* #0088cc; */\n+    border-bottom: 1px solid #ffcccc;\n+    border-color: #ffcccc;\n+    border-color: rgba(255, 0, 0, 0.2); /* #55b2e0; */ /*#005580;*/\n+}\n+a.dark_bg_link {\n+    color: white; /* #0088cc; */\n+    border-bottom: 1px solid #cccccc;\n+    border-color: #cccccc;\n+}\n+a.dark_bg_link:hover {\n+    color: white; /* #0088cc; */\n+    border-bottom: 1px solid white;\n+}\n+\n+.leading_link_dot {\n+    border-bottom: white solid 1px;\n+}\n+\n+a.header_link, a.header_link:hover, a.header_link:visited {\n+    color: black;\n+    border-bottom: 1px solid #bbb;\n+}\n+\n+\n+.dotted-link {\n+    cursor: pointer;\n+    text-decoration: none;\n+    /*color: #0c4f72;*/\n+    color: #0077B5;\n+    border-bottom: 1px dashed #487b95;\n+    border-color: #487b95; /* #487b95 */\n+    border-color: rgba(12, 79, 114, 0.2);\n+}\n+.dotted-link:hover {\n+    text-decoration: none;\n+    color: #b33 !im'..b'                  : "<span>plot shows the NGAx metric value as x varies from 0 to 100.</span><span>NGAx is computed similarly to NGx, but based on lengths of aligned blocks instead of contig lengths. Contigs are broken at misassembly breakpoints. NGAx is the minimum block length <b>y</b> such that using blocks of length at least <b>y</b> accounts for at least x% of the bases of the reference genome. This metric is computed only if a reference genome is provided.</span>",\n+    "GC content"                    : "<span>plot shows the distribution of GC percentage among the contigs, i.e., the total number of bases in contigs with such GC content. Typically, the distribution is approximately Gaussian. However, for some genomes it is not Gaussian. For assembly projects with contaminants, the GC distribution of the contaminants often differs from the reference genome and may give a superposition of multiple curves with different peaks.</span>",\n+\n+    "Duplication ratio"             : "<span>is the total number of aligned bases in the assembly (i.e. <i>Total length</i> - <i>Fully unaligned length</i> - <i>Partially unaligned length</i>), divided by the total number of aligned bases in the reference (see the <b>Genome fraction (%)</b> metric). If the assembly contains many contigs that cover the same regions of the reference, its <i>Duplication ratio</i> may be much larger than 1. This may occur due to overestimating repeat multiplicities and due to small overlaps between contigs, among other reasons.</span>",\n+    "Largest alignment"             : "<span>is the length of the largest continuous alignment in the assembly. This metric is always equal to the <i>Largest contig</i> metric but it can be smaller if the largest contig of the assembly contains a misassembly event.</span>",\n+    "Total aligned length"          : "<span>is the total number of aligned bases in the assembly.</span>",\n+    "Avg contig read support"       : "<span>is the average coverage of contigs that have large unique alignments to the reference. Read coverage is extracted from contig names (SPAdes/Velvet naming scheme only).</span>",\n+\n+    "# N\'s"                         : "<span>is the total number of uncalled bases (N\'s) in the assembly.</span>",\n+    "# N\'s per 100 kbp"             : "<span>is the average number of uncalled bases (N\'s) per 100000 assembly bases.</span>",\n+\n+    "# mapped"                      : "<span>is the number of reads that mapped to the assembly.</span>",\n+    "Mapped (%)"                    : "<span>is the percent of reads that mapped to the assembly.</span>",\n+    "# properly paired"             : "<span>is the number of reads that mapped within expected range and orientation of each other to the assembly.</span>",\n+    "Properly paired (%)"           : "<span>is the percent of reads that mapped within expected range and orientation of each other to the assembly.</span>",\n+    "# singletons"                  : "<span>is the number of reads which do not overlap any other reads.</span>",\n+    "Singletons (%)"                : "<span>is the percent of reads which do not overlap any other reads.</span>",\n+    "# misjoint mates"              : "<span>is the number of reads with mate mapped to a different contig.</span>",\n+    "Misjoint mates (%)"            : "<span>is the percent of reads with mate mapped to a different contig.</span>",\n+    "Avg. coverage depth"           : "<span>is the average depth of coverage.</span>",\n+    "Coverage >= 1x (%)"            : "<span>is the total number of bases with at least 1x coverage, divided by the total length of the assembly.</span>",\n+\n+    "# similar correct contigs"     : "<span>is the number of correct contigs similar among > 50% assemblies (see Icarus for visualization).</span>",\n+    "# similar misassembled blocks" : "<span>is the number of misassembled blocks similar among > 50% assemblies (see Icarus for visualization).</span>"\n+}\n+\n+        </div>\n+    </div>\n+</div>\n+</body>\n+</html>\n'
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test3_report.pdf
b
Binary file test-data/test3_report.pdf has changed
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test4.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test4.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,16 @@
+Assembly contigs3_fasta
+# contigs (>= 0 bp) 9
+# contigs (>= 1000 bp) 9
+# contigs (>= 500 bp) 9
+Total length (>= 0 bp) 500445
+Total length (>= 1000 bp) 500445
+Total length (>= 500 bp) 500445
+# contigs 9
+Largest contig 78752
+Total length 500445
+GC (%) 40.17
+N50 54879
+N75 46151
+L50 4
+L75 7
+# N's per 100 kbp 0.00
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test5.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test5.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,54 @@
+Assembly contig1 contig2
+# contigs (>= 0 bp) 3 1
+# contigs (>= 1000 bp) 3 1
+Total length (>= 0 bp) 6710 6650
+Total length (>= 1000 bp) 6710 6650
+# contigs 3 1
+Largest contig 3980 6650
+Total length 6710 6650
+Reference length 6650 6650
+GC (%) 51.28 52.00
+Reference GC (%) 52.00 52.00
+N50 3980 6650
+NG50 3980 6650
+N75 1610 6650
+NG75 1610 6650
+L50 1 1
+LG50 1 1
+L75 2 1
+LG75 2 1
+# total reads 331 331
+# left 0 0
+# right 0 0
+Mapped (%) 2.72 2.42
+Reference mapped (%) 2.42 2.42
+Properly paired (%) 0.0 0.0
+Reference properly paired (%) 0.0 0.0
+Avg. coverage depth 0 1
+Reference avg. coverage depth 1 1
+Coverage >= 1x (%) 42.22 48.17
+Reference coverage >= 1x (%) 48.17 48.17
+# misassemblies 0 0
+# misassembled contigs 0 0
+Misassembled contigs length 0 0
+# local misassemblies 0 0
+# scaffold gap ext. mis. 0 0
+# scaffold gap loc. mis. 0 0
+# unaligned mis. contigs 0 0
+# unaligned contigs 0 + 1 part 0 + 0 part
+Unaligned length 1950 0
+Genome fraction (%) 71.579 100.000
+Duplication ratio 1.000 1.000
+# N's per 100 kbp 0.00 0.00
+# mismatches per 100 kbp 0.00 0.00
+# indels per 100 kbp 0.00 0.00
+Largest alignment 2030 6650
+Total aligned length 4760 6650
+NA50 1610 6650
+NGA50 1610 6650
+NA75 - 6650
+NGA75 - 6650
+LA50 2 1
+LGA50 2 1
+LA75 - 1
+LGA75 - 1
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test5_missasemblies.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test5_missasemblies.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,23 @@
+All statistics are based on contigs of size >= 500 bp, unless otherwise noted (e.g., "# contigs (>= 0 bp)" and "Total length (>= 0 bp)" include all contigs).
+
+Assembly                     contig1  contig2
+# misassemblies              0        0      
+  # contig misassemblies     0        0      
+    # c. relocations         0        0      
+    # c. translocations      0        0      
+    # c. inversions          0        0      
+  # scaffold misassemblies   0        0      
+    # s. relocations         0        0      
+    # s. translocations      0        0      
+    # s. inversions          0        0      
+# misassembled contigs       0        0      
+Misassembled contigs length  0        0      
+# local misassemblies        0        0      
+# scaffold gap ext. mis.     0        0      
+# scaffold gap loc. mis.     0        0      
+# unaligned mis. contigs     0        0      
+# mismatches                 0        0      
+# indels                     0        0      
+    # indels (<= 5 bp)       0        0      
+    # indels (> 5 bp)        0        0      
+Indels length                0        0      
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test5_unaligned.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test5_unaligned.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,6 @@
+Assembly contig1 contig2
+# fully unaligned contigs 0 0
+Fully unaligned length 0 0
+# partially unaligned contigs 1 0
+Partially unaligned length 1950 0
+# N's 0 0
b
diff -r ebb0dcdb621a -r 45924fa8d8c5 test-data/test6.tab
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/test6.tab Mon Nov 08 09:03:00 2021 +0000
b
@@ -0,0 +1,21 @@
+Assembly contig1 contig2
+# contigs (>= 0 bp) 3 1
+# contigs (>= 1000 bp) 3 1
+Total length (>= 0 bp) 6710 6650
+Total length (>= 1000 bp) 6710 6650
+# contigs 3 1
+Largest contig 3980 6650
+Total length 6710 6650
+GC (%) 51.28 52.00
+N50 3980 6650
+N75 1610 6650
+L50 1 1
+L75 2 1
+# total reads 167 167
+# left 0 0
+# right 0 0
+Mapped (%) 2.4 2.4
+Properly paired (%) 0.0 0.0
+Avg. coverage depth 0 0
+Coverage >= 1x (%) 27.08 47.32
+# N's per 100 kbp 0.00 0.00