<commit_before><tool id="gatk2_unified_genotyper" name="Unified Genotyper" version="0.0.7">
  <description>SNP and indel caller</description>
  <expand macro="requirements" />
  <macros>
    <import>gatk2_macros.xml</import>
  </macros>
  <command interpreter="python">
    gatk2_wrapper.py
    --stdout "${output_log}"
    #for $i, $input_bam in enumerate( $reference_source.input_bams ):
        -d "-I" "${input_bam.input_bam}" "${input_bam.input_bam.ext}" "gatk_input_${i}"
        #if str( $input_bam.input_bam.metadata.bam_index ) != "None":
            -d "" "${input_bam.input_bam.metadata.bam_index}" "bam_index" "gatk_input_${i}" ##hardcode galaxy ext type as bam_index
        #end if
    #end for
    -p '
    @JAR_PATH@
    -T "UnifiedGenotyper"
    @THREADS@
    --out "${output_vcf}"
    --metrics_file "${output_metrics}"
    \$GATK2_SITE_OPTIONS

    ## according to http://www.broadinstitute.org/gatk/guide/article?id=1975
    --num_cpu_threads_per_data_thread 1

    #if $reference_source.reference_source_selector != "history":
        -R "${reference_source.ref_file.fields.path}"
    #end if
    --genotype_likelihoods_model "${genotype_likelihoods_model}"
    --standard_min_confidence_threshold_for_calling "${standard_min_confidence_threshold_for_calling}"
    --standard_min_confidence_threshold_for_emitting "${standard_min_confidence_threshold_for_emitting}"
   '
    @DBSNP_OPTIONS@

    #include source=$standard_gatk_options#
    ##start analysis specific options
    #if $analysis_param_type.analysis_param_type_selector == "advanced":
        -p '
        --heterozygosity "${analysis_param_type.heterozygosity}"
        --pcr_error_rate "${analysis_param_type.pcr_error_rate}"
        --genotyping_mode "${analysis_param_type.genotyping_mode_type.genotyping_mode}"
        #if str( $analysis_param_type.genotyping_mode_type.genotyping_mode ) == 'GENOTYPE_GIVEN_ALLELES':
            --alleles "${analysis_param_type.genotyping_mode_type.input_alleles_rod}"
        #end if
        --output_mode "${analysis_param_type.output_mode}"
        ${analysis_param_type.compute_SLOD}
        --min_base_quality_score "${analysis_param_type.min_base_quality_score}"
        --max_deletion_fraction "${analysis_param_type.max_deletion_fraction}"
        --max_alternate_alleles "${analysis_param_type.max_alternate_alleles}"
        --min_indel_count_for_genotyping "${analysis_param_type.min_indel_count_for_genotyping}"
        --indel_heterozygosity "${analysis_param_type.indel_heterozygosity}"
        --indelGapContinuationPenalty "${analysis_param_type.indelGapContinuationPenalty}"
        --indelGapOpenPenalty "${analysis_param_type.indelGapOpenPenalty}"
        --indelHaplotypeSize "${analysis_param_type.indelHaplotypeSize}"
        ${analysis_param_type.doContextDependentGapPenalties}
        #if str( $analysis_param_type.annotation ) != "None":
            #for $annotation in str( $analysis_param_type.annotation.fields.gatk_value ).split( ','):
                --annotation "${annotation}"
            #end for
        #end if
        #for $additional_annotation in $analysis_param_type.additional_annotations:
            --annotation "${additional_annotation.additional_annotation_name}"
        #end for
        #if str( $analysis_param_type.group ) != "None":
            #for $group in str( $analysis_param_type.group ).split( ','):
                --group "${group}"
            #end for
        #end if
        #if str( $analysis_param_type.exclude_annotations ) != "None":
            #for $annotation in str( $analysis_param_type.exclude_annotations.fields.gatk_value ).split( ','):
                --excludeAnnotation "${annotation}"
            #end for
        #end if
        '
