changeset 12:d26fb5260c67 draft

0.02.04.6: update to use conda to resolve dependencies.
author pjbriggs
date Thu, 15 Mar 2018 09:49:05 -0400
parents 84613d5f1713
children 88c972081f15
files README.rst pal_finder_macros.xml pal_finder_wrapper.sh pal_finder_wrapper.xml pal_finder_wrapper_utils.sh test-data/454_microsat_types.out test-data/454_microsat_types.out.re_match test-data/454_microsats.out test-data/454_microsats.out.re_match test-data/454_microsats.out.re_match~ test-data/illuminaPE_filtered_microsats.out test-data/illuminaPE_filtered_microsats.out.re_match test-data/illuminaPE_filtered_microsats.out.re_match~ test-data/illuminaPE_filtered_microsats_occurrences.out test-data/illuminaPE_filtered_microsats_occurrences.out.re_match test-data/illuminaPE_filtered_microsats_occurrences.out.re_match~ test-data/illuminaPE_filtered_microsats_primers.out test-data/illuminaPE_filtered_microsats_primers.out.re_match test-data/illuminaPE_filtered_microsats_primers.out.re_match~ test-data/illuminaPE_filtered_microsats_rankmotifs.out test-data/illuminaPE_filtered_microsats_rankmotifs.out.re_match test-data/illuminaPE_filtered_microsats_rankmotifs.out.re_match~ test-data/illuminaPE_microsat_types.out test-data/illuminaPE_microsat_types.out.re_match test-data/illuminaPE_microsat_types.out.re_match~ test-data/illuminaPE_microsats.out test-data/illuminaPE_microsats.out.re_match test-data/illuminaPE_microsats.out.re_match~ tool_dependencies.xml
diffstat 29 files changed, 248 insertions(+), 332 deletions(-) [+]
line wrap: on
line diff
--- a/README.rst	Mon Jul 24 11:04:27 2017 -0400
+++ b/README.rst	Thu Mar 15 09:49:05 2018 -0400
@@ -61,9 +61,10 @@
 Version    Changes
 ---------- ----------------------------------------------------------------------
 
