﻿<?xml version="1.0" encoding="utf-8"?>
<AFSeq>
  <!--AFSeq element contains everything you need to run the analysis-->
  <!--Barcodes contains the barcode elements-->
  <Barcodes>
    <!--Each barcode element contains the 6 basepairs that identify a barcode-->
    <Barcode>AGCAAT</Barcode>
    <Barcode>CCTGTT</Barcode>
    <Barcode>GGGTTT</Barcode>
    <Barcode>GAAGGC</Barcode>
    <Barcode>ATCTCA</Barcode>
    <Barcode>ATGGAT</Barcode>
    <Barcode>ATGTCT</Barcode>
    <Barcode>CGTGAC</Barcode>
    <Barcode>TTAGGT</Barcode>
    <Barcode>GTGCAT</Barcode>
    <Barcode>AACTTT</Barcode>
    <Barcode>GGTCTT</Barcode>
    <Barcode>ATAAGG</Barcode>
    <Barcode>ATTGGT</Barcode>
    <Barcode>AGTGAG</Barcode>
    <Barcode>CCCACC</Barcode>
    <Barcode>CGATGC</Barcode>
    <Barcode>GATAGC</Barcode>
    <Barcode>GTCAGA</Barcode>
    <Barcode>TTAAGC</Barcode>
    <Barcode>AACCTG</Barcode>
    <Barcode>CTTTGC</Barcode>
    <Barcode>TGGAGA</Barcode>
    <Barcode>AATTGT</Barcode>
    <Barcode>TGACGA</Barcode>
    <Barcode>CAAATA</Barcode>
    <Barcode>GTTCAG</Barcode>
    <Barcode>CTTCAA</Barcode>
    <Barcode>GTTGGG</Barcode>
    <Barcode>GCTTAG</Barcode>
    <Barcode>TAGCCA</Barcode>
    <Barcode>TAACTT</Barcode>
    <Barcode>CGGATA</Barcode>
    <Barcode>CAGCAG</Barcode>
    <Barcode>AAGTAG</Barcode>
    <Barcode>GGGACG</Barcode>
    <Barcode>CCGTGG</Barcode>
    <Barcode>ATTGTA</Barcode>
    <Barcode>TTTAGA</Barcode>
    <Barcode>CCACGA</Barcode>
    <Barcode>TCATGG</Barcode>
    <Barcode>GAACCA</Barcode>
    <Barcode>TCCTAA</Barcode>
    <Barcode>CAACGC</Barcode>
    <Barcode>AGTGTT</Barcode>
    <Barcode>GGATTA</Barcode>
    <Barcode>TATATA</Barcode>
    <Barcode>GTACAA</Barcode>
  </Barcodes>
  <!--Variants contains all the different sequence variants we are looking for-->
  <Variants>
    <!--Each variant node contains a type node with the sequence for the expected variant, the sequence should start -->
    <Variant>
      <Type>ACGCTGCAAGAGTGAACAACGCGCCC</Type>
      <Type>ACGCTGCAAGAGTGAACAACGCCCGC</Type>
    </Variant>
    <Variant>
      <Type>CAGATCTGAACTTCCCAGCAAGTT</Type>
      <Type>CAGATCTGAACTTCCCAGCAAGCT</Type>
    </Variant>
    <Variant>
      <Type>CTAGAGTTCCACGACTTGACAGAAGGGA</Type>
      <Type>CTAGAGTTCCACGACTTGACAGACATG</Type>
    </Variant>
  </Variants>
  <!--All the advanced options are given in the node below, and are currently set to their default values-->
  <Options>
    <!--The prefix name for all results files that are generated.-->
    <OutputFileNamePrefix Type="System.String">AF_Seq_Results</OutputFileNamePrefix>
    <!--Set to true to read messages during the analysis, false otherwise.  This is good for debugging-->
    <Verbose Type="System.Boolean">True</Verbose>
    <!--If a read is not an exact match to a Barcode/Allele, should the program attempt to match it based on alignments (for variant types) or Hamming distance (for Barcodes). True/False -->
    <AssignImperfectlyMatchedReads Type="System.Boolean">True</AssignImperfectlyMatchedReads>
    <!--The remaining options have to deal with how imperfect matches are assigned to reads.-->
    <!--Begin inexact matching options-->
    <!--The QC score range cannot be determined from the file, so we will parse the number of reads below first to get statistics on how to filter based on quality-->
    <InitialReadsToParse Type="System.Int32">5000</InitialReadsToParse>
    <!--After parsing through an initial number of reads, any read whose quality is lower than this quantile for those initial reads we will not try to assign by aligning to possible alleles (so for example, a 0.02 value means that if a read has an average QC score less than the lowest 2% of reads we initally parsed, than we will not try to align it.  Essentially a junk data filter.  -->
    <QuantileOfAvgReadQualityCutoff Type="System.Single">0.02 </QuantileOfAvgReadQualityCutoff>
    <!--Any read where the number of 'N' characters (as opposed to 'A','C','G' or 'T') is higher than this percentage is not aligned if not an exact match-->
    <MaxPercentageNForInexactMatches Type="System.Single">0.2 </MaxPercentageNForInexactMatches>
    <!--Alignment options, see BLAST documentation or basic bioinformatics book for explanations (look for Smith-Waterman alignment discussions)-->
    <!--Alignment option, value for a match, should be positive-->
    <MatchScore Type="System.Single">1.0 </MatchScore>
    <!--Alignment option, value for a mismatch, should be negative-->
    <MisMatchPenalty Type="System.Single">-2.0</MisMatchPenalty>
    <!--Alignment option, value for Gap Start, should be negative-->
    <GapStartPenalty Type="System.Single">-1.0</GapStartPenalty>
    <!--Alignment option, value for Gap Extension, should be negative-->
    <GapExtendPenalty Type="System.Single">-1</GapExtendPenalty>
    <!--End inexact matching options-->
  </Options>
</AFSeq>