##        #if str( $analysis_param_type.snpEff_rod_bind_type.snpEff_rod_bind_type_selector ) == 'set_snpEff':
##            -p '--annotation "SnpEff"'
##            -d "--snpEffFile:${analysis_param_type.snpEff_rod_bind_type.snpEff_rod_name},%(file_type)s" "${analysis_param_type.snpEff_rod_bind_type.snpEff_input_rod}" "${analysis_param_type.snpEff_rod_bind_type.snpEff_input_rod.ext}" "input_snpEff_${analysis_param_type.snpEff_rod_bind_type.snpEff_rod_name}"
##        #else:
##            -p '--excludeAnnotation "SnpEff"'
##        #end if
    #end if
  </command>
  <inputs>
    <conditional name="reference_source">
      <expand macro="reference_source_selector_param" />
      <when value="cached">
        <repeat name="input_bams" title="BAM file" min="1" help="-I,--input_file &amp;lt;input_file&amp;gt;">
            <param name="input_bam" type="data" format="bam" label="BAM file">
              <validator type="unspecified_build" />
              <validator type="dataset_metadata_in_data_table" table_name="gatk2_picard_indexes" metadata_name="dbkey" metadata_column="dbkey" message="Sequences are not currently available for the specified build." /> <!-- fixme!!! this needs to be a select -->
            </param>
        </repeat>
        <param name="ref_file" type="select" label="Using reference genome" help="-R,--reference_sequence &amp;lt;reference_sequence&amp;gt;">
          <options from_data_table="gatk2_picard_indexes">
            <!-- <filter type="data_meta" key="dbkey" ref="input_bam" column="dbkey"/> does not yet work in a repeat...--> 
          </options>
          <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
        </param>
      </when>
      <when value="history"> <!-- FIX ME!!!! -->
        <repeat name="input_bams" title="BAM file" min="1" help="-I,--input_file &amp;lt;input_file&amp;gt;">
            <param name="input_bam" type="data" format="bam" label="BAM file" >
            </param>
        </repeat>
        <param name="ref_file" type="data" format="fasta" label="Using reference file" help="-R,--reference_sequence &amp;lt;reference_sequence&amp;gt;" />
      </when>
    </conditional>
    <expand macro="dbsnp_param" />
    
    <param name="genotype_likelihoods_model" type="select" label="Genotype likelihoods calculation model to employ" help="-glm,--genotype_likelihoods_model &amp;lt;genotype_likelihoods_model&amp;gt;">
      <option value="BOTH" selected="True">BOTH</option>
      <option value="SNP">SNP</option>
      <option value="INDEL">INDEL</option>
    </param>
    
    <param name="standard_min_confidence_threshold_for_calling" type="float" value="30.0" label="The minimum phred-scaled confidence threshold at which variants not at 'trigger' track sites should be called" help="-stand_call_conf,--standard_min_confidence_threshold_for_calling &amp;lt;standard_min_confidence_threshold_for_calling&amp;gt;" />
    <param name="standard_min_confidence_threshold_for_emitting" type="float" value="30.0" label="The minimum phred-scaled confidence threshold at which variants not at 'trigger' track sites should be emitted (and filtered if less than the calling threshold)" help="-stand_emit_conf,--standard_min_confidence_threshold_for_emitting &amp;lt;standard_min_confidence_threshold_for_emitting&amp;gt;" />

    
    <expand macro="gatk_param_type_conditional" />
    
    <expand macro="analysis_type_conditional">
        <param name="heterozygosity" type="float" value="1e-3" label="Heterozygosity value used to compute prior likelihoods for any locus" help="-hets,--heterozygosity &amp;lt;heterozygosity&amp;gt;" />
        <param name="pcr_error_rate" type="float" value="1e-4" label="The PCR error rate to be used for computing fragment-based likelihoods" help="-pcr_error,--pcr_error_rate &amp;lt;pcr_error_rate&amp;gt;" />
        <conditional name="genotyping_mode_type">
          <param name="genotyping_mode" type="select" label="How to determine the alternate allele to use for genotyping" help="-gt_mode,--genotyping_mode &amp;lt;genotyping_mode&amp;gt;">
            <option value="DISCOVERY" selected="True">DISCOVERY</option>
            <option value="GENOTYPE_GIVEN_ALLELES">GENOTYPE_GIVEN_ALLELES</option>
          </param>
          <when value="DISCOVERY">
            <!-- Do nothing here -->
          </when>
          <when value="GENOTYPE_GIVEN_ALLELES">
            <param name="input_alleles_rod" type="data" format="vcf" label="Alleles ROD file" help="-alleles,--alleles &amp;lt;alleles&amp;gt;" />
          </when>
        </conditional>
        <param name="output_mode" type="select" label="Should we output confident genotypes (i.e. including ref calls) or just the variants?" help="-out_mode,--output_mode &amp;lt;output_mode&amp;gt;">
          <option value="EMIT_VARIANTS_ONLY" selected="True">EMIT_VARIANTS_ONLY</option>
          <option value="EMIT_ALL_CONFIDENT_SITES">EMIT_ALL_CONFIDENT_SITES</option>
          <option value="EMIT_ALL_SITES">EMIT_ALL_SITES</option>
        </param>
        <param name="compute_SLOD" type="boolean" truevalue="--computeSLOD" falsevalue="" label="Compute the SLOD" help="--computeSLOD" />
        <param name="min_base_quality_score" type="integer" value="17" label="Minimum base quality required to consider a base for calling" help="-mbq,--min_base_quality_score &amp;lt;min_base_quality_score&amp;gt;" />
        <param name="max_deletion_fraction" type="float" value="0.05" label="Maximum fraction of reads with deletions spanning this locus for it to be callable" help="to disable, set to &lt; 0 or &gt; 1 (-deletions,--max_deletion_fraction &amp;lt;max_deletion_fraction&amp;gt;)" />
        <param name="max_alternate_alleles" type="integer" value="6" label="Maximum number of alternate alleles to genotype" help="-maxAlleles,--max_alternate_alleles &amp;lt;max_alternate_alleles&amp;gt;" />
        <param name="min_indel_count_for_genotyping" type="integer" value="5" label="Minimum number of consensus indels required to trigger genotyping run" help="-minIndelCnt,--min_indel_count_for_genotyping &amp;lt;min_indel_count_for_genotyping&amp;gt;" />
        <param name="indel_heterozygosity" type="float" value="0.000125" label="Heterozygosity for indel calling" help="1.0/8000==0.000125 (-indelHeterozygosity,--indel_heterozygosity &amp;lt;indel_heterozygosity&amp;gt;)"/>
        <param name="indelGapContinuationPenalty" type="integer" value="10" label="Indel gap continuation penalty" help="As Phred-scaled probability, i.e. 30 => 10^-30/10 (--indelGapContinuationPenalty)">
          <validator type="in_range" message="value between 0 and 255" min="0" max="255" />
        </param>
        <param name="indelGapOpenPenalty" type="integer" value="45" label="Indel gap open penalty" help="As Phred-scaled probability, i.e. 30 => 10^-30/10 (--indelGapOpenPenalty)">
          <validator type="in_range" message="value between 0 and 255" min="0" max="255" />
        </param>
        <!-- indelHaplotypeSize - Gone in GATK 2.4? -->
        <param name="indelHaplotypeSize" type="integer" value="80" label="Indel haplotype size" help="--indelHaplotypeSize" />
        <param name="doContextDependentGapPenalties" type="boolean" truevalue="--doContextDependentGapPenalties" falsevalue="" label="Vary gap penalties by context" help="--doContextDependentGapPenalties" />
        <param name="annotation" type="select" multiple="True" display="checkboxes" label="Annotation Types" help="-A,--annotation &amp;lt;annotation&amp;gt;">
          <!-- load the available annotations from an external configuration file, since additional ones can be added to local installs -->
          <options from_data_table="gatk2_annotations">
            <filter type="multiple_splitter" column="tools_valid_for" separator=","/>
            <filter type="static_value" value="UnifiedGenotyper" column="tools_valid_for"/>
          </options>
        </param>
        <repeat name="additional_annotations" title="Additional annotation" help="-A,--annotation &amp;lt;annotation&amp;gt;">
          <param name="additional_annotation_name" type="text" value="" label="Annotation name" />
        </repeat>