-0.02.04.6  - Trap for errors in ``pal_finder_v0.02.04.pl`` resulting in bad
-             ranges being supplied to ``primer3_core`` for some reads via
-             ``PRIMER_PRODUCT_RANGE_SIZE``.
+0.02.04.6  - Update to get dependencies using ``conda`` when installed from the
+             toolshed (this removes the explicit dependency on Perl 5.16
+             introduced in 0.02.04.2, as a result the outputs from the tool are
+             now non-deterministic in some cases).
 0.02.04.5  - Update to handle large output files which can sometimes be generated
              by the ``pal_finder_v0.02.04.pl`` or ``pal_filter.py`` scripts (logs
              of hundreds of Gb's have been observed in production): log files
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pal_finder_macros.xml	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,40 @@
+<macros>
+  <!--
+       Set the path for the pal_finder data files
+  -->
+  <token name="@CONDA_PAL_FINDER_SCRIPT_DIR@">if [ -z "\$PALFINDER_SCRIPT_DIR" ]; then export PALFINDER_SCRIPT_DIR=\$(dirname \$(readlink -e \$(which pal_finder))); fi</token>
+  <token name="@CONDA_PAL_FINDER_DATA_DIR@">if [ -z "\$PALFINDER_DATA_DIR" ]; then export PALFINDER_DATA_DIR=\$(dirname \$(readlink -e \$(which pal_finder))); fi</token>
+  <xml name="output_illumina_microsat_summary">
+    <output name="output_microsat_summary">
+      <assert_contents>
+	<has_line line="allExtended:&#009;0" />
+	<has_line line="allSpan:&#009;0" />
+	<has_line line="broken:&#009;2" />
+	<has_line line="compound:&#009;2" />
+	<has_line line="readsWithMicrosat:&#009;13" />
+	<has_line line="totalBases:&#009;2320" />
+	<has_line line="totalReads:&#009;20&#009;(2 x 10)" />
+	<has_line line="Microsat Type&#009;monomer length&#009;total loci&#009;loci w/ primers&#009;reads with loci&#009;total bases&#009;extended&#009;extended w/ primers&#009;spanning&#009;spanning w/ primers" />
+	<has_line_matching expression="(AC|TG)\t2\t7\t4\t7\t116\t0?\t0?\t0?\t0?" />
+	<has_line_matching expression="(AT|CG)\t2\t8\t0\t6\t106\t0?\t0?\t0?\t0?" />
+	<has_line_matching expression="(AG|TC)\t2\t2\t1\t2\t26\t0?\t0?\t0?\t0?" />
+      </assert_contents>
+    </output>
+  </xml>
+  <xml name="output_454_microsat_summary">
+    <output name="output_microsat_summary">
+      <assert_contents>
+	<has_line line="broken:&#009;1" />
+	<has_line line="compound:&#009;0" />
+	<has_line line="readsWithMicrosat:&#009;1" />
+	<has_line line="readsWithPrimers:&#009;0" />
+	<has_line line="totalBases:&#009;8639" />
+	<has_line line="totalReads:&#009;38" />
+	<has_line line="Microsat Type&#009;monomer length&#009;reads with loci&#009;total loci&#009;loci amplified&#009;total loci bases&#009;loci bases amplified" />
+	<has_line_matching expression="(AC|TG)\t2\t.*" />
+	<has_line_matching expression="(AT|CG)\t2\t0\t0\t0\t0\t0" />
+	<has_line_matching expression="(AG|TC)\t2\t0\t0\t0\t0\t0" />
+      </assert_contents>
+    </output>
+  </xml>
+</macros>
--- a/pal_finder_wrapper.sh	Mon Jul 24 11:04:27 2017 -0400
+++ b/pal_finder_wrapper.sh	Thu Mar 15 09:49:05 2018 -0400
@@ -53,9 +53,6 @@
 # Maximum size reporting log file contents
 MAX_LINES=500
 #
-# Get helper functions
-. $(dirname $0)/pal_finder_wrapper_utils.sh
-#
 # Initialise locations of scripts, data and executables
 #
 # Set these in the environment to overide at execution time
@@ -66,18 +63,31 @@
 # Filter script is in the same directory as this script
 PALFINDER_FILTER=$(dirname $0)/pal_filter.py
 if [ ! -f $PALFINDER_FILTER ] ; then
-    fatal No $PALFINDER_FILTER script
+    echo No $PALFINDER_FILTER script >&2
+    exit 1
 fi
 #
 # Check that we have all the components
+function have_program() {
+    local program=$1
+    local got_program=$(which $program 2>&1 | grep "no $(basename $program) in")
+    if [ -z "$got_program" ] ; then
+	echo yes
+    else
+	echo no
+    fi	
+}
 if [ "$(have_program $PRIMER3_CORE_EXE)" == "no" ] ; then
-    fatal "primer3_core missing: ${PRIMER3_CORE_EXE} not found"
+    echo "ERROR primer3_core missing: ${PRIMER3_CORE_EXE} not found" >&2
+    exit 1
 fi
 if [ ! -f "${PALFINDER_DATA_DIR}/config.txt" ] ; then
-    fatal "pal_finder config.txt not found in ${PALFINDER_DATA_DIR}"
+    echo "ERROR pal_finder config.txt not found in ${PALFINDER_DATA_DIR}" >&2
+    exit 1
 fi
 if [ ! -f "${PALFINDER_SCRIPT_DIR}/pal_finder_v0.02.04.pl" ] ; then
-    fatal "pal_finder_v0.02.04.pl not found in ${PALFINDER_SCRIPT_DIR}"
+    echo "ERROR pal_finder_v0.02.04.pl not found in ${PALFINDER_SCRIPT_DIR}" >&2
+    exit 1
 fi
 #
 # Initialise parameters used in the config.txt file
@@ -108,7 +118,7 @@
 if [ $# -lt 2 ] ; then
   echo "Usage: $0 FASTQ_R1 FASTQ_R2 MICROSAT_SUMMARY PAL_SUMMARY [OPTIONS]"
   echo "       $0 --454    FASTA    MICROSAT_SUMMARY PAL_SUMMARY [OPTIONS]"
-  fatal "Bad command line"
+  exits
 fi
 if [ "$1" == "--454" ] ; then
     PLATFORM="454"
@@ -225,14 +235,16 @@
 # Check that primer3_core is available
 got_primer3=`which $PRIMER3_CORE_EXE 2>&1 | grep -v "no primer3_core in"`
 if [ -z "$got_primer3" ] ; then
-  fatal "primer3_core not found"
+  echo ERROR primer3_core not found >&2
+  exit 1
 fi
 #
 # Set up the working dir
 if [ "$PLATFORM" == "Illumina" ] ; then
     # Paired end Illumina data as input
     if [ $FASTQ_R1 == $FASTQ_R2 ] ; then
-	fatal ERROR R1 and R2 fastqs are the same file
+	echo ERROR R1 and R2 fastqs are the same file >&2
+	exit 1
     fi
     ln -s $FASTQ_R1
     ln -s $FASTQ_R2
@@ -252,6 +264,17 @@
 /bin/cp $PALFINDER_DATA_DIR/config.txt .
 #
 # Update the config.txt file with new values
+function set_config_value() {
+    local key=$1
+    local value=$2
+    local config_txt=$3
+    if [ -z "$value" ] ; then
+	echo "No value for $key, left as default"
+    else
+	echo Setting "$key" to "$value"
+	sed -i 's,^'"$key"' .*,'"$key"'  '"$value"',' $config_txt
+    fi
+}
 # Input files
 set_config_value platform $PLATFORM config.txt
 if [ "$PLATFORM" == "Illumina" ] ; then
@@ -276,7 +299,6 @@
 # Primer3 settings
 set_config_value primer3input Output/pr3in.txt config.txt
 set_config_value primer3output Output/pr3out.txt config.txt
-set_config_value keepPrimer3files 1 config.txt
 set_config_value primer3executable $PRIMER3_CORE_EXE config.txt
 set_config_value prNamePrefix ${PRIMER_PREFIX}_ config.txt
 set_config_value PRIMER_MISPRIMING_LIBRARY "$PRIMER_MISPRIMING_LIBRARY" config.txt
@@ -307,32 +329,20 @@
 #
 # Check that log ends with "Done!!" message
 if [ -z "$(tail -n 1 pal_finder.log | grep Done!!)" ] ; then
-    fatal ERROR pal_finder failed to complete successfully
-fi
-echo "### pal_finder finished ###"
-#
-# Check for errors in pal_finder output
-echo "### Checking for errors ###"
-if [ ! -z "$(grep 'primer3_core: Illegal element in PRIMER_PRODUCT_SIZE_RANGE' pal_finder.log)" ] ; then
-    echo ERROR primer3 terminated prematurely due to bad product size ranges
-    cat >&2 <<EOF
-ERROR primer3 terminated prematurely due to bad product size ranges
-
-Pal_finder generated bad ranges for the following read IDs:
-EOF
-    echo $(find_bad_primer_ranges Output/pr3in.txt) >&2
-    cat >&2 <<EOF
-
-This error can occur when input data contains short R1 reads and has
-has not been properly trimmed and filtered.
-
-EOF
-    fatal pal_finder failed to complete successfully
-EOF
+    echo ERROR pal_finder failed to complete successfully >&2
+    exit 1
 fi
 #
-# Sort outputs into a consistent order regardless of Perl version
-echo "### Sorting outputs ###"
+# Sort microsat_summary output
+echo "### Sorting microsat summary output ###"
+head -n 7 Output/microsat_summary.txt | sort >microsat_summary.sorted
+grep "^$" Output/microsat_summary.txt>>microsat_summary.sorted
+grep "^Microsat Type" Output/microsat_summary.txt >>microsat_summary.sorted
+tail -n +11 Output/microsat_summary.txt >>microsat_summary.sorted
+mv microsat_summary.sorted Output/microsat_summary.txt
+#
+# Sort PAL_summary output
+echo "### Sorting PAL summary output ###"
 head -1 Output/PAL_summary.txt > Output/PAL_summary.sorted.txt
 if [ "$PLATFORM" == "Illumina" ] ; then
     grep -v "^readPairID" Output/PAL_summary.txt | sort -k 1 >> Output/PAL_summary.sorted.txt
@@ -352,9 +362,11 @@
     fi
     tail -$MAX_LINES pal_filter.log
     if [ $? -ne 0 ] ; then
-	fatal $PALFINDER_FILTER exited with non-zero status
+	echo ERROR $PALFINDER_FILTER exited with non-zero status >&2
+	exit 1
     elif [ ! -f PAL_summary.filtered ] ; then
-	fatal no output from $PALFINDER_FILTER
+	echo ERROR no output from $PALFINDER_FILTER >&2
+	exit 1
     fi
 fi
 #
@@ -374,7 +386,8 @@
     if [ -f "$assembly" ] ; then
 	/bin/mv $assembly "$OUTPUT_ASSEMBLY"
     else
-	fatal no assembly output found
+	echo ERROR no assembly output found >&2
+	exit 1
     fi
 fi
 if [ ! -z "$OUTPUT_CONFIG_FILE" ] && [ -f config.txt ] ; then
--- a/pal_finder_wrapper.xml	Mon Jul 24 11:04:27 2017 -0400
+++ b/pal_finder_wrapper.xml	Thu Mar 15 09:49:05 2018 -0400
@@ -1,13 +1,18 @@
 <tool id="microsat_pal_finder" name="pal_finder" version="0.02.04.6">
   <description>Find microsatellite repeat elements from sequencing reads and design PCR primers to amplify them</description>
+  <macros>
+    <import>pal_finder_macros.xml</import>
+  </macros>
   <requirements>
-    <requirement type="package" version="5.16.3">perl</requirement>
     <requirement type="package" version="0.02.04">pal_finder</requirement>
-    <requirement type="package" version="2.0.0">primer3_core</requirement>
+    <requirement type="package" version="2.7">python</requirement>
     <requirement type="package" version="1.65">biopython</requirement>
     <requirement type="package" version="2.8.1">pandaseq</requirement>
   </requirements>
-  <command interpreter="bash">pal_finder_wrapper.sh
+  <command><![CDATA[
+  @CONDA_PAL_FINDER_SCRIPT_DIR@ &&
+  @CONDA_PAL_FINDER_DATA_DIR@ &&
+  bash $__tool_directory__/pal_finder_wrapper.sh
   #if str( $platform.platform_type ) == "illumina"
     #set $paired_input_type = $platform.paired_input_type_conditional.paired_input_type
     #if $paired_input_type == "pair_of_files"
@@ -57,7 +62,7 @@
       $platform.assembly "$output_assembly"
     #end if
   #end if
-  </command>
+  ]]></command>
   <inputs>
     <param name="primer_prefix" type="text" value="test" size="25" label="Primer prefix" help="This prefix will be added to the beginning of all primer names" />
     <conditional name="platform">
@@ -169,18 +174,18 @@
     </data>
   </outputs>
   <tests>
+    <!-- Test with Illumina input -->
     <test>
-      <!-- Test with Illumina input -->
       <param name="platform_type" value="illumina" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats.out.re_match" />
       <output name="output_assembly" file="illuminaPE_assembly_after_filters.out" />
     </test>
+    <!-- Test with Illumina input as dataset pair -->
     <test>
-      <!-- Test with Illumina input as dataset pair -->
       <param name="platform_type" value="illumina" />
       <param name="paired_input_type" value="collection" />
       <param name="input_fastq_pair">
@@ -189,64 +194,65 @@
 	  <element name="reverse" value="illuminaPE_r2.fq" ftype="fastqsanger" />
 	</collection>
       </param>
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats.out.re_match" />
       <output name="output_assembly" file="illuminaPE_assembly_after_filters.out" />
     </test>
+    <!-- Test with Illumina input filter to loci with PandaSEQ assembly
+	 ('-assembly' option)
+    -->
     <test>
-      <!-- Test with Illumina input filter to loci with PandaSEQ assembly
-	   ('-assembly' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
       <output name="output_assembly" file="illuminaPE_assembly.out" />
     </test>
+    <!-- Test with Illumina input filter to loci with primers
+	 ('-primers' option) -->
     <test>
-      <!-- Test with Illumina input filter to loci with primers
-	   ('-primers' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="-primers" />
       <param name="assembly" value="false" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats_primers.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats_primers.out.re_match" />
     </test>
+    <!-- Test with Illumina input filter to loci which appear only once
+	 ('-occurrences' option) -->
     <test>
-      <!-- Test with Illumina input filter to loci which appear only once
-	   ('-occurrences' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="-occurrences" />
       <param name="assembly" value="false" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats_occurrences.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats_occurrences.out.re_match" />
     </test>
+    <!-- Test with Illumina input filter and rank loci with perfect motifs
+	 ('-rankmotifs' option) -->
     <test>
-      <!-- Test with Illumina input filter and rank loci with perfect motifs
-	   ('-rankmotifs' option) -->
       <param name="platform_type" value="illumina" />
       <param name="filters" value="-rankmotifs" />
       <param name="assembly" value="false" />
       <param name="input_fastq_r1" value="illuminaPE_r1.fq" ftype="fastqsanger" />
       <param name="input_fastq_r2" value="illuminaPE_r2.fq" ftype="fastqsanger" />
-      <output name="output_microsat_summary" file="illuminaPE_microsat_types.out" />
-      <output name="output_pal_summary" file="illuminaPE_microsats.out" />
-      <output name="output_filtered_microsats" file="illuminaPE_filtered_microsats_rankmotifs.out" />
+      <expand macro="output_illumina_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="illuminaPE_microsats.out.re_match" />
+      <output name="output_filtered_microsats" compare="re_match" file="illuminaPE_filtered_microsats_rankmotifs.out.re_match" />
     </test>
+    <!-- Test with 454 input -->
     <test>
-      <!-- Test with 454 input -->
       <param name="platform_type" value="454" />
       <param name="input_fasta" value="454_in.fa" ftype="fasta" />
-      <output name="output_microsat_summary" file="454_microsat_types.out" />
-      <output name="output_pal_summary" file="454_microsats.out" />
+      <expand macro="output_454_microsat_summary" />
+      <output name="output_pal_summary" compare="re_match" file="454_microsats.out.re_match" />
     </test>
   </tests>
   <help>
@@ -274,29 +280,6 @@
 
 -------------
 
-.. class:: warning
-
-**Known problems**
-
-.. class:: infomark
-
-**Bad primer product size ranges**
-
-For some datasets pal_finder may generate 'bad' product size ranges (where the
-lower limit exceeds the upper limit) for one or more reads, for input into
-primer3_core.
-
-If this occurs then the tool will terminate with an error. A list of the reads
-for which the bad ranges were generated can be found in the error message
-which can be accessed via the 'bug' icon from a failed dataset.
-
-The conditions which cause this error are unclear. However we believe it to be
-associated with short or low quality reads. It is recommended that the input
-data are sufficiently trimmed and filtered (using e.g. the Trimmomatic tool)
-before rerunning pal_finder.
-
--------------
-
 .. class:: infomark
 
 **Credits**
--- a/pal_finder_wrapper_utils.sh	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,71 +0,0 @@
-#!/bin/bash
-#
-# Helper functions for the pal_finder_wrapper.sh script
-#
-# Utility function for terminating on fatal error
-function fatal() {
-    echo "FATAL $@" >&2
-    exit 1
-}
-#
-# Check that specified program is available
-function have_program() {
-    local program=$1
-    local got_program=$(which $program 2>&1 | grep "no $(basename $program) in")
-    if [ -z "$got_program" ] ; then
-	echo yes
-    else
-	echo no
-    fi
-}
-#
-# Set the value for a parameter in the pal_finder config file
-function set_config_value() {
-    local key=$1
-    local value=$2
-    local config_txt=$3
-    if [ -z "$value" ] ; then
-       echo "No value for $key, left as default"
-    else
-       echo Setting "$key" to "$value"
-       sed -i 's,^'"$key"' .*,'"$key"'  '"$value"',' $config_txt
-    fi
-}
-#
-# Identify 'bad' PRIMER_PRODUCT_SIZE_RANGE from pr3in.txt file
-function find_bad_primer_ranges() {
-    # Parses a pr3in.txt file from pal_finder and reports
-    # sequence ids where the PRIMER_PRODUCT_SIZE_RANGE has
-    # upper limit which is smaller than lower limit
-    local pr3in=$1
-    local pattern="^(SEQUENCE_ID|PRIMER_PRODUCT_SIZE_RANGE)"
-    for line in $(grep -E "$pattern" $pr3in | sed 's/ /^/' | sed 'N;s/\n/*/')
-    do
-	# Loop over pairs of SEQUENCE_ID and PRIMER_PRODUCT_SIZE_RANGE
-	# keywords in the primer3 input
-	if [ ! -z "$(echo $line | grep ^SEQUENCE_ID)" ] ; then
-	    # Extract the values
-	    local size_range=$(echo $line | cut -d'*' -f2 | cut -d'=' -f2 | tr '^' ' ')
-	    local seq_id=$(echo $line | cut -d'*' -f1 | cut -d'=' -f2)
-	else
-	    local size_range=$(echo $line | cut -d'*' -f1 | cut -d'=' -f2)
-	    local seq_id=$(echo $line | cut -d'*' -f2 | cut -d'=' -f2)
-	fi
-	seq_id=$(echo $seq_id | cut -d')' -f3)
-	# Check the upper and lower limits in each range
-	# to see if it's okay
-	local bad_range=
-	for range in $(echo $size_range) ; do
-	    local lower=$(echo $range | cut -d'-' -f1)
-	    local upper=$(echo $range | cut -d'-' -f2)
-	    if [ $lower -gt $upper ] ; then
-		bad_range=yes
-		break
-	    fi
-	done
-	# Report if the range is wrong
-	if [ ! -z "$bad_range" ] ; then
-	    echo "$seq_id ($size_range)"
-	fi
-    done
-}
--- a/test-data/454_microsat_types.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,13 +0,0 @@
-totalBases:	8639
-readsWithPrimers:	0
-totalReads:	38
-compound:	0
-broken:	1
-readsWithMicrosat:	1
-
-
-Microsat Type	monomer length	reads with loci	total loci	loci amplified	total loci bases	loci bases amplified
-TC	2	0	0	0	0	0
-AC	2	1	2	0	48	0
-CG	2	0	0	0	0	0
-AT	2	0	0	0	0	0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/454_microsat_types.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,14 @@
+
+broken\:\	1
+compound\:\	0
+readsWithMicrosat\:\	1
+readsWithPrimers\:\	0
+totalBases\:\	8639
+totalReads\:\	38
+
+
+Microsat\ Type\	monomer\ length\	reads\ with\ loci\	total\ loci\	loci\ amplified\	total\ loci\ bases\	loci\ bases\ amplified
+AC\	2\	1\	2\	\	48\	
+AT\	2\	0\	0\	0\	0\	0
+CG\	2\	0\	0\	0\	0\	0
+TG\	2\	0\	0\	0\	0\	0
--- a/test-data/454_microsats.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,2 +0,0 @@
-SequenceID	Repeat Motif Size	Repeat Motif	Number Tandem Repeats	Primer Designed (1=y,0=n)	F Primer Name	Forward Primer	R Primer Name	Reverse Primer	Total Repeats In Amplicon	Occurances of Forward Primer in Reads	Occurances of Reverse Primer in Reads	Occurances of Amplifiable Primer Pair in Reads	Occurances of Amplifiable Primer Pair in PALs
-FW1N29Q04EP35X	2	AC	18	0									
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/454_microsats.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,2 @@
+SequenceID\	Repeat\ Motif\ Size\	Repeat\ Motif\	Number\ Tandem\ Repeats\	Primer\ Designed\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Total\ Repeats\ In\ Amplicon\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs
+FW1N29Q04EP35X\	2\	(AC|TG)\	18\	0\	\	\	\	\	\	\	\	\	
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/454_microsats.out.re_match~	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,2 @@
+SequenceID\	Repeat\ Motif\ Size\	Repeat\ Motif\	Number\ Tandem\ Repeats\	Primer\ Designed\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Total\ Repeats\ In\ Amplicon\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs
+FW1N29Q04EP35X\	2\	AC\	18\	0\	\	\	\	\	\	\	\	\	
--- a/test-data/illuminaPE_filtered_microsats.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-readPairID	Motifs(bases)	Bases in all Motifs	Possible Extended	Possible Spanning	Primers found (1=y,0=n)	F Primer Name	Forward Primer	R Primer Name	Reverse Primer	Amplicon Motifs	Number motif bases in amplicon	Primers on sep reads	Extend with primers	Spand with primers	Occurances of Forward Primer in Reads	Occurances of Reverse Primer in Reads	Occurances of Amplifiable Primer Pair in Reads	Occurances of Amplifiable Primer Pair in PALs	R1_Sequence_ID	R1_Sequence	R2_Sequence_ID	R2_Sequence
-ILLUMINA-545855:49:FC61RLR:2:1:8157:1636	AC(12) 	12			1	test_5	AAGTACAGTGGGGAGGCTGG	test_6	TTTTCTACACAGCTCAAGTAGCCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 1:N:0:TCCTGA	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 2:N:0:TCCTGA	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
-ILLUMINA-545855:49:FC61RLR:2:1:1978:1220	AC(12) 	12			1	test_3	GCAGTAAACAAAGGCAAAGGG	test_4	CCTGGGCAGAGGTGTTCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 1:N:0:TCCTGA	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 2:N:0:TCCTGA	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
-ILLUMINA-545855:49:FC61RLR:2:1:10979:1695	TC(14) 	14			1	test_7	TTCTCCCACTATATTTTGCATTGG	test_8	TCCAGACTGAAGCTACCCTGG	TC(14) 	14	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 1:N:0:TCCTGA	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 2:N:0:TCCTGA	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,4 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	AAGTACAGTGGGGAGGCTGG\	test\_.*\	TTTTCTACACAGCTCAAGTAGCCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	GCAGTAAACAAAGGCAAAGGG\	test\_.*\	CCTGGGCAGAGGTGTTCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	(AG|TC)\(14\)\ \	14\	\	\	1\	test\_.*\	TTCTCCCACTATATTTTGCATTGG\	test\_.*\	TCCAGACTGAAGCTACCCTGG\	(AG|TC)\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats.out.re_match~	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,4 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	AC\(12\)\ \	12\	\	\	1\	test\_3\	AAGTACAGTGGGGAGGCTGG\	test\_6\	TTTTCTACACAGCTCAAGTAGCCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	AC\(12\)\ \	12\	\	\	1\	test\_7\	GCAGTAAACAAAGGCAAAGGG\	test\_4\	CCTGGGCAGAGGTGTTCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	AG\(14\)\ \	14\	\	\	1\	test\_5\	TTCTCCCACTATATTTTGCATTGG\	test\_1\	TCCAGACTGAAGCTACCCTGG\	AG\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
--- a/test-data/illuminaPE_filtered_microsats_occurrences.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,4 +0,0 @@
-readPairID	Motifs(bases)	Bases in all Motifs	Possible Extended	Possible Spanning	Primers found (1=y,0=n)	F Primer Name	Forward Primer	R Primer Name	Reverse Primer	Amplicon Motifs	Number motif bases in amplicon	Primers on sep reads	Extend with primers	Spand with primers	Occurances of Forward Primer in Reads	Occurances of Reverse Primer in Reads	Occurances of Amplifiable Primer Pair in Reads	Occurances of Amplifiable Primer Pair in PALs	R1_Sequence_ID	R1_Sequence	R2_Sequence_ID	R2_Sequence
-ILLUMINA-545855:49:FC61RLR:2:1:10979:1695	TC(14) 	14			1	test_7	TTCTCCCACTATATTTTGCATTGG	test_8	TCCAGACTGAAGCTACCCTGG	TC(14) 	14	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 1:N:0:TCCTGA	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 2:N:0:TCCTGA	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
-ILLUMINA-545855:49:FC61RLR:2:1:1978:1220	AC(12) 	12			1	test_3	GCAGTAAACAAAGGCAAAGGG	test_4	CCTGGGCAGAGGTGTTCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 1:N:0:TCCTGA	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 2:N:0:TCCTGA	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
-ILLUMINA-545855:49:FC61RLR:2:1:8157:1636	AC(12) 	12			1	test_5	AAGTACAGTGGGGAGGCTGG	test_6	TTTTCTACACAGCTCAAGTAGCCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 1:N:0:TCCTGA	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 2:N:0:TCCTGA	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats_occurrences.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,4 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	(AG|TC)\(14\)\ \	14\	\	\	1\	test\_.*\	TTCTCCCACTATATTTTGCATTGG\	test\_.*\	TCCAGACTGAAGCTACCCTGG\	(AG|TC)\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	GCAGTAAACAAAGGCAAAGGG\	test\_.*\	CCTGGGCAGAGGTGTTCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	AAGTACAGTGGGGAGGCTGG\	test\_.*\	TTTTCTACACAGCTCAAGTAGCCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats_occurrences.out.re_match~	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,4 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	AG\(14\)\ \	14\	\	\	1\	test\_7\	TTCTCCCACTATATTTTGCATTGG\	test\_6\	TCCAGACTGAAGCTACCCTGG\	AG\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	AC\(12\)\ \	12\	\	\	1\	test\_5\	GCAGTAAACAAAGGCAAAGGG\	test\_2\	CCTGGGCAGAGGTGTTCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	AC\(12\)\ \	12\	\	\	1\	test\_8\	AAGTACAGTGGGGAGGCTGG\	test\_4\	TTTTCTACACAGCTCAAGTAGCCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
--- a/test-data/illuminaPE_filtered_microsats_primers.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,5 +0,0 @@
-readPairID	Motifs(bases)	Bases in all Motifs	Possible Extended	Possible Spanning	Primers found (1=y,0=n)	F Primer Name	Forward Primer	R Primer Name	Reverse Primer	Amplicon Motifs	Number motif bases in amplicon	Primers on sep reads	Extend with primers	Spand with primers	Occurances of Forward Primer in Reads	Occurances of Reverse Primer in Reads	Occurances of Amplifiable Primer Pair in Reads	Occurances of Amplifiable Primer Pair in PALs	R1_Sequence_ID	R1_Sequence	R2_Sequence_ID	R2_Sequence
-ILLUMINA-545855:49:FC61RLR:2:1:10979:1695	TC(14) 	14			1	test_7	TTCTCCCACTATATTTTGCATTGG	test_8	TCCAGACTGAAGCTACCCTGG	TC(14) 	14	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 1:N:0:TCCTGA	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 2:N:0:TCCTGA	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
-ILLUMINA-545855:49:FC61RLR:2:1:1978:1220	AC(12) 	12			1	test_3	GCAGTAAACAAAGGCAAAGGG	test_4	CCTGGGCAGAGGTGTTCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 1:N:0:TCCTGA	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 2:N:0:TCCTGA	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
-ILLUMINA-545855:49:FC61RLR:2:1:8157:1636	AC(12) 	12			1	test_5	AAGTACAGTGGGGAGGCTGG	test_6	TTTTCTACACAGCTCAAGTAGCCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 1:N:0:TCCTGA	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 2:N:0:TCCTGA	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
-ILLUMINA-545855:49:FC61RLR:2:1:8899:1514	AC(12) AC(12) 	24			1	test_2	TCTTTATCTAAACACATCCTGAAATACC	test_1	AAACGCAATTATTTTGAGATGTCC	AC(12) AC(12) 	24	1			1	2	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:8899:1514 1:N:0:TCCTGA	TCTTTATCTAAACACATCCTGAAATACCATCTGTTACACACACACACAGCAGTGGAAGTATAAAAAAAAATCTGGACATCTCAAAATAATTGCGTTTCTGAAGTGTTACATTTTTC	>ILLUMINA-545855:49:FC61RLR:2:1:8899:1514 2:N:0:TCCTGA	TATCATTGAAATTTTTATAAAAACTGTGAAGAGAAAAATGTAACACTTCAGAAACGCAATTATTTTGAGATGTCCAGATTTTTTTTTATACTTCCACTGCTGTGTGTGTGTGTAAC
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats_primers.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,5 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	(AG|TC)\(14\)\ \	14\	\	\	1\	test\_.*\	TTCTCCCACTATATTTTGCATTGG\	test\_.*\	TCCAGACTGAAGCTACCCTGG\	(AG|TC)\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	GCAGTAAACAAAGGCAAAGGG\	test\_.*\	CCTGGGCAGAGGTGTTCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	AAGTACAGTGGGGAGGCTGG\	test\_.*\	TTTTCTACACAGCTCAAGTAGCCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\	(AC|TG)\(12\)\ (AC|TG)\(12\)\ \	24\	\	\	1\	test\_.*\	TCTTTATCTAAACACATCCTGAAATACC\	test\_.*\	AAACGCAATTATTTTGAGATGTCC\	(AC|TG)\(12\)\ (AC|TG)\(12\)\ \	24\	1\	\	\	1\	2\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\ 1\:N\:0\:TCCTGA\	TCTTTATCTAAACACATCCTGAAATACCATCTGTTACACACACACACAGCAGTGGAAGTATAAAAAAAAATCTGGACATCTCAAAATAATTGCGTTTCTGAAGTGTTACATTTTTC\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\ 2\:N\:0\:TCCTGA\	TATCATTGAAATTTTTATAAAAACTGTGAAGAGAAAAATGTAACACTTCAGAAACGCAATTATTTTGAGATGTCCAGATTTTTTTTTATACTTCCACTGCTGTGTGTGTGTGTAAC
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats_primers.out.re_match~	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,5 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	AG\(14\)\ \	14\	\	\	1\	test\_7\	TTCTCCCACTATATTTTGCATTGG\	test\_2\	TCCAGACTGAAGCTACCCTGG\	AG\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	TG\(12\)\ \	12\	\	\	1\	test\_5\	GCAGTAAACAAAGGCAAAGGG\	test\_3\	CCTGGGCAGAGGTGTTCC\	TG\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	TG\(12\)\ \	12\	\	\	1\	test\_4\	AAGTACAGTGGGGAGGCTGG\	test\_6\	TTTTCTACACAGCTCAAGTAGCCC\	TG\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\	TG\(12\)\ TG\(12\)\ \	24\	\	\	1\	test\_8\	TCTTTATCTAAACACATCCTGAAATACC\	test\_1\	AAACGCAATTATTTTGAGATGTCC\	TG\(12\)\ TG\(12\)\ \	24\	1\	\	\	1\	2\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\ 1\:N\:0\:TCCTGA\	TCTTTATCTAAACACATCCTGAAATACCATCTGTTACACACACACACAGCAGTGGAAGTATAAAAAAAAATCTGGACATCTCAAAATAATTGCGTTTCTGAAGTGTTACATTTTTC\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\ 2\:N\:0\:TCCTGA\	TATCATTGAAATTTTTATAAAAACTGTGAAGAGAAAAATGTAACACTTCAGAAACGCAATTATTTTGAGATGTCCAGATTTTTTTTTATACTTCCACTGCTGTGTGTGTGTGTAAC
--- a/test-data/illuminaPE_filtered_microsats_rankmotifs.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,8 +0,0 @@
-readPairID	Motifs(bases)	Bases in all Motifs	Possible Extended	Possible Spanning	Primers found (1=y,0=n)	F Primer Name	Forward Primer	R Primer Name	Reverse Primer	Amplicon Motifs	Number motif bases in amplicon	Primers on sep reads	Extend with primers	Spand with primers	Occurances of Forward Primer in Reads	Occurances of Reverse Primer in Reads	Occurances of Amplifiable Primer Pair in Reads	Occurances of Amplifiable Primer Pair in PALs	R1_Sequence_ID	R1_Sequence	R2_Sequence_ID	R2_Sequence
-ILLUMINA-545855:49:FC61RLR:2:1:8157:1636	AC(12) 	12			1	test_5	AAGTACAGTGGGGAGGCTGG	test_6	TTTTCTACACAGCTCAAGTAGCCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 1:N:0:TCCTGA	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT	>ILLUMINA-545855:49:FC61RLR:2:1:8157:1636 2:N:0:TCCTGA	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
-ILLUMINA-545855:49:FC61RLR:2:1:8044:1926	AT(12) 	12			0														>ILLUMINA-545855:49:FC61RLR:2:1:8044:1926 1:N:0:TCCTGA	TAGATTTTTTTTTTTATATATATATAAATATAGATGTACATATATTTATATAAATATAAAAGCACAGCATCCTCCTGTCTCTCCTCCTGATTTATTATGGTTAAAGCTTGTGACAG	>ILLUMINA-545855:49:FC61RLR:2:1:8044:1926 2:N:0:TCCTGA	TCAGGCAAGGTCACTGCCACCACTGGGGAGTGCCTGTTTCTGAAGGGCCCAGCCAACTCTGTCACAAGCTTTAACCATAATAAATCAGGAGGAGAGACAGGAGGATGCTGTGCTTT
-ILLUMINA-545855:49:FC61RLR:2:1:6204:1090	TC(12) 	12			0														>ILLUMINA-545855:49:FC61RLR:2:1:6204:1090 1:N:0:TCCTGA	TGCTTTGGTTCTAAGAGAAAAACAATTATTATAAATGTTTATAATTGATGATAAGCATTTTTGTACAAAGCCAAGACCATTCTGAATGAAGCACCCAAAAAGCCCGGAGGCAACAA	>ILLUMINA-545855:49:FC61RLR:2:1:6204:1090 2:N:0:TCCTGA	TGCTTTGGTTCTAAGAGAAAAACAAGTGATGCACAAGCAATTCCTCGCCACCACCCAACTGATGCCCAGCCACCCCCCCAAGCAGTGAAAGAGAGAGAGAGATGAACCCCCTTCAA
-ILLUMINA-545855:49:FC61RLR:2:1:5879:1238	AT(12) 	12			0														>ILLUMINA-545855:49:FC61RLR:2:1:5879:1238 1:N:0:TCCTGA	TCCCCACCCTGTCATGGTTCTATGTTTTTGTTTTTGTTTTTGTTTTTATGGTTTCCGTATTCCACATTAAAACCTTATGTAACGTACGGGCCAATAAATAGTTACTCGCCATATCC	>ILLUMINA-545855:49:FC61RLR:2:1:5879:1238 2:N:0:TCCTGA	TCCCCACCCTGTCATGGTTCTATGTATATATATATAGCCATGTGTGTGGTACCAGGGATAGGTACCTGGGATTGGGGCAGTGACACTTTAGTGCCCCGTACACTACATGATGTTTT
-ILLUMINA-545855:49:FC61RLR:2:1:1978:1220	AC(12) 	12			1	test_3	GCAGTAAACAAAGGCAAAGGG	test_4	CCTGGGCAGAGGTGTTCC	AC(12) 	12	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 1:N:0:TCCTGA	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA	>ILLUMINA-545855:49:FC61RLR:2:1:1978:1220 2:N:0:TCCTGA	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
-ILLUMINA-545855:49:FC61RLR:2:1:17449:1584	AC(36) 	36			0														>ILLUMINA-545855:49:FC61RLR:2:1:17449:1584 1:N:0:TCCTGA	TCGTAGCATGTGTATGCTTTGGGGTTTCATGCTGTTGATTCATAACTGCTGCTGGCTGTAGACTGAACCTTCTGGGTAGGAGGAATATGCTTAGACAAGCACACCAGTCAGCCCGA	>ILLUMINA-545855:49:FC61RLR:2:1:17449:1584 2:N:0:TCCTGA	TCTGTGTGTGAGCACACACACACACACACACACACACACACACACACATGCAGGTACTTGCTCTGCCACCCCTGGCGGGCTGCGTGGTGTGCCTGACGACGTATTCTAATCCTACA
-ILLUMINA-545855:49:FC61RLR:2:1:10979:1695	TC(14) 	14			1	test_7	TTCTCCCACTATATTTTGCATTGG	test_8	TCCAGACTGAAGCTACCCTGG	TC(14) 	14	1			1	1	1	1	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 1:N:0:TCCTGA	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA	>ILLUMINA-545855:49:FC61RLR:2:1:10979:1695 2:N:0:TCCTGA	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats_rankmotifs.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,8 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	AAGTACAGTGGGGAGGCTGG\	test\_.*\	TTTTCTACACAGCTCAAGTAGCCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\ 1\:N\:0\:TCCTGA\	TAGATTTTTTTTTTTATATATATATAAATATAGATGTACATATATTTATATAAATATAAAAGCACAGCATCCTCCTGTCTCTCCTCCTGATTTATTATGGTTAAAGCTTGTGACAG\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\ 2\:N\:0\:TCCTGA\	TCAGGCAAGGTCACTGCCACCACTGGGGAGTGCCTGTTTCTGAAGGGCCCAGCCAACTCTGTCACAAGCTTTAACCATAATAAATCAGGAGGAGAGACAGGAGGATGCTGTGCTTT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\	(AG|TC)\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\ 1\:N\:0\:TCCTGA\	TGCTTTGGTTCTAAGAGAAAAACAATTATTATAAATGTTTATAATTGATGATAAGCATTTTTGTACAAAGCCAAGACCATTCTGAATGAAGCACCCAAAAAGCCCGGAGGCAACAA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\ 2\:N\:0\:TCCTGA\	TGCTTTGGTTCTAAGAGAAAAACAAGTGATGCACAAGCAATTCCTCGCCACCACCCAACTGATGCCCAGCCACCCCCCCAAGCAGTGAAAGAGAGAGAGAGATGAACCCCCTTCAA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\ 1\:N\:0\:TCCTGA\	TCCCCACCCTGTCATGGTTCTATGTTTTTGTTTTTGTTTTTGTTTTTATGGTTTCCGTATTCCACATTAAAACCTTATGTAACGTACGGGCCAATAAATAGTTACTCGCCATATCC\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\ 2\:N\:0\:TCCTGA\	TCCCCACCCTGTCATGGTTCTATGTATATATATATAGCCATGTGTGTGGTACCAGGGATAGGTACCTGGGATTGGGGCAGTGACACTTTAGTGCCCCGTACACTACATGATGTTTT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	GCAGTAAACAAAGGCAAAGGG\	test\_.*\	CCTGGGCAGAGGTGTTCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\	(AC|TG)\(36\)\ \	36\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\ 1\:N\:0\:TCCTGA\	TCGTAGCATGTGTATGCTTTGGGGTTTCATGCTGTTGATTCATAACTGCTGCTGGCTGTAGACTGAACCTTCTGGGTAGGAGGAATATGCTTAGACAAGCACACCAGTCAGCCCGA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\ 2\:N\:0\:TCCTGA\	TCTGTGTGTGAGCACACACACACACACACACACACACACACACACACATGCAGGTACTTGCTCTGCCACCCCTGGCGGGCTGCGTGGTGTGCCTGACGACGTATTCTAATCCTACA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	(AG|TC)\(14\)\ \	14\	\	\	1\	test\_.*\	TTCTCCCACTATATTTTGCATTGG\	test\_.*\	TCCAGACTGAAGCTACCCTGG\	(AG|TC)\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_filtered_microsats_rankmotifs.out.re_match~	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,8 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs\	R1\_Sequence\_ID\	R1\_Sequence\	R2\_Sequence\_ID\	R2\_Sequence
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	AC\(12\)\ \	12\	\	\	1\	test\_3\	AAGTACAGTGGGGAGGCTGG\	test\_4\	TTTTCTACACAGCTCAAGTAGCCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 1\:N\:0\:TCCTGA\	TACTAGTCTAATAATTGCAGGCAGCTGAACTAGATAGGTCCTAAAGTACAGTGGGGAGGCTGGTGTGTGTGTGTGCATGGGATTGTCAGCCTTACCATCAGTCCTGATTTGTAGGT\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\ 2\:N\:0\:TCCTGA\	TAAACAACCAAATGAAACCATCTTTTCTACACAGCTCAAGTAGCCCTACATACAACACAAGCCACCTACAAATCAGGACTGATGGTAAGGCTGACAATCCAATCCACCACAACAAC
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\ 1\:N\:0\:TCCTGA\	TAGATTTTTTTTTTTATATATATATAAATATAGATGTACATATATTTATATAAATATAAAAGCACAGCATCCTCCTGTCTCTCCTCCTGATTTATTATGGTTAAAGCTTGTGACAG\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\ 2\:N\:0\:TCCTGA\	TCAGGCAAGGTCACTGCCACCACTGGGGAGTGCCTGTTTCTGAAGGGCCCAGCCAACTCTGTCACAAGCTTTAACCATAATAAATCAGGAGGAGAGACAGGAGGATGCTGTGCTTT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\	TC\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\ 1\:N\:0\:TCCTGA\	TGCTTTGGTTCTAAGAGAAAAACAATTATTATAAATGTTTATAATTGATGATAAGCATTTTTGTACAAAGCCAAGACCATTCTGAATGAAGCACCCAAAAAGCCCGGAGGCAACAA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\ 2\:N\:0\:TCCTGA\	TGCTTTGGTTCTAAGAGAAAAACAAGTGATGCACAAGCAATTCCTCGCCACCACCCAACTGATGCCCAGCCACCCCCCCAAGCAGTGAAAGAGAGAGAGAGATGAACCCCCTTCAA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\ 1\:N\:0\:TCCTGA\	TCCCCACCCTGTCATGGTTCTATGTTTTTGTTTTTGTTTTTGTTTTTATGGTTTCCGTATTCCACATTAAAACCTTATGTAACGTACGGGCCAATAAATAGTTACTCGCCATATCC\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\ 2\:N\:0\:TCCTGA\	TCCCCACCCTGTCATGGTTCTATGTATATATATATAGCCATGTGTGTGGTACCAGGGATAGGTACCTGGGATTGGGGCAGTGACACTTTAGTGCCCCGTACACTACATGATGTTTT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	AC\(12\)\ \	12\	\	\	1\	test\_6\	GCAGTAAACAAAGGCAAAGGG\	test\_1\	CCTGGGCAGAGGTGTTCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 1\:N\:0\:TCCTGA\	TCATAAGAATGAGCAGTAAACAAAGGCAAAGGGGAGATAACACACACACACAAAATAAAAAAACATCAATTTCTAATACACGCCTTTATTATAAAGAAATAAATCACTGAAAAACA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\ 2\:N\:0\:TCCTGA\	TCCTCTGACTAGGCAACAACAGCTTTTTTGCTCCTGGGCAGAGGTGTTCCGAGTGTATATTTTTTATAATTACGGCGCGCATTGGAAATTGATGTTATTTTATTTTGCGTGTGTGT
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\	AC\(36\)\ \	36\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\ 1\:N\:0\:TCCTGA\	TCGTAGCATGTGTATGCTTTGGGGTTTCATGCTGTTGATTCATAACTGCTGCTGGCTGTAGACTGAACCTTCTGGGTAGGAGGAATATGCTTAGACAAGCACACCAGTCAGCCCGA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\ 2\:N\:0\:TCCTGA\	TCTGTGTGTGAGCACACACACACACACACACACACACACACACACACATGCAGGTACTTGCTCTGCCACCCCTGGCGGGCTGCGTGGTGTGCCTGACGACGTATTCTAATCCTACA
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	TC\(14\)\ \	14\	\	\	1\	test\_7\	TTCTCCCACTATATTTTGCATTGG\	test\_2\	TCCAGACTGAAGCTACCCTGG\	TC\(14\)\ \	14\	1\	\	\	1\	1\	1\	1\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 1\:N\:0\:TCCTGA\	TACTGTTTAGAATAGACTGTTCTCCCACTATATTTTGCATTGGTGCATACTCAGCTTTAGTAATAAGTGTGATTCTGGTAGAGAGAGAGAGAGATACCAACCTCTTCTTCCCACTA\	\>ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\ 2\:N\:0\:TCCTGA\	TACTGTTTAGAAAGCCTGTTCCAGAACTTGATCACTGTCACAGAAAATCTTTCTTACTATCCAGACTGAAGCTACCCTGGTGCAGCTTTGTGCTGTTACCTTGAGTCATGTCATCA
--- a/test-data/illuminaPE_microsat_types.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,14 +0,0 @@
-totalBases:	2320
-allSpan:	0
-totalReads:	20	(2 x 10)
-compound:	2
-broken:	2
-allExtended:	0
-readsWithMicrosat:	13
-
-
-Microsat Type	monomer length	total loci	loci w/ primers	reads with loci	total bases	extended	extended w/ primers	spanning	spanning w/ primers
-TC	2	2	1	2	26	0	0	0	0
-AC	2	7	4	7	116	0	0	0	0
-CG	2	0	0	0	0	0	0	0	0
-AT	2	8	0	6	106	0	0	0	0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_microsat_types.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,16 @@
+allExtended\:\	0
+allSpan\:\	0
+broken\:\	2
+compound\:\	2
+readsWithMicrosat\:\	13
+totalBases\:\	2320
+totalReads\:\	20\	\(2\ x\ 10\)
+
+
+Microsat\ Type\	monomer\ length\	total\ loci\	loci\ w\/\ primers\	reads\ with\ loci\	total\ bases\	extended\	extended\ w\/\ primers\	spanning\	spanning\ w\/\ primers
+(AC\	2\	7\	4\	7\	116\	0\	0\	0\	0)?
+(AG\	2\	0\	0\	0\	0\	0\	0\	0\	0)?
+(AT\	2\	8\	0\	6\	106\	0\	0\	0\	0)?
+CG\	2\	0\	0\	0\	0\	0\	0\	0\	0
+TC\	2\	2\	1\	2\	26\	\	\	\	
+(TG\	2\	7\	4\	7\	116\	\	\	\	)?
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_microsat_types.out.re_match~	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,15 @@
+allExtended\:\	0
+allSpan\:\	0
+broken\:\	2
+compound\:\	2
+readsWithMicrosat\:\	13
+totalBases\:\	2320
+totalReads\:\	20\	\(2\ x\ 10\)
+
+
+Microsat\ Type\	monomer\ length\	total\ loci\	loci\ w\/\ primers\	reads\ with\ loci\	total\ bases\	extended\	extended\ w\/\ primers\	spanning\	spanning\ w\/\ primers
+AC\	2\	7\	4\	7\	116\	0\	0\	0\	0
+AG\	2\	0\	0\	0\	0\	0\	0\	0\	0
+AT\	2\	8\	0\	6\	106\	0\	0\	0\	0
+CG\	2\	0\	0\	0\	0\	0\	0\	0\	0
+TC\	2\	2\	1\	2\	26\	\	\	\	
--- a/test-data/illuminaPE_microsats.out	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-readPairID	Motifs(bases)	Bases in all Motifs	Possible Extended	Possible Spanning	Primers found (1=y,0=n)	F Primer Name	Forward Primer	R Primer Name	Reverse Primer	Amplicon Motifs	Number motif bases in amplicon	Primers on sep reads	Extend with primers	Spand with primers	Occurances of Forward Primer in Reads	Occurances of Reverse Primer in Reads	Occurances of Amplifiable Primer Pair in Reads	Occurances of Amplifiable Primer Pair in PALs
-ILLUMINA-545855:49:FC61RLR:2:1:10979:1695	TC(14) 	14			1	test_7	TTCTCCCACTATATTTTGCATTGG	test_8	TCCAGACTGAAGCTACCCTGG	TC(14) 	14	1			1	1	1	1
-ILLUMINA-545855:49:FC61RLR:2:1:17449:1584	AC(36) 	36			0													
-ILLUMINA-545855:49:FC61RLR:2:1:19063:1614	AT(14) AT(14) AT(14) AT(14) 	56			0													
-ILLUMINA-545855:49:FC61RLR:2:1:1978:1220	AC(12) 	12			1	test_3	GCAGTAAACAAAGGCAAAGGG	test_4	CCTGGGCAGAGGTGTTCC	AC(12) 	12	1			1	1	1	1
-ILLUMINA-545855:49:FC61RLR:2:1:5626:1554	AT(14) AC(16) AC(16) AT(12) 	58			0													
-ILLUMINA-545855:49:FC61RLR:2:1:5879:1238	AT(12) 	12			0													
-ILLUMINA-545855:49:FC61RLR:2:1:6204:1090	TC(12) 	12			0													
-ILLUMINA-545855:49:FC61RLR:2:1:8044:1926	AT(12) 	12			0													
-ILLUMINA-545855:49:FC61RLR:2:1:8157:1636	AC(12) 	12			1	test_5	AAGTACAGTGGGGAGGCTGG	test_6	TTTTCTACACAGCTCAAGTAGCCC	AC(12) 	12	1			1	1	1	1
-ILLUMINA-545855:49:FC61RLR:2:1:8899:1514	AC(12) AC(12) 	24			1	test_2	TCTTTATCTAAACACATCCTGAAATACC	test_1	AAACGCAATTATTTTGAGATGTCC	AC(12) AC(12) 	24	1			1	2	1	1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_microsats.out.re_match	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,11 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	(AG|TC)\(14\)\ \	14\	\	\	1\	test\_.*\	TTCTCCCACTATATTTTGCATTGG\	test\_.*\	TCCAGACTGAAGCTACCCTGG\	(AG|TC)\(14\)\ \	14\	1\	\	\	1\	1\	1\	1
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\	(AC|TG)\(36\)\ \	36\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:19063\:1614\	AT\(14\)\ AT\(14\)\ AT\(14\)\ AT\(14\)\ \	56\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	GCAGTAAACAAAGGCAAAGGG\	test\_.*\	CCTGGGCAGAGGTGTTCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5626\:1554\	AT\(14\)\ (AC|TG)\(16\)\ (AC|TG)\(16\)\ AT\(12\)\ \	58\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\	(AG|TC)\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	(AC|TG)\(12\)\ \	12\	\	\	1\	test\_.*\	AAGTACAGTGGGGAGGCTGG\	test\_.*\	TTTTCTACACAGCTCAAGTAGCCC\	(AC|TG)\(12\)\ \	12\	1\	\	\	1\	1\	1\	1
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\	(AC|TG)\(12\)\ (AC|TG)\(12\)\ \	24\	\	\	1\	test\_.*\	TCTTTATCTAAACACATCCTGAAATACC\	test\_.*\	AAACGCAATTATTTTGAGATGTCC\	(AC|TG)\(12\)\ (AC|TG)\(12\)\ \	24\	1\	\	\	1\	2\	1\	1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/illuminaPE_microsats.out.re_match~	Thu Mar 15 09:49:05 2018 -0400
@@ -0,0 +1,11 @@
+readPairID\	Motifs\(bases\)\	Bases\ in\ all\ Motifs\	Possible\ Extended\	Possible\ Spanning\	Primers\ found\ \(1\=y\,0\=n\)\	F\ Primer\ Name\	Forward\ Primer\	R\ Primer\ Name\	Reverse\ Primer\	Amplicon\ Motifs\	Number\ motif\ bases\ in\ amplicon\	Primers\ on\ sep\ reads\	Extend\ with\ primers\	Spand\ with\ primers\	Occurances\ of\ Forward\ Primer\ in\ Reads\	Occurances\ of\ Reverse\ Primer\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ Reads\	Occurances\ of\ Amplifiable\ Primer\ Pair\ in\ PALs
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:10979\:1695\	TC\(14\)\ \	14\	\	\	1\	test\_7\	TTCTCCCACTATATTTTGCATTGG\	test\_2\	TCCAGACTGAAGCTACCCTGG\	TC\(14\)\ \	14\	1\	\	\	1\	1\	1\	1
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:17449\:1584\	AC\(36\)\ \	36\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:19063\:1614\	AT\(14\)\ AT\(14\)\ AT\(14\)\ AT\(14\)\ \	56\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:1978\:1220\	AC\(12\)\ \	12\	\	\	1\	test\_6\	GCAGTAAACAAAGGCAAAGGG\	test\_1\	CCTGGGCAGAGGTGTTCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5626\:1554\	AT\(14\)\ AC\(16\)\ AC\(16\)\ AT\(12\)\ \	58\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:5879\:1238\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:6204\:1090\	TC\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8044\:1926\	AT\(12\)\ \	12\	\	\	0\	\	\	\	\	\	\	\	\	\	\	\	\	
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8157\:1636\	AC\(12\)\ \	12\	\	\	1\	test\_3\	AAGTACAGTGGGGAGGCTGG\	test\_4\	TTTTCTACACAGCTCAAGTAGCCC\	AC\(12\)\ \	12\	1\	\	\	1\	1\	1\	1
+ILLUMINA\-545855\:49\:FC61RLR\:2\:1\:8899\:1514\	AC\(12\)\ AC\(12\)\ \	24\	\	\	1\	test\_8\	TCTTTATCTAAACACATCCTGAAATACC\	test\_5\	AAACGCAATTATTTTGAGATGTCC\	AC\(12\)\ AC\(12\)\ \	24\	1\	\	\	1\	2\	1\	1
--- a/tool_dependencies.xml	Mon Jul 24 11:04:27 2017 -0400
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,102 +0,0 @@
-<?xml version="1.0"?>
-<tool_dependency>
-    <package name="pal_finder" version="0.02.04">
-      <install version="1.0">
-	<actions>
-	  <action type="download_by_url">http://sourceforge.net/projects/palfinder/files/pal_finder_v0.02.04.tar.gz</action>
-	  <action type="move_file">
-	    <source>pal_finder_v0.02.04.pl</source>
-	    <destination>$INSTALL_DIR/bin</destination>
-	  </action>
-	  <action type="move_file">
-	    <source>config.txt</source>
-	    <destination>$INSTALL_DIR/data</destination>
-	  </action>
-	  <action type="move_file">
-	    <source>simple.ref</source>
-	    <destination>$INSTALL_DIR/data</destination>
-	  </action>
-	  <action type="set_environment">
-	    <environment_variable name="PATH" action="prepend_to">$INSTALL_DIR/bin</environment_variable>
-	  </action>
-	  <action type="set_environment">
-	    <environment_variable name="PALFINDER_SCRIPT_DIR" action="set_to">$INSTALL_DIR/bin</environment_variable>
-	  </action>
-	  <action type="set_environment">
-	    <environment_variable name="PALFINDER_DATA_DIR" action="set_to">$INSTALL_DIR/data</environment_variable>
-	  </action>
-	</actions>
-      </install>
-      <readme>pal_finder also needs Perl</readme>
-    </package>
-    <package name="perl" version="5.16.3">
-      <install version="1.0">
-        <actions>
-          <!-- install perl -->
-          <action type="download_by_url">http://www.cpan.org/src/5.0/perl-5.16.3.tar.gz</action>
-          <action type="shell_command">./Configure -des -Dprefix=$INSTALL_DIR -Dstartperl='#!/usr/bin/env perl'</action>
-          <action type="make_install" />
-          <action type="set_environment">
-            <environment_variable name="PATH" action="prepend_to">$INSTALL_DIR/bin</environment_variable>
-          </action>
-        </actions>
-      </install>
-      <readme>
-        Perl 5 is a highly capable, feature-rich programming language with over 25 years of
-	development:
-
-        http://www.perl.org/
-      </readme>
-    </package>
-    <package name="primer3_core" version="2.0.0">
-      <install version="1.0">
-	<actions>
-	  <action type="download_by_url">https://sourceforge.net/projects/primer3/files/primer3/2.0.0-alpha/primer3-2.0.0-alpha.tar.gz</action>
-	  <action type="shell_command">make -C src -f Makefile</action>
-	  <action type="move_file">
-	    <source>src/primer3_core</source>
-	    <destination>$INSTALL_DIR/bin</destination>
-	  </action>
-	  <action type="set_environment">
-	    <environment_variable name="PATH" action="prepend_to">$INSTALL_DIR/bin</environment_variable>
-	  </action>
-	</actions>
-      </install>
-      <readme>primer3_core</readme>
-    </package>
-    <package name="biopython" version="1.65">
-      <install version="1.0">
-	<actions>
-	  <action type="shell_command">pip install  --install-option "--prefix=$INSTALL_DIR" https://pypi.python.org/packages/source/b/biopython/biopython-1.65.tar.gz</action>
-	  <action type="set_environment">
-	    <environment_variable name="PYTHONPATH" action="prepend_to">$INSTALL_DIR/lib/python2.7/site-packages</environment_variable>
-	    <environment_variable name="PYTHONPATH" action="prepend_to">$INSTALL_DIR/lib64/python2.7/site-packages</environment_variable>
-	  </action>
-	</actions>
-      </install>
-      <readme>BioPython 1.65</readme>
-    </package>
-    <package name="pandaseq" version="2.8.1">
-      <install version="1.0">
-	<actions>
-	  <action type="download_by_url">https://github.com/neufeld/pandaseq/archive/v2.8.1.tar.gz</action>
-	  <action type="shell_command">./autogen.sh</action>
-	  <action type="shell_command">./configure --prefix=$INSTALL_DIR</action>
-	  <action type="shell_command">make</action>
-	  <action type="shell_command">make install</action>
-	  <action type="set_environment">
-	    <environment_variable name="PATH" action="prepend_to">$INSTALL_DIR/bin</environment_variable>
-	    <environment_variable name="LD_LIBRARY_PATH" action="prepend_to">$INSTALL_DIR/lib</environment_variable>
-	  </action>
-	</actions>
-      </install>
-      <readme>PANDASeq 2.8.1
-
-      PANDASEQ is a program to align Illumina reads, optionally
-      with PCR primers embedded in the sequence, and reconstruct
-      an overlapping sequence.
-
-      https://github.com/neufeld/pandaseq
-      </readme>
-    </package>
-</tool_dependency>