<!--
        <conditional name="snpEff_rod_bind_type">
          <param name="snpEff_rod_bind_type_selector" type="select" label="Provide a snpEff reference-ordered data file">
            <option value="set_snpEff">Set snpEff</option>
            <option value="exclude_snpEff" selected="True">Don't set snpEff</option>
          </param>
          <when value="exclude_snpEff">
          </when>
          <when value="set_snpEff">
            <param name="snpEff_input_rod" type="data" format="vcf" label="ROD file" />
            <param name="snpEff_rod_name" type="hidden" value="snpEff" label="ROD Name"/>
          </when>
        </conditional>
-->
        <param name="group" type="select" multiple="True" display="checkboxes" label="Annotation Interfaces/Groups" help="-G,--group &amp;lt;group&amp;gt;">
            <option value="RodRequiringAnnotation">RodRequiringAnnotation</option>
            <option value="Standard">Standard</option>
            <option value="Experimental">Experimental</option>
            <option value="WorkInProgress">WorkInProgress</option>
            <option value="RankSumTest">RankSumTest</option>
            <!-- <option value="none">none</option> -->
        </param>
    <!--     <param name="family_string" type="text" value="" label="Family String"/> -->
        <param name="exclude_annotations" type="select" multiple="True" display="checkboxes" label="Annotations to exclude" help="-XA,--excludeAnnotation &amp;lt;excludeAnnotation&amp;gt;" >
          <!-- load the available annotations from an external configuration file, since additional ones can be added to local installs -->
          <options from_data_table="gatk2_annotations">
            <filter type="multiple_splitter" column="tools_valid_for" separator=","/>
            <filter type="static_value" value="UnifiedGenotyper" column="tools_valid_for"/>
          </options>
        </param>
    </expand>
  </inputs>
  <outputs>
    <data format="vcf" name="output_vcf" label="${tool.name} on ${on_string} (VCF)" />
    <data format="txt" name="output_metrics" label="${tool.name} on ${on_string} (metrics)" /><commit_msg>Re-add "--sample_ploidy" parameter as suggested by <NAME>weyer.<commit_after><tool id="gatk2_unified_genotyper" name="Unified Genotyper" version="0.0.7">
  <description>SNP and indel caller</description>
  <expand macro="requirements" />
  <macros>
    <import>gatk2_macros.xml</import>
  </macros>
  <command interpreter="python">
    gatk2_wrapper.py
    --stdout "${output_log}"
    #for $i, $input_bam in enumerate( $reference_source.input_bams ):
        -d "-I" "${input_bam.input_bam}" "${input_bam.input_bam.ext}" "gatk_input_${i}"
        #if str( $input_bam.input_bam.metadata.bam_index ) != "None":
            -d "" "${input_bam.input_bam.metadata.bam_index}" "bam_index" "gatk_input_${i}" ##hardcode galaxy ext type as bam_index
        #end if
    #end for
    -p '
    @JAR_PATH@
    -T "UnifiedGenotyper"
    @THREADS@
    --out "${output_vcf}"
    --metrics_file "${output_metrics}"
    \$GATK2_SITE_OPTIONS

    ## according to http://www.broadinstitute.org/gatk/guide/article?id=1975
    --num_cpu_threads_per_data_thread 1

    #if $reference_source.reference_source_selector != "history":
        -R "${reference_source.ref_file.fields.path}"
    #end if
    --genotype_likelihoods_model "${genotype_likelihoods_model}"
    --standard_min_confidence_threshold_for_calling "${standard_min_confidence_threshold_for_calling}"
    --standard_min_confidence_threshold_for_emitting "${standard_min_confidence_threshold_for_emitting}"
   '
    @DBSNP_OPTIONS@

    #include source=$standard_gatk_options#
    ##start analysis specific options
    #if $analysis_param_type.analysis_param_type_selector == "advanced":
        -p '
        --heterozygosity "${analysis_param_type.heterozygosity}"
        --pcr_error_rate "${analysis_param_type.pcr_error_rate}"
        --genotyping_mode "${analysis_param_type.genotyping_mode_type.genotyping_mode}"
        #if str( $analysis_param_type.genotyping_mode_type.genotyping_mode ) == 'GENOTYPE_GIVEN_ALLELES':
            --alleles "${analysis_param_type.genotyping_mode_type.input_alleles_rod}"
        #end if
        --output_mode "${analysis_param_type.output_mode}"
        ${analysis_param_type.compute_SLOD}
        --min_base_quality_score "${analysis_param_type.min_base_quality_score}"
        --max_deletion_fraction "${analysis_param_type.max_deletion_fraction}"
        --max_alternate_alleles "${analysis_param_type.max_alternate_alleles}"
        --min_indel_count_for_genotyping "${analysis_param_type.min_indel_count_for_genotyping}"
        --indel_heterozygosity "${analysis_param_type.indel_heterozygosity}"
        --indelGapContinuationPenalty "${analysis_param_type.indelGapContinuationPenalty}"
        --indelGapOpenPenalty "${analysis_param_type.indelGapOpenPenalty}"
        --indelHaplotypeSize "${analysis_param_type.indelHaplotypeSize}"
        ${analysis_param_type.doContextDependentGapPenalties}
        #if str( $analysis_param_type.annotation ) != "None":
            #for $annotation in str( $analysis_param_type.annotation.fields.gatk_value ).split( ','):
                --annotation "${annotation}"
            #end for
        #end if
        #for $additional_annotation in $analysis_param_type.additional_annotations:
            --annotation "${additional_annotation.additional_annotation_name}"
        #end for
        #if str( $analysis_param_type.group ) != "None":
            #for $group in str( $analysis_param_type.group ).split( ','):
                --group "${group}"
            #end for
        #end if
        #if str( $analysis_param_type.exclude_annotations ) != "None":
            #for $annotation in str( $analysis_param_type.exclude_annotations.fields.gatk_value ).split( ','):
                --excludeAnnotation "${annotation}"
            #end for
        #end if
        #if str( $analysis_param_type.sample_ploidy ) != '':
          --sample_ploidy "$analysis_param_type.sample_ploidy"
        #end if
        '
##        #if str( $analysis_param_type.snpEff_rod_bind_type.snpEff_rod_bind_type_selector ) == 'set_snpEff':
##            -p '--annotation "SnpEff"'
##            -d "--snpEffFile:${analysis_param_type.snpEff_rod_bind_type.snpEff_rod_name},%(file_type)s" "${analysis_param_type.snpEff_rod_bind_type.snpEff_input_rod}" "${analysis_param_type.snpEff_rod_bind_type.snpEff_input_rod.ext}" "input_snpEff_${analysis_param_type.snpEff_rod_bind_type.snpEff_rod_name}"
##        #else:
##            -p '--excludeAnnotation "SnpEff"'
##        #end if
    #end if
  </command>
  <inputs>
    <conditional name="reference_source">
      <expand macro="reference_source_selector_param" />
      <when value="cached">
        <repeat name="input_bams" title="BAM file" min="1" help="-I,--input_file &amp;lt;input_file&amp;gt;">
            <param name="input_bam" type="data" format="bam" label="BAM file">
              <validator type="unspecified_build" />
              <validator type="dataset_metadata_in_data_table" table_name="gatk2_picard_indexes" metadata_name="dbkey" metadata_column="dbkey" message="Sequences are not currently available for the specified build." /> <!-- fixme!!! this needs to be a select -->
            </param>
        </repeat>
        <param name="ref_file" type="select" label="Using reference genome" help="-R,--reference_sequence &amp;lt;reference_sequence&amp;gt;">
          <options from_data_table="gatk2_picard_indexes">
            <!-- <filter type="data_meta" key="dbkey" ref="input_bam" column="dbkey"/> does not yet work in a repeat...--> 
          </options>
          <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
        </param>
      </when>
      <when value="history"> <!-- FIX ME!!!! -->
        <repeat name="input_bams" title="BAM file" min="1" help="-I,--input_file &amp;lt;input_file&amp;gt;">
            <param name="input_bam" type="data" format="bam" label="BAM file" >
            </param>
        </repeat>
        <param name="ref_file" type="data" format="fasta" label="Using reference file" help="-R,--reference_sequence &amp;lt;reference_sequence&amp;gt;" />
      </when>
    </conditional>
    <expand macro="dbsnp_param" />
    
    <param name="genotype_likelihoods_model" type="select" label="Genotype likelihoods calculation model to employ" help="-glm,--genotype_likelihoods_model &amp;lt;genotype_likelihoods_model&amp;gt;">
      <option value="BOTH" selected="True">BOTH</option>
      <option value="SNP">SNP</option>
      <option value="INDEL">INDEL</option>
    </param>
    
    <param name="standard_min_confidence_threshold_for_calling" type="float" value="30.0" label="The minimum phred-scaled confidence threshold at which variants not at 'trigger' track sites should be called" help="-stand_call_conf,--standard_min_confidence_threshold_for_calling &amp;lt;standard_min_confidence_threshold_for_calling&amp;gt;" />
    <param name="standard_min_confidence_threshold_for_emitting" type="float" value="30.0" label="The minimum phred-scaled confidence threshold at which variants not at 'trigger' track sites should be emitted (and filtered if less than the calling threshold)" help="-stand_emit_conf,--standard_min_confidence_threshold_for_emitting &amp;lt;standard_min_confidence_threshold_for_emitting&amp;gt;" />

    
    <expand macro="gatk_param_type_conditional" />
    
    <expand macro="analysis_type_conditional">
        <param name="heterozygosity" type="float" value="1e-3" label="Heterozygosity value used to compute prior likelihoods for any locus" help="-hets,--heterozygosity &amp;lt;heterozygosity&amp;gt;" />
        <param name="pcr_error_rate" type="float" value="1e-4" label="The PCR error rate to be used for computing fragment-based likelihoods" help="-pcr_error,--pcr_error_rate &amp;lt;pcr_error_rate&amp;gt;" />
        <conditional name="genotyping_mode_type">
          <param name="genotyping_mode" type="select" label="How to determine the alternate allele to use for genotyping" help="-gt_mode,--genotyping_mode &amp;lt;genotyping_mode&amp;gt;">
            <option value="DISCOVERY" selected="True">DISCOVERY</option>
            <option value="GENOTYPE_GIVEN_ALLELES">GENOTYPE_GIVEN_ALLELES</option>
          </param>
          <when value="DISCOVERY">
            <!-- Do nothing here -->
          </when>
          <when value="GENOTYPE_GIVEN_ALLELES">
            <param name="input_alleles_rod" type="data" format="vcf" label="Alleles ROD file" help="-alleles,--alleles &amp;lt;alleles&amp;gt;" />
          </when>
        </conditional>
        <param name="output_mode" type="select" label="Should we output confident genotypes (i.e. including ref calls) or just the variants?" help="-out_mode,--output_mode &amp;lt;output_mode&amp;gt;">
          <option value="EMIT_VARIANTS_ONLY" selected="True">EMIT_VARIANTS_ONLY</option>
          <option value="EMIT_ALL_CONFIDENT_SITES">EMIT_ALL_CONFIDENT_SITES</option>
          <option value="EMIT_ALL_SITES">EMIT_ALL_SITES</option>
        </param>
        <param name="compute_SLOD" type="boolean" truevalue="--computeSLOD" falsevalue="" label="Compute the SLOD" help="--computeSLOD" />
        <param name="min_base_quality_score" type="integer" value="17" label="Minimum base quality required to consider a base for calling" help="-mbq,--min_base_quality_score &amp;lt;min_base_quality_score&amp;gt;" />
        <param name="max_deletion_fraction" type="float" value="0.05" label="Maximum fraction of reads with deletions spanning this locus for it to be callable" help="to disable, set to &lt; 0 or &gt; 1 (-deletions,--max_deletion_fraction &amp;lt;max_deletion_fraction&amp;gt;)" />
        <param name="max_alternate_alleles" type="integer" value="6" label="Maximum number of alternate alleles to genotype" help="-maxAlleles,--max_alternate_alleles &amp;lt;max_alternate_alleles&amp;gt;" />
        <param name="min_indel_count_for_genotyping" type="integer" value="5" label="Minimum number of consensus indels required to trigger genotyping run" help="-minIndelCnt,--min_indel_count_for_genotyping &amp;lt;min_indel_count_for_genotyping&amp;gt;" />
        <param name="indel_heterozygosity" type="float" value="0.000125" label="Heterozygosity for indel calling" help="1.0/8000==0.000125 (-indelHeterozygosity,--indel_heterozygosity &amp;lt;indel_heterozygosity&amp;gt;)"/>
        <param name="indelGapContinuationPenalty" type="integer" value="10" label="Indel gap continuation penalty" help="As Phred-scaled probability, i.e. 30 => 10^-30/10 (--indelGapContinuationPenalty)">
          <validator type="in_range" message="value between 0 and 255" min="0" max="255" />
        </param>
        <param name="indelGapOpenPenalty" type="integer" value="45" label="Indel gap open penalty" help="As Phred-scaled probability, i.e. 30 => 10^-30/10 (--indelGapOpenPenalty)">
          <validator type="in_range" message="value between 0 and 255" min="0" max="255" />
        </param>
        <!-- indelHaplotypeSize - Gone in GATK 2.4? -->
        <param name="indelHaplotypeSize" type="integer" value="80" label="Indel haplotype size" help="--indelHaplotypeSize" />
        <param name="doContextDependentGapPenalties" type="boolean" truevalue="--doContextDependentGapPenalties" falsevalue="" label="Vary gap penalties by context" help="--doContextDependentGapPenalties" />
        <param name="annotation" type="select" multiple="True" display="checkboxes" label="Annotation Types" help="-A,--annotation &amp;lt;annotation&amp;gt;">
          <!-- load the available annotations from an external configuration file, since additional ones can be added to local installs -->
          <options from_data_table="gatk2_annotations">
            <filter type="multiple_splitter" column="tools_valid_for" separator=","/>
            <filter type="static_value" value="UnifiedGenotyper" column="tools_valid_for"/>
          </options>
        </param>
        <repeat name="additional_annotations" title="Additional annotation" help="-A,--annotation &amp;lt;annotation&amp;gt;">
          <param name="additional_annotation_name" type="text" value="" label="Annotation name" />
        </repeat>
<!--
        <conditional name="snpEff_rod_bind_type">
          <param name="snpEff_rod_bind_type_selector" type="select" label="Provide a snpEff reference-ordered data file">
            <option value="set_snpEff">Set snpEff</option>
            <option value="exclude_snpEff" selected="True">Don't set snpEff</option>
          </param>
          <when value="exclude_snpEff">
          </when>
          <when value="set_snpEff">
            <param name="snpEff_input_rod" type="data" format="vcf" label="ROD file" />
            <param name="snpEff_rod_name" type="hidden" value="snpEff" label="ROD Name"/>
          </when>
        </conditional>
-->
        <param name="group" type="select" multiple="True" display="checkboxes" label="Annotation Interfaces/Groups" help="-G,--group &amp;lt;group&amp;gt;">
            <option value="RodRequiringAnnotation">RodRequiringAnnotation</option>
            <option value="Standard">Standard</option>
            <option value="Experimental">Experimental</option>
            <option value="WorkInProgress">WorkInProgress</option>
            <option value="RankSumTest">RankSumTest</option>
            <!-- <option value="none">none</option> -->
        </param>
    <!--     <param name="family_string" type="text" value="" label="Family String"/> -->
        <param name="exclude_annotations" type="select" multiple="True" display="checkboxes" label="Annotations to exclude" help="-XA,--excludeAnnotation &amp;lt;excludeAnnotation&amp;gt;" >
          <!-- load the available annotations from an external configuration file, since additional ones can be added to local installs -->
          <options from_data_table="gatk2_annotations">
            <filter type="multiple_splitter" column="tools_valid_for" separator=","/>
            <filter type="static_value" value="UnifiedGenotyper" column="tools_valid_for"/>
          </options>
        </param>
        <param name="sample_ploidy" type="integer" value="2" label="Ploidy (number of chromosomes) per sample. For pooled data, set to (Number of samples in each pool * Sample Ploidy)" help="-ploidy,--sample_ploidy" />
    </expand>
  </inputs>
  <outputs>
    <data format="vcf" name="output_vcf" label="${tool.name} on ${on_string} (VCF)" />
    <data format="txt" name="output_metrics" label="${tool.name} on ${on_string} (metrics)" />
{'fraction_non_alphanumeric': 0.13688212927756654, 'fraction_numerical': 0.006802246485505982, 'mean_word_length': 3.9598615916955016, 'pattern_counts': {'":': 12, '<': 293, '<?xml version=': 0, '>': 297, 'https://': 0, 'lorem ipsum': 0, 'www.': 2, 'xml': 2}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '3910898', 'n_tokens_mistral': 9286, 'n_tokens_neox': 8757, 'n_words': 1713}