view pyGenomeTracks.xml @ 9:2824d77cd8f8 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/pygenometracks commit d1b394c8e588a78d1b94e3e57922f7ce684ac835"
author iuc
date Wed, 18 Nov 2020 21:33:46 +0000
parents 4ac4e7083b7e
children a1abfa420d9d
line wrap: on
line source

<tool id="pygenomeTracks" name="@BINARY@" version="@WRAPPER_VERSION@">
    <description>plot genomic data tracks</description>
    <macros>
        <token name="@BINARY@">pyGenomeTracks</token>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements" />
    <command detect_errors="exit_code">
<![CDATA[
        ## First symlink data of hic to have the good extension
        #for $counter, $track in enumerate($tracks):
            #if $track.track_file_style_conditional.track_file_style_selector == "hic_matrix_option":
                #for $counter_matrix, $data_matrix in enumerate($track.track_file_style_conditional.matrix_h5_cooler_multiple):
                    #set ext = $data_matrix.extension
                    ln -s $data_matrix ${counter}_${counter_matrix}.$ext &&
                #end for
            #end if
        #end for


        sed '/^$/d' '$tracks_config' &&
        @BINARY@
            --tracks '$tracks_config'
            --region '$region'
            #if $global_args.title != '':
                --title '$global_args.title'
            #end if
            #if $global_args.plotWidth != '':
                --plotWidth $global_args.plotWidth
            #else:
                --width $global_args.width
            #end if
            #if $global_args.height != '':
                --height '$global_args.height'
            #end if
            --fontSize $global_args.fontsize
            --dpi $global_args.dpi
            --trackLabelFraction $global_args.trackLabelFraction
            --trackLabelHAlign $global_args.trackLabelHAlign
            --outFileName plot.$image_file_format
            $global_args.decreasingXAxis
        && mv plot.$image_file_format plot
]]>
    </command>
    <configfiles>
        <configfile name="tracks_config">
## Each track:
#for $counter, $track in enumerate($tracks):
  ## Hi-C Track
  #if $track.track_file_style_conditional.track_file_style_selector == "hic_matrix_option":
    #for $counter_matrix, $data_matrix in enumerate($track.track_file_style_conditional.matrix_h5_cooler_multiple):
[hic_section_${counter}_${counter_matrix}]
      #set ext = $data_matrix.extension
file = ${counter}_${counter_matrix}.$ext
file_type = hic_matrix
      #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
      #else:
title = $data_matrix.name
      #end if
      #if $track.track_file_style_conditional.depth:
depth = $track.track_file_style_conditional.depth
      #end if
      #if $track.track_file_style_conditional.colormap:
colormap = $track.track_file_style_conditional.colormap
      #end if
      #if $track.track_file_style_conditional.min_value != "":
min_value = $track.track_file_style_conditional.min_value
      #end if
      #if $track.track_file_style_conditional.max_value != "":
max_value = $track.track_file_style_conditional.max_value
      #end if
transform = $track.track_file_style_conditional.transform
      #if $track.track_file_style_conditional.height_matrix != "":
height = $track.track_file_style_conditional.height_matrix
      #end if
      #if $track.track_file_style_conditional.show_masked_bins:
show_masked_bins = $track.track_file_style_conditional.show_masked_bins
      #end if
      #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
      #end if
      #if $track.track_file_style_conditional.scale_factor:
scale_factor = $track.track_file_style_conditional.scale_factor
      #end if
rasterize = $track.track_file_style_conditional.rasterize
      ## If a boundary file is given a new section needs to be written:
      #if str($track.track_file_style_conditional.boundaries_file) != "None":
        #if len($track.track_file_style_conditional.boundaries_file)>$counter_matrix:
          #set boundary_file = $track.track_file_style_conditional.boundaries_file[$counter_matrix]
        #else:
          #set boundary_file = $track.track_file_style_conditional.boundaries_file[0]
        #end if
[tads_${counter}_${counter_matrix}]
file = $boundary_file
file_type = domains
border_color = black
color = none
overlay_previous = share-y
      #end if
      ## If spacer is asked a new section is created:
      #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
      #end if
    #end for
  #end if

  ## Chrom_state track
  #if $track.track_file_style_conditional.track_file_style_selector == "chrom_states_option":
    #for $data_bed in $track.track_file_style_conditional.track_input_bed:
[chrom states_$counter]
file = $data_bed
      #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
      #else:
title = $data_bed.name
      #end if
      #if $track.track_file_style_conditional.color_bed.color_bed_select == "bed_rgb":
color = bed_rgb
      #elif $track.track_file_style_conditional.color_bed.color:
color = $track.track_file_style_conditional.color_bed.color
      #end if
      #if $track.track_file_style_conditional.border_color_bed.border_color_bed_select == 'manually':
border_color = $track.track_file_style_conditional.border_color_bed.color
      #else
border_color = $track.track_file_style_conditional.border_color_bed.border_color_bed_select
      #end if
display = collapsed
      #if $track.track_file_style_conditional.height_chrom:
height = $track.track_file_style_conditional.height_chrom
      #end if
line_width = $track.track_file_style_conditional.line_width
file_type = bed
      ## If spacer is asked a new section is created:
      #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
      #end if
    #end for
  #end if

  ## Gene/gtf track
  #if $track.track_file_style_conditional.track_file_style_selector == "gene_track_option":
    #for $counter_bed, $data_bed in enumerate($track.track_file_style_conditional.track_input_bed):
[genes_${counter}_${counter_bed}]
      #set ext = $data_bed.extension
file = $data_bed
      #if $ext == 'gtf':
prefered_name = $track.track_file_style_conditional.bed_style.bed_advanced.gtf.prefered_name
merge_transcripts = $track.track_file_style_conditional.bed_style.bed_advanced.gtf.merge_transcripts
      #end if
      #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
      #elif $track.track_file_style_conditional.overlay_select == 'no':
title = $data_bed.name
      #end if
      #if $track.track_file_style_conditional.color_bed.color_bed_select == "bed_rgb":
color = bed_rgb
      #elif $track.track_file_style_conditional.color_bed.color:
color = $track.track_file_style_conditional.color_bed.color
      #end if
      #if $track.track_file_style_conditional.border_color_bed.border_color_bed_select == 'manually':
border_color = $track.track_file_style_conditional.border_color_bed.color
      #else
border_color = $track.track_file_style_conditional.border_color_bed.border_color_bed_select
      #end if
style = $track.track_file_style_conditional.bed_style.bed_style_select
      #if $track.track_file_style_conditional.bed_style.bed_style_select == 'UCSC':
arrow_interval = $track.track_file_style_conditional.bed_style.bed_advanced.arrow_interval
      #else:
height_utr = $track.track_file_style_conditional.bed_style.bed_advanced.height_utr
        #if $track.track_file_style_conditional.bed_style.bed_advanced.color_utr.color_utr_select == 'manually':
color_utr = $track.track_file_style_conditional.bed_style.bed_advanced.color_utr.color
        #elif $track.track_file_style_conditional.bed_style.bed_advanced.color_utr.color_utr_select == 'bed_rgb':
color_utr = bed_rgb
        #else:
          #if $track.track_file_style_conditional.color_bed.color_bed_select == "bed_rgb":
color_utr = bed_rgb
          #else:
color_utr = $track.track_file_style_conditional.color_bed.color
          #end if
        #end if
        #if $track.track_file_style_conditional.bed_style.bed_style_select == 'tssarrow' and $track.track_file_style_conditional.bed_style.bed_advanced.arrow_length != '':
arrow_length = $track.track_file_style_conditional.bed_style.bed_advanced.arrow_length
        #end if
        #if $track.track_file_style_conditional.bed_style.bed_style_select == 'flybase':
arrowhead_included = $track.track_file_style_conditional.bed_style.arrowhead_included
        #end if
      #end if
display = $track.track_file_style_conditional.display
      #if $track.track_file_style_conditional.height_bed:
height = $track.track_file_style_conditional.height_bed
      #end if
labels = $track.track_file_style_conditional.labels.plot_labels
      #if $track.track_file_style_conditional.labels.plot_labels == 'true':
all_labels_inside = $track.track_file_style_conditional.labels.all_labels_inside
labels_in_margin = $track.track_file_style_conditional.labels.labels_in_margin
      #end if
file_type = $ext
      #if $track.track_file_style_conditional.fontsize:
fontsize = $track.track_file_style_conditional.fontsize
      #end if
      #if $track.track_file_style_conditional.bed_style.bed_advanced.gene_rows:
gene_rows = $track.track_file_style_conditional.bed_style.bed_advanced.gene_rows
      #end if
global_max_row = $track.track_file_style_conditional.bed_style.bed_advanced.global_max_row
max_labels = $track.track_file_style_conditional.bed_style.bed_advanced.max_labels
line_width = $track.track_file_style_conditional.bed_style.bed_advanced.line_width
      #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
      #end if
overlay_previous = $track.track_file_style_conditional.overlay_select
      ## If spacer is asked a new section is created:
      #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
      #end if
    #end for
  #end if

  ## Link
  #if $track.track_file_style_conditional.track_file_style_selector == "link_track_option":
[links_$counter]
file = $track.track_file_style_conditional.track_input_link
    #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
    #elif $track.track_file_style_conditional.overlay_select == 'no':
title = $track.track_file_style_conditional.track_input_link.name
    #end if
    #if $track.track_file_style_conditional.height:
height = $track.track_file_style_conditional.height
    #end if
    #if $track.track_file_style_conditional.min_value != "":
min_value = $track.track_file_style_conditional.min_value
    #end if
    #if $track.track_file_style_conditional.max_value != "":
max_value = $track.track_file_style_conditional.max_value
    #end if
color = $track.track_file_style_conditional.color_link.color
alpha = $track.track_file_style_conditional.alpha
line_width = $track.track_file_style_conditional.line_width
line_style = $track.track_file_style_conditional.line_style
links_type = $track.track_file_style_conditional.links_type
compact_arcs_level = $track.track_file_style_conditional.compact_arcs_level
    #if $track.track_file_style_conditional.ylim != "":
ylim = $track.track_file_style_conditional.ylim
    #end if
use_middle = $track.track_file_style_conditional.use_middle
    #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
    #end if
overlay_previous = $track.track_file_style_conditional.overlay_select
file_type = links
    ## If spacer is asked a new section is created:
    #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
    #end if
  #end if

  ## Narrow peak
  #if $track.track_file_style_conditional.track_file_style_selector == "narrow_peak_track_option":
    #for $counter_narrow_peak, $data_narrow_peak in enumerate($track.track_file_style_conditional.track_input_narrow_peak):
[narrow_peak_${counter}_${counter_narrow_peak}]
file = $data_narrow_peak
      #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
      #elif $track.track_file_style_conditional.overlay_select == 'no':
title = $data_narrow_peak.name
      #end if
color = $track.track_file_style_conditional.color
type = $track.track_file_style_conditional.display.display_selector
use_summit = $track.track_file_style_conditional.display.use_summit
      #if $track.track_file_style_conditional.display.display_selector == "peak":
show_data_range = $track.track_file_style_conditional.display.show_data
        #if $track.track_file_style_conditional.display.width_adjust:
width_adjust = $track.track_file_style_conditional.display.width_adjust
        #end if
        #if $track.track_file_style_conditional.display.min_value != "":
min_value = $track.track_file_style_conditional.display.min_value
        #end if
        #if $track.track_file_style_conditional.display.max_value != "":
max_value = $track.track_file_style_conditional.display.max_value
        #end if
      #end if
      #if $track.track_file_style_conditional.height_narrow_peak:
height = $track.track_file_style_conditional.height_narrow_peak
      #end if
line_width = $track.track_file_style_conditional.line_width
show_labels = $track.track_file_style_conditional.show_labels
file_type = narrow_peak
      #if $track.track_file_style_conditional.fontsize:
fontsize = $track.track_file_style_conditional.fontsize
      #end if
      #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
      #end if
overlay_previous = $track.track_file_style_conditional.overlay_select
      ## If spacer is asked a new section is created:
      #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
      #end if
    #end for
  #end if

  ## Bedgraph track
  #if $track.track_file_style_conditional.track_file_style_selector == "bedgraph_track_option":
    #for $data_bedgraph in $track.track_file_style_conditional.track_input_bedgraph:
[bedgraph_$counter]
file = $data_bedgraph
      #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
      #elif $track.track_file_style_conditional.overlay_select == "no":
title = $data_bedgraph.name
      #end if
      #if $track.track_file_style_conditional.color:
color = $track.track_file_style_conditional.color
      #end if
alpha = $track.track_file_style_conditional.alpha
      #if $track.track_file_style_conditional.color_negative.color_negative_select == "true":
negative_color = $track.track_file_style_conditional.color_negative.color
      #end if
      #if $track.track_file_style_conditional.height_bedgraph:
height = $track.track_file_style_conditional.height_bedgraph
      #end if
      #if $track.track_file_style_conditional.min_value != "":
min_value = $track.track_file_style_conditional.min_value
      #end if
      #if $track.track_file_style_conditional.max_value != "":
max_value = $track.track_file_style_conditional.max_value
      #end if
show_data_range = $track.track_file_style_conditional.show_data
grid = $track.track_file_style_conditional.grid
nans_to_zeros = $track.track_file_style_conditional.nans_to_zeros
use_middle = $track.track_file_style_conditional.use_middle
      #set $columns = len(open(str($track.track_file_style_conditional.track_input_bedgraph)).readline().split('\t'))
      #if $columns > 4:
file_type = bedgraph_matrix
type = lines
      #else:
file_type = bedgraph
        #if $track.track_file_style_conditional.type_conditional.type_selector == 'fill_option':
type = fill
        #elif $track.track_file_style_conditional.type_conditional.type_selector == 'line_option':
type = line:$track.track_file_style_conditional.type_conditional.width_line
        #elif $track.track_file_style_conditional.type_conditional.type_selector == 'point_option':
type = points:$track.track_file_style_conditional.type_conditional.width_point
        #end if
        #if $track.track_file_style_conditional.logScale_conditional.transform_selector != 'no':
transform = $track.track_file_style_conditional.logScale_conditional.transform_selector
y_axis_values = $track.track_file_style_conditional.logScale_conditional.y_axis_values
          #if $track.track_file_style_conditional.logScale_conditional.transform_selector != 'log1p':
log_pseudocount = $track.track_file_style_conditional.logScale_conditional.log_pseudocount
          #end if
        #end if
      #end if
      #if $track.track_file_style_conditional.reading_bdg_as_bw.summary_method != 'no':
summary_method = $track.track_file_style_conditional.reading_bdg_as_bw.summary_method
        #if $track.track_file_style_conditional.reading_bdg_as_bw.number_of_bins:
number_of_bins = $track.track_file_style_conditional.reading_bdg_as_bw.number_of_bins
        #end if
      #end if
      #if $track.track_file_style_conditional.op.operation != 'file':
operation = $track.track_file_style_conditional.op.operation
        #if 'second_file' in str($track.track_file_style_conditional.op.operation):
second_file = $track.track_file_style_conditional.op.second_file
        #end if
      #end if
      #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
      #end if
overlay_previous = $track.track_file_style_conditional.overlay_select
      ## If spacer is asked a new section is created:
      #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
      #end if
    #end for
  #end if

  ## Bigwig tracks
  #if $track.track_file_style_conditional.track_file_style_selector == "bigwig_track_option":
    #for $data_bigwig in $track.track_file_style_conditional.track_input_bigwig:
[bigwig_$counter]
file = $data_bigwig
      #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
      #elif $track.track_file_style_conditional.overlay_select == "no":
title = $data_bigwig.name
      #end if
      #if $track.track_file_style_conditional.color:
color = $track.track_file_style_conditional.color
      #end if
alpha = $track.track_file_style_conditional.alpha
      #if $track.track_file_style_conditional.color_negative.color_negative_select == "true":
negative_color = $track.track_file_style_conditional.color_negative.color
      #end if
      #if $track.track_file_style_conditional.min_value != "":
min_value = $track.track_file_style_conditional.min_value
      #end if
      #if $track.track_file_style_conditional.max_value != "":
max_value = $track.track_file_style_conditional.max_value
      #end if
height = $track.track_file_style_conditional.height_bigwig
summary_method = $track.track_file_style_conditional.reading_bw_conditional.summary_method
nans_to_zeros = $track.track_file_style_conditional.reading_bw_conditional.nans_to_zeros
      #if $track.track_file_style_conditional.reading_bw_conditional.number_of_bins:
number_of_bins = $track.track_file_style_conditional.reading_bw_conditional.number_of_bins
      #end if
      #if $track.track_file_style_conditional.type_conditional.type_selector == 'fill_option':
type = fill
      #elif $track.track_file_style_conditional.type_conditional.type_selector == 'line_option':
type = line:$track.track_file_style_conditional.type_conditional.width_line
      #elif $track.track_file_style_conditional.type_conditional.type_selector == 'point_option':
type = points:$track.track_file_style_conditional.type_conditional.width_point
      #end if
      #if $track.track_file_style_conditional.logScale_conditional.transform_selector != 'no':
transform = $track.track_file_style_conditional.logScale_conditional.transform_selector
y_axis_values = $track.track_file_style_conditional.logScale_conditional.y_axis_values
        #if $track.track_file_style_conditional.logScale_conditional.transform_selector != 'log1p':
log_pseudocount = $track.track_file_style_conditional.logScale_conditional.log_pseudocount
        #end if
      #end if
      #if $track.track_file_style_conditional.op.operation != 'file':
operation = $track.track_file_style_conditional.op.operation
        #if 'second_file' in $track.track_file_style_conditional.op.operation:
second_file = $track.track_file_style_conditional.op.second_file
        #end if
      #end if
show_data_range = $track.track_file_style_conditional.show_data
grid = $track.track_file_style_conditional.grid
file_type = bigwig
      #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
      #end if
overlay_previous = $track.track_file_style_conditional.overlay_select
      ## If spacer is asked a new section is created:
      #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
      #end if
    #end for
  #end if

  ## bedgraph_matrix
  #if $track.track_file_style_conditional.track_file_style_selector == "bedgraph_matrix_track_option":
    #for $data_bedgraph_matrix in $track.track_file_style_conditional.track_input_bedgraph_matrix:
[bedgraph_matrix_$counter]
file = $data_bedgraph_matrix
      #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
      #else:
title = $data_bedgraph_matrix.name
      #end if
      #if $track.track_file_style_conditional.height_bedgraph:
height = $track.track_file_style_conditional.height_bedgraph
      #end if
      #if $track.track_file_style_conditional.min_value != "":
min_value = $track.track_file_style_conditional.min_value
      #end if
      #if $track.track_file_style_conditional.max_value != "":
max_value = $track.track_file_style_conditional.max_value
      #end if
type = $track.track_file_style_conditional.type.type_selector
file_type = bedgraph_matrix
      #if $track.track_file_style_conditional.type.type_selector == 'lines':
show_data_range = $track.track_file_style_conditional.type.show_data
plot_horizontal_lines = $track.track_file_style_conditional.type.plot_horizontal_lines
pos_score_in_bin = $track.track_file_style_conditional.type.pos_score_in_bin
      #else
colormap = $track.track_file_style_conditional.type.colormap
      #end if
      #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
      #end if
      ## If spacer is asked a new section is created:
      #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
      #end if
    #end for
  #end if

  ## Vlines:
  #if $track.track_file_style_conditional.track_file_style_selector == "vlines_track_option":
[vlines_$counter]
file = $track.track_file_style_conditional.track_input_bed_single
line_width = $track.track_file_style_conditional.line_width
type = vlines
  #end if

  ## Hlines:
  #if $track.track_file_style_conditional.track_file_style_selector == "hlines_track_option":
[hlines_$counter]
    #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
    #end if
    #if $track.track_file_style_conditional.height:
height = $track.track_file_style_conditional.height
    #end if
    #if $track.track_file_style_conditional.min_value != "":
min_value = $track.track_file_style_conditional.min_value
    #end if
    #if $track.track_file_style_conditional.max_value != "":
max_value = $track.track_file_style_conditional.max_value
    #end if
y_values = $track.track_file_style_conditional.y_values
show_data_range = $track.track_file_style_conditional.show_data
color = $track.track_file_style_conditional.color
alpha = $track.track_file_style_conditional.alpha
line_width = $track.track_file_style_conditional.line_width
line_style = $track.track_file_style_conditional.line_style
    #if $track.track_file_style_conditional.invert_orientation:
orientation = inverted
    #end if
overlay_previous = $track.track_file_style_conditional.overlay_select
file_type = hlines
    ## If spacer is asked a new section is created:
    #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
    #end if
  #end if

  ## Spacer
  #if $track.track_file_style_conditional.track_file_style_selector == "spacer_option":
[spacer]
    #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
    #end if
    #if $track.track_file_style_conditional.spacer_height != "":
height = $track.track_file_style_conditional.spacer_height
    #end if
  #end if

  ## Xaxis:
  #if $track.track_file_style_conditional.track_file_style_selector == "xaxis_option":
[x-axis]
    #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
    #end if
    #if $track.track_file_style_conditional.fontsize != "":
fontsize = $track.track_file_style_conditional.fontsize
    #end if
where = $track.track_file_style_conditional.xaxis_where
    ## If spacer is asked a new section is created:
    #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
    #end if
  #end if

  ## Scale bar:
  #if $track.track_file_style_conditional.track_file_style_selector == "scale_bar_option":
[scale_bar]
    #if $track.track_file_style_conditional.title:
title = $track.track_file_style_conditional.title
    #end if
    #if $track.track_file_style_conditional.color != "":
color = $track.track_file_style_conditional.color
    #end if
alpha = $track.track_file_style_conditional.alpha
line_width = $track.track_file_style_conditional.line_width
    #if $track.track_file_style_conditional.scalebar_pos.x_center != "":
x_center = $track.track_file_style_conditional.scalebar_pos.x_center
    #end if
    #if $track.track_file_style_conditional.scalebar_pos.size != "":
size = $track.track_file_style_conditional.scalebar_pos.size
    #end if
    #if $track.track_file_style_conditional.scalebar_pos.scalebar_start_position != "":
scalebar_start_position = $track.track_file_style_conditional.scalebar_pos.scalebar_start_position
    #end if
    #if $track.track_file_style_conditional.scalebar_pos.scalebar_end_position != "":
scalebar_end_position = $track.track_file_style_conditional.scalebar_pos.scalebar_end_position
    #end if
where = $track.track_file_style_conditional.sb_where
    #if $track.track_file_style_conditional.fontsize != "":
fontsize = $track.track_file_style_conditional.fontsize
    #end if
file_type = scalebar
    ## If spacer is asked a new section is created:
    #if $track.track_file_style_conditional.spacer_height != "":
[spacer]
height = $track.track_file_style_conditional.spacer_height
    #end if
  #end if
#end for
</configfile>
    </configfiles>
    <inputs>
        <!--Arguments for pgt-->
        <param argument="--region" type="text" label="Region of the genome to limit the operation" optional="false"
            help="The format is chr:start-end, for example chr10:10-500">
            <validator type="expression" message="Region should be like chr10:10-500">'^[a-zA-Z0-9_]:\d+-\d+$'</validator>
        </param>
        <section name="global_args" title="Configure figure parameters" expanded="False">
            <param argument="--title" type="text" label="Plot title" help="If set, you may need to start by a spacer track"/> 
            <param argument="--fontsize" type="integer" label="Font size for the labels of the plot" value="12"/>
            <param argument="--dpi" type="integer" label="Resolution (dpi)" value="72"
                   help="Resolution for the image in case the ouput is a raster graphics image (e.g png, jpg)"/>
            <param argument="--width" type="float" label="Figure width in cm" value="40"/>
            <param argument="--plotWidth" type="float" label="Width in centimeters of the plotting (central) part" optional="true"
                    help="This will overwrite what has been defined as a figure width."/>
            <param argument="--height" type="float" label="Figure height in centimeters" optional="true"
                    help="If not given, the figure height is computed based on the heights of the tracks. If given, the track height are proportionally scaled to match the desired figure height."/>
            <param argument="--trackLabelFraction" type="float" label="Proportion of space dedicated to track labels" value="0.05"
                   min="0" max="1"/> 
            <param argument="--trackLabelHAlign" type="select" label="Horizontal alignment of track labels">
                <option value="left" selected="True">left</option>
                <option value="right">right</option>
                <option value="center">center</option>
            </param>
            <param argument="--decreasingXAxis" type="boolean" truevalue="--decreasingXAxis" falsevalue="" checked="false"
                label="Use a decreasing x axis" help="By default, the x-axis is increasing. Use this option if you want to see all tracks with a decreasing x-axis."/>
        </section>
        <!--Info to build the config file-->
        <repeat name="tracks" min="1" title="Include tracks in your plot"
            help="Tracks can be of different filetypes. E.g BED, HiC-Matrix, BigWig or BedGraph.
            The order you add them represent the order they will be plotted from top to bottom.">
            <conditional name="track_file_style_conditional">
                <param name="track_file_style_selector" type="select" label="Choose style of the track">
                    <option value="hic_matrix_option">TAD visualization</option>
                    <option value="chrom_states_option">Chromatine states</option>
                    <option value="bedgraph_matrix_track_option">TAD score</option>
                    <option value="gene_track_option">Gene track / Bed track</option>
                    <option value="link_track_option">Link track</option>
                    <option value="narrow_peak_track_option">NarrowPeak track</option>
                    <option value="bigwig_track_option">Bigwig track</option>
                    <option value="bedgraph_track_option">Bedgraph track </option>
                    <option value="bedgraph_matrix_track_option">Bedgraph matrix track</option>
                    <option value="vlines_track_option">Vlines track</option>
                    <option value="hlines_track_option">Hlines track</option>
                    <option value="spacer_option">Spacer</option>
                    <option value="xaxis_option">X-axis</option>
                    <option value="scale_bar_option">Scale bar track</option>
                </param>
                <when value="hic_matrix_option">
                    <expand macro="plot_title" />
                    <expand macro="matrix_h5_cooler_multiple_macro" />

                    <param name="colormap" type="select" label="Color map to use for the heatmap" help="Available color map names can be found here: https://matplotlib.org/examples/color/colormaps_reference.html">
                        <option value="RdYlBu_r">RdYlBu reversed</option>
                        <expand macro="colormap_macro"/>
                    </param>
                    <param name="depth" type="integer" value="8000000" optional="True" label="Depth" />
                    <expand macro="minmax_macro" />
                    <param name="transform" type="select" label="Plot the transformed value">
                        <option value="log1p" selected="True" >log1p</option>
                        <option value="log">log</option>
                        <option value="-log">-log</option>
                        <option value="no">no transformation</option>

                    </param>
                    <param name="height_matrix" type="float" value="" optional="True" label="height"/>
                    <param name="show_masked_bins" type="boolean" truevalue="true" falsevalue="false" checked="false"
                            label="Show masked bins" />
                    <param name="boundaries_file" type="data" optional="True" format="bed" label="Boundaries file" multiple="True"/>
                    <param name="scale_factor" type="float" value="1.0" optional="True" label="Scale factor" help="if the values in the matrix need to be scaled the following parameter can be used" />
                    <param name="rasterize" type="boolean" truevalue="true" falsevalue="false" checked="true"
                            label="Rasterize the heatmap" />
                    <expand macro="inverted_macro" />
                    <expand macro="spacer_macro" />

                </when>
                <when value="chrom_states_option">
                    <expand macro="plot_title" />
                    <expand macro="track_input_bed_macro" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" type="select" label="Define color:">
                            <option value="manually" selected="True">manually</option>
                            <option value="bed_rgb">From the 9th field</option>
                            <option value="colormap">From the 5th field (score)</option>
                        </param>
                        <when value="manually">
                            <param name="color" type="color" value="#000000" label="Color of track" optional="True" />
                        </when>
                        <when value="bed_rgb" />
                        <when value="colormap">
                            <param name="color" type="select" label="Color map to use for the scores" help=" Available color map names can be found here: https://matplotlib.org/examples/color/colormaps_reference.html">
                                <expand macro="colormap_macro" />
                            </param>
                        </when>
                    </conditional>
                    <expand macro="border_color_bed_macro" />
                    <param name="line_width" type="float" value="0.5" label="width of lines" />
                    <param name="height_chrom" type="float" value="1.5" optional="True" label="height"/>
                    <param name="labels" type="boolean" truevalue="true" falsevalue="false" checked="true"
                            label="Plot labels" />
                    <expand macro="spacer_macro" />

                </when>
                <when value="gene_track_option">
                    <expand macro="plot_title" />

                    <expand macro="track_input_bed_gtf_macro" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" type="select" label="Define color:">
                            <option value="manually" selected="True">manually</option>
                            <option value="bed_rgb">From the 9th field</option>
                            <option value="colormap">From the 5th field (score)</option>
                        </param>
                        <when value="manually">
                            <param name="color" type="color" value="#000000" label="Color of track" optional="True" />
                        </when>
                        <when value="bed_rgb" />
                        <when value="colormap">
                            <param name="color" type="select" label="Color map to use for the scores" help=" Available color map names can be found here: https://matplotlib.org/examples/color/colormaps_reference.html">
                                <expand macro="colormap_macro" />
                            </param>
                        </when>
                    </conditional>
                    <expand macro="border_color_bed_macro" />
                    <param name="height_bed" type="float" value="1.5" optional="True" label="height"/>
                    <conditional name="labels">
                        <param name="plot_labels" type="select" label="Plot labels">
                            <option value="true" selected="True">yes</option>
                            <option value="false">no</option>
                        </param>
                        <when value="true">
                            <param name="all_labels_inside" type="boolean" truevalue="true" falsevalue="false" checked="false"
                                label="Put all labels inside the plotted region"
                                help="Put labels on the left of the region if the region ends after the plotted region."/>
                            <param name="labels_in_margin" type="boolean" truevalue="true" falsevalue="false" checked="false"
                                label="Allow to put labels in the right margin"
                                help="Put labels in the margin if the region ends after the plotted region."/>
                        </when>
                        <when value="false"/>
                    </conditional>
                    <param name="display" type="select" label="display to use">
                        <option value="stacked" selected="True">stacked (no overlap even with the label)</option>
                        <option value="interleaved">interleaved (everything on 2 lines)</option>
                        <option value="collapsed">collapsed (everything on 1 line)</option>
                        <option value="triangles">triangles (plot triangles between start and end)</option>
                    </param>
                    <param name="fontsize" type="integer" value="" optional="True" label="Fontsize" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" type="select" label="Bed style">
                            <option value="flybase" selected="True">flybase (blocks with arrow at extremities)</option>
                            <option value="UCSC">UCSC (blocks with arrows in introns)</option>
                            <option value="tssarrow">tssarrow (blocks with arrow above at beginning)</option>
                        </param>
                        <when value="flybase">
                            <param name="arrowhead_included" type="boolean" truevalue="true" falsevalue="false" checked="false"
                                label="Include the arrowhead in the bed interval:"
                                help="When set to False, the arrow indicating the orientation of the interval is plotted outside of the interval."/>
                            <section name="bed_advanced" title="Configure other bed parameters" expanded="False">
                                <expand macro="utr_macro" />
                                <expand macro="bed_advanced_macro" />
                            </section>
                        </when>
                        <when value="UCSC">
                            <section name="bed_advanced" title="Configure other bed parameters" expanded="False">
                                <param name="arrow_interval" type="integer" value="2" min="0" label="interval between 2 arrows on introns in UCSC style"/>
                                <expand macro="bed_advanced_macro" />
                            </section>
                        </when>
                        <when value="tssarrow">
                            <section name="bed_advanced" title="Configure other bed parameters" expanded="False">
                                <param name="arrow_length" type="integer" optional="true" label="arrow length" help="the length of the arrow in bp (default is 4% of the plotted region)"/>
                                <expand macro="utr_macro" />
                                <expand macro="bed_advanced_macro" />
                            </section>
                        </when>
                    </conditional>
                    <expand macro="overlay_macro" />
                    <expand macro="inverted_macro" />
                    <expand macro="spacer_macro" />

                </when>
                <when value="link_track_option">
                    <expand macro="plot_title" />
                    <expand macro="track_input_link_macro" />
                    <conditional name="color_link">
                        <param name="color_link_select" type="select" label="Define color:">
                            <option value="manually" selected="True">manually</option>
                            <option value="colormap">From the 7th field (score)</option>
                        </param>
                        <when value="manually">
                            <param name="color" type="color" value="#000000" label="Color of track" optional="True" />
                        </when>
                        <when value="colormap">
                            <param name="color" type="select" label="Color map to use for the scores" help=" Available color map names can be found here: https://matplotlib.org/examples/color/colormaps_reference.html">
                                <expand macro="colormap_macro" />
                            </param>
                        </when>
                    </conditional>
                    <expand macro="lines_macro" />
                    <param name="links_type" type="select" label="Representation of the link:">
                        <option value="arcs" selected="True">arcs (a line between the centers of the 2 regions)</option>
                        <option value="triangles">triangles</option>
                        <option value="loops">loops (a rectangle highlighting the intersection)</option>
                    </param>
                    <param name="compact_arcs_level" type="select" label="Height of arcs and triangles:">
                        <option value="0" selected="True">default (proportional to distance)</option>
                        <option value="1">compacted (the height is proportional to the square root of the distance)</option>
                        <option value="2">highly compacted (the height is the same for all distances)</option>
                    </param>
                    <param name="ylim" type="float" optional="True" label="ylim" help="To be able to see small arcs when big arcs exists, you can set the upper y limit. The unit is bp. This corresponds to the longest arc you will see not truncated."/>
                    <param name="use_middle" type="select" label="Coordinates to use" help="Not useful with loops">
                        <option value="false" selected="True">Extremities (start of first and end of second)</option>
                        <option value="true">Center (mean of start and end for each)</option>
                    </param>
                    <param name="height" type="float" value="1.5" optional="True" label="height"/>
                    <expand macro="minmax_macro" />
                    <expand macro="overlay_macro" />
                    <expand macro="inverted_macro" />
                    <expand macro="spacer_macro" />
                </when>
                <when value="narrow_peak_track_option">
                    <expand macro="plot_title" />
                    <expand macro="track_input_narrow_peak_macro" />
                    <param name="color" type="color" value="#000000" label="Color of track" optional="True" />
                    <param name="height_narrow_peak" type="float" value="1.5" optional="True" label="height"/>
                    <conditional name="display">
                        <param name="display_selector" type="select" label="display to use">
                            <option value="peak" selected="True">peak: Draw a peak shape from start, end, summit, height</option>
                            <option value="box">box: Draw a box</option>
                        </param>
                        <when value="peak">
                            <param name="use_summit" type="boolean" truevalue="true" falsevalue="false" checked="true"
                                   optional="True" label="Use summit information to make the curve." />
                            <param name="show_data" type="boolean" truevalue="true" falsevalue="false" checked="false"
                                   label="Show visualization of data range" />
                            <param name="width_adjust" type="float" value="1.5" optional="True"
                                   label="Factor to change the width of the curve."/>
                            <expand macro="minmax_macro" />
                        </when>
                        <when value="box">
                            <param name="use_summit" type="boolean" truevalue="true" falsevalue="false" checked="true"
                                   optional="True" label="Plot a vertical bar at the summit position." />
                        </when>
                    </conditional>
                    <param name="line_width" type="float" value="1" label="width of lines" />
                    <param name="show_labels" type="boolean" truevalue="true" falsevalue="false" checked="true"
                            label="Plot labels (name, p-val, q-val)" />
                    <param name="fontsize" type="integer" value="" optional="True" label="Fontsize" />
                    <expand macro="overlay_macro" />
                    <expand macro="inverted_macro" />
                    <expand macro="spacer_macro" />

                </when>
                <when value="bedgraph_track_option">
                    <expand macro="plot_title" />
                    <expand macro="track_input_bedgraph_macro" />
                    <expand macro="color_coverage_macro" />
                    <expand macro="minmax_macro" />
                    <param name="height_bedgraph" type="float" value="1.5" optional="True" label="height"/>
                    <expand macro="type_coverage_macro" />
                    <section name="reading_bdg_as_bw" title="Configure bigwig parameters" expanded="False">
                        <param name="summary_method" type="select" label="Summary method">
                            <option value="no" selected="True">no=no summary method (keep all values)</option>
                            <option value="mean">mean=mean value</option>
                            <option value="min">min=minimum value</option>
                            <option value="max">max=maximum value</option>
                            <option value="coverage">coverage=number of covered bases</option>
                            <option value="std">std=standard deviation</option>
                        </param>
                        <param name="number_of_bins" type="integer" value="" optional="True" label="Number of bins" />
                    </section>
                    <expand macro="logScale_coverage_macro" />
                    <section name ="op" title="Compute an operation on the file" expanded="False">
                        <param name="operation" type="text" label="operation to compute on the file(s)" value="file"
                            help="operation will be evaluated, it should contains file or file and second_file, for example `0.89 * file` `- file` `file - second_file` `log2((1 + file) / (1 + second_file))` or `max(file, second_file)`"/>
                        <param name="second_file" type="data" format="bedgraph" label="second_file (bedgraph format)" multiple="False" optional="True"/>
                    </section>
                    <param name="nans_to_zeros" type="boolean" truevalue="true" falsevalue="false" checked="false"
                        label="NAN's to zeros" />
                    <param name="use_middle" type="boolean" truevalue="true" falsevalue="false" checked="false"
                        label="Use middle: Instead of using start and end, use the middle of intervals (useful for 4C-seq tracks)." />
                    <param name="show_data" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Show visualization of data range" />
                    <param name="grid" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Display a grid on the y-axis" />
                    <expand macro="inverted_macro" />
                    <expand macro="overlay_macro" />
                    <expand macro="spacer_macro" />
                </when>
                <when value="bigwig_track_option">
                    <expand macro="plot_title" />

                    <expand macro="track_input_bigwig_macro" />
                    <expand macro="color_coverage_macro" />

                    <expand macro="minmax_macro" />

                    <param name="height_bigwig" type="float" value="1.5" optional="True" label="height"/>
                    <section name="reading_bw_conditional" title="Configure bigwig parameters" expanded="False">
                        <param name="summary_method" type="select" label="Summary method">
                            <option value="mean" selected="True">mean=mean value</option>
                            <option value="min">min=minimum value</option>
                            <option value="max">max=maximum value</option>
                            <option value="coverage">coverage=number of covered bases</option>
                            <option value="std">std=standard deviation</option>
                        </param>
                        <param name="number_of_bins" type="integer" value="" optional="True" label="Number of bins" />
                        <param name="nans_to_zeros" type="boolean" truevalue="true" falsevalue="false" checked="false"
                            label="NAN's to zeros" />
                    </section>
                    <expand macro="type_coverage_macro" />
                    <expand macro="logScale_coverage_macro" />
                    <section name ="op" title="Compute an operation on the file" expanded="False">
                        <param name="operation" type="text" label="operation to compute on the file(s)" value="file"
                            help="operation will be evaluated, it should contains file or file and second_file, for example `0.89 * file` `- file` `file - second_file` `log2((1 + file) / (1 + second_file))` or `max(file, second_file)`"/>
                        <param name="second_file" type="data" format="bigwig" label="second_file (bedgraph format)" multiple="False" optional="True"/>
                    </section>
                    <param name="show_data" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Show visualization of data range"/>
                    <param name="grid" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Display a grid on the y-axis" />
                    <expand macro="inverted_macro" />
                    <expand macro="overlay_macro" />
                    <expand macro="spacer_macro" />

                </when>

                <when value="bedgraph_matrix_track_option">
                    <expand macro="plot_title" />

                    <expand macro="track_input_bedgraph_matrix_macro" />
                    <expand macro="minmax_macro" />

                    <param name="height_bedgraph" type="float" value="1.5" optional="True" label="height"/>

                    <conditional name="type">
                        <param name="type_selector" type="select" label="type of plotting">
                            <option value="lines" selected="True">lines: each column in the bedgraph will be a line and a mean line will be added</option>
                            <option value="matrix">matrix: each column in the bedgraph will be a raw in the matrix</option>
                        </param>
                        <when value="lines">
                            <param name="plot_horizontal_lines" type="boolean" truevalue="true" falsevalue="false" checked="false"
                                   label="Plot an horizontal line at 0 when type is lines" />
                            <param name="show_data" type="boolean" truevalue="true" falsevalue="false" checked="false"
                                   label="Show visualization of data range" />
                            <param name="pos_score_in_bin" type="select" label="Position of the score with respect to bin start and end">
                                <option value="center" selected="True">Center</option>
                                <option value="block">Block (draw a horizontal line between start and end)</option>
                            </param>
                        </when>
                        <when value="matrix">
                            <param name="colormap" type="select" label="colormap">
                                <option value="viridis">Viridis</option>
                                <expand macro="colormap_macro" />
                            </param>
                        </when>
                    </conditional>
                    
                    
                    <expand macro="inverted_macro" />
                    <expand macro="spacer_macro" />

                </when>
                <when value="vlines_track_option">
                    <expand macro="track_input_bed_single_macro" />
                    <param name="line_width" type="float" value="0.5" label="width of lines"/>
                </when>
                <when value="hlines_track_option">
                    <expand macro="plot_title" />
                    <param name="y_values" type="text" value="10, 200" label="Values where horizontal lines should be plotted separated by comma"/>
                    <param name="color" type="color" value="#000000" label="Color of line(s)" optional="True" />
                    <expand macro="lines_macro" />
                    <param name="height" type="float" value="1.5" optional="True" label="height"/>
                    <expand macro="minmax_macro" />
                    <param name="show_data" type="boolean" truevalue="true" falsevalue="false" checked="false" label="Show visualization of data range"/>
                    <expand macro="inverted_macro" />
                    <expand macro="overlay_macro" />
                    <expand macro="spacer_macro" />
                </when>
                <when value="spacer_option">
                    <expand macro="plot_title" />
                    <param name="spacer_height" type="float" value="" optional="True"
                        label="Height of the spacer."/>
                </when>
                <when value="xaxis_option">
                    <expand macro="plot_title" />
                    <param name="fontsize" type="float" optional="True"
                        label="Fontsize of the x-axis."/>
                    <param name="xaxis_where" type="select" label="chromosome name and coordinates position relative to the axis">
                        <option value="bottom" selected="True">below</option>
                        <option value="top">above</option>
                    </param>
                    <expand macro="spacer_macro" />
                </when>
                <when value="scale_bar_option">
                    <expand macro="plot_title" />
                    <param name="color" type="color" label="Color of the scale bar" optional="True" />
                    <param name="alpha" type="float" value="1" min="0" max="1" label="level of transparency (alpha)" help="1 is opaque and 0 is totally transparent"/>
                    <param name="line_width" type="float" value="0.5" label="width of lines"/>
                    <section name="scalebar_pos" title="Set the scalebar position" expanded="true" help="You can optionally define one or multiple parameters below.">
                        <param name="scalebar_start_position" type="integer" label="coordinate where the scale bar should begin." optional="True"/>
                        <param name="scalebar_end_position" type="integer" label="coordinate where the scale bar should end." optional="True"/>
                        <param name="x_center" type="integer" label="coordinate where the scale bar should be plotted (center)" optional="True"
                            help="If not set and cannot be deduced from others it will be in the middle of the plotted area."/>
                        <param name="size" type="integer" label="size of the scale bar" optional="True"
                            help="If not set and cannot be deduced from others it will be the higher number that begins with 1, 2 or 5 followed by 0s that is less than half the plotted area."/>
                    </section>
                    <param name="sb_where" type="select" label="where the size of the scale bar should appear relative to the bar">
                        <option value="left" selected="True">left</option>
                        <option value="right">right</option>
                        <option value="bottom">below</option>
                        <option value="top">above</option>
                    </param>
                    <param name="fontsize" type="float" optional="True"
                        label="Fontsize of the size of the scale bar."/>
                    <expand macro="spacer_macro" />
                </when>
            </conditional>
        </repeat>
        <param name="image_file_format" type="select" label="Image output format">
                <option value="png">png</option>
                <option value="svg">svg</option>
        </param>
    </inputs>
    <outputs>
        <data format="png" name="outFileName" from_work_dir="plot" label="${tool.name} on [${on_string}]: Plot">
            <change_format>
                <when input="image_file_format" value="png" format="png" />
                <when input="image_file_format" value="svg" format="svg" />
            </change_format>
        </data>
    </outputs>
    <tests>
        <!--test 1-->
        <test>
            <param name="region" value="chrX:3000000-3500000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hic_matrix_option" />
                    <param name="matrix_h5_cooler_multiple" value="Li_et_al_2015.h5"/>
                    <param name="title" value="Kc DpnII (Li et al. 2015)" />
                    <!--<param name="colormap" value="RdYlBu_r" />-->
                    <param name="depth" value="200000" />
                    <param name="transform" value="log1p" />
                    <param name="boundaries_file" value="domains.bed" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="0.05" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="chrom_states_option" />
                    <param name="track_input_bed" value="tad_classification.bed" ftype="bed" />
                    <param name="title" value="TAD state" />
                    <param name="height_chrom" value="0.5" />
                    <param name="labels" value="false" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="bed_rgb" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_matrix_track_option" />
                    <param name="track_input_bedgraph_matrix" value="tad_score.gz" ftype="bedgraph" />
                    <param name="title" value="TAD separation score (Ramirez et al.)" />
                    <conditional name="type">
                        <param name="type_selector" value="matrix" />
                        <!--<param name="colormap" value="viridis" />-->
                    </conditional>
                    <param name="height_bedgraph" value="10" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="1" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph_chrx_2e6_5e6.bg" ftype="bedgraph" />
                    <param name="title" value="bedgraph" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="blue" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="rep 1 test fill" />
                    <param name="height_bigwig" value="4" />
                    <param name="color" value="blue" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="fill_option" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="rep 1 test line" />
                    <param name="height_bigwig" value="4" />
                    <param name="color" value="red" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                        <param name="width_line" value="1" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="rep 1 test lw=0.2" />
                    <param name="height_bigwig" value="4" />
                    <param name="color" value="red" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                        <param name="width_line" value="0.1" />

                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="rep 1 test point:0.5" />
                    <param name="height_bigwig" value="4" />
                    <param name="color" value="black" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="point_option" />
                        <param name="width_point" value="0.5" />

                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="0.5" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="genes" />
                    <param name="height_bed" value="5" />
                    <param name="fontsize" value="10" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="1" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="max num rows 3" />
                    <param name="height_bed" value="3" />
                    <param name="fontsize" value="8" />
                    <conditional name="bed_style">
                        <section name="bed_advanced">
                            <param name="gene_rows" value="3" />
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="1" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed6.gz" ftype="bed" />
                    <param name="title" value="bed6 global max row" />
                    <param name="height_bed" value="20" />
                    <param name="fontsize" value="10" />
                    <conditional name="bed_style">
                        <section name="bed_advanced">
                            <param name="global_max_row" value="true" />
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="vlines_track_option" />
                    <param name="track_input_bed_single" value="domains.bed" ftype="bed" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="master_TADs_plot.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 2-->
        <test>
            <param name="region" value="chrX:3000000-3500000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw,bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="rep 1 test line" />
                    <param name="height_bigwig" value="4" />
                    <param name="color" value="red" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                        <param name="width_line" value="1" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="nans_to_zeros" />
                    <param name="height_bigwig" value="4" />
                    <param name="color" value="blue" />
                    <section name="reading_bw_conditional">
                        <param name="nans_to_zeros" value="true" />
                    </section>
                    <param name="show_data" value="true" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                        <param name="width_line" value="1" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hlines_track_option" />
                    <param name="title" value="" />
                    <param name="color" value="orange" />
                    <param name="y_values" value="50" />
                    <param name="line_width" value="2" />
                    <param name="line_style" value="dashed" />
                    <param name="overlay_select" value="share-y" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hlines_track_option" />
                    <param name="title" value="hlines" />
                    <param name="color" value="purple" />
                    <param name="y_values" value="0, 10, 20, 100" />
                    <param name="min_value" value="12" />
                    <param name="show_data" value="true" />
                    <param name="invert_orientation" value="true" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="bigwig_multiple.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 3-->
        <test>
            <param name="region" value="chrX:3000000-3500000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hic_matrix_option" />
                    <param name="matrix_h5_cooler_multiple" value="Li_et_al_2015.h5"/>
                    <param name="title" value="Kc DpnII (Li et al. 2015) log1p" />
                    <param name="colormap" value="RdYlBu_r" />
                    <param name="depth" value="200000" />
                    <param name="transform" value="log1p" />
                    <param name="boundaries_file" value="domains.bed" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="chrom_states_option" />
                    <param name="track_input_bed" value="tad_classification.bed" ftype="bed" />
                    <param name="title" value="TAD state" />
                    <param name="height_chrom" value="0.5" />
                    <param name="labels" value="false" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="bed_rgb" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hic_matrix_option" />
                    <param name="matrix_h5_cooler_multiple" value="Li_et_al_2015.h5"/>
                    <param name="title" value="Kc DpnII (Li et al. 2015) inverted no transform" />
                    <param name="colormap" value="Reds" />
                    <param name="depth" value="200000" />
                    <param name="transform" value="no" />
                    <param name="invert_orientation" value="true" />
                    <param name="min_value" value="5" />
                    <param name="max_value" value="70" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="1" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="test_with_neg_values.bg.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph with negative values" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="black" />
                    <conditional name="color_negative">
                        <param name="color_negative_select" value="true" />
                        <param name="color" value="red" />
                    </conditional>
                    <conditional name="type_conditional">
                        <param name="type_selector" value="fill_option" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph_chrx_2e6_5e6.bg" ftype="bedgraph" />
                    <param name="title" value="bedgraph" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="blue" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="fill_option" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="rep 1 test fill" />
                    <param name="height_bigwig" value="4" />
                    <param name="color" value="blue" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="fill_option" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="(red points/width=5/max value/100 bins) overlayed with (dark red line/min value/30000 bins) overlayed with (black line/min value)" />
                    <param name="height_bigwig" value="10" />
                    <param name="color" value="red" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="point_option" />
                        <param name="width_point" value="5" />
                    </conditional>
                    <section name="reading_bw_conditional">
                        <param name="summary_method" value="max"/>
                        <param name="number_of_bins" value="100"/>
                    </section>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="height_bigwig" value="10" />
                    <param name="color" value="#c00000" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                    </conditional>
                    <section name="reading_bw_conditional">
                        <param name="summary_method" value="min"/>
                    </section>
                    <param name="overlay_select" value="share-y" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="height_bigwig" value="10" />
                    <param name="color" value="black" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                    </conditional>
                    <section name="reading_bw_conditional">
                        <param name="summary_method" value="min"/>
                        <param name="number_of_bins" value="30000"/>
                    </section>
                    <param name="overlay_select" value="share-y" />
                    <param name="spacer_height" value="1" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="genes in ucsc" />
                    <param name="height_bed" value="5" />
                    <param name="fontsize" value="10" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="UCSC"/>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed6.gz" ftype="bed" />
                    <param name="title" value="bed6 global max row color from score" />
                    <param name="height_bed" value="20" />
                    <param name="fontsize" value="10" />
                    <conditional name="bed_style">
                        <section name="bed_advanced">
                            <param name="global_max_row" value="true" />
                        </section>
                    </conditional>
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="colormap" />
                        <param name="color" value="RdYlBu_r" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="domains.bed" ftype="bed" />
                    <param name="title" value="domains.bed using the 9th field for colors interleaved border=red" />
                    <param name="height_bed" value="2" />
                    <param name="fontsize" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="bed_rgb" />
                    </conditional>
                    <conditional name="border_color_bed">
                        <param name="border_color_bed_select" value="manually" />
                        <param name="color" value="red" />
                    </conditional>
                    <conditional name="labels">
                        <param name="plot_labels" value="false" />
                    </conditional>
                    <param name="display" value="interleaved" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="domains.bed" ftype="bed" />
                    <param name="title" value="domains.bed using the 9th field for colors interleaved border=bed_rgb" />
                    <param name="height_bed" value="2" />
                    <param name="fontsize" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="bed_rgb" />
                    </conditional>
                    <conditional name="border_color_bed">
                        <param name="border_color_bed_select" value="bed_rgb" />
                    </conditional>
                    <conditional name="labels">
                        <param name="plot_labels" value="false" />
                    </conditional>
                    <param name="display" value="interleaved" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="domains.bed" ftype="bed" />
                    <param name="title" value="domains.bed using the 9th field for colors interleaved border=none" />
                    <param name="height_bed" value="2" />
                    <param name="fontsize" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="bed_rgb" />
                    </conditional>
                    <conditional name="border_color_bed">
                        <param name="border_color_bed_select" value="none" />
                    </conditional>
                    <conditional name="labels">
                        <param name="plot_labels" value="false" />
                    </conditional>
                    <param name="display" value="interleaved" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="master_TADs_BW_plot.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 4-->
        <test>
            <param name="region" value="X:2700000-3100000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="(bigwig color=blue 2000 bins) overlayed with (bigwig mean color=red alpha = 0.5 max over 300 bins)" />
                    <param name="height_bigwig" value="7" />
                    <param name="color" value="#00b0f0" />
                    <section name="reading_bw_conditional">
                        <param name="number_of_bins" value="2000"/>
                    </section>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="" />
                    <param name="color" value="#ff0000" />
                    <param name="alpha" value="0.5" />
                    <param name="summary_method" value="max" />
                    <section name="reading_bw_conditional">
                        <param name="number_of_bins" value="300"/>
                    </section>
                    <param name="overlay_select" value="share-y"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="bottom" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_alpha.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 5-->
        <test>
            <param name="region" value="X:3000000-3300000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_subset_BDGP5.78.gtf.gz" ftype="gtf" />
                    <param name="title" value="test" />
                    <param name="height_bed" value="10" />
                    <param name="color" value="#000000" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="UCSC"/>
                    </conditional>
                    <param name="spacer_height" value="1"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_subset_BDGP5.78_asbed4.bed.gz" ftype="bed" />
                    <param name="title" value="test" />
                    <param name="height_bed" value="10" />
                    <param name="color" value="#000000" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="UCSC"/>
                    </conditional>
                    <param name="spacer_height" value="1"/>
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_gtf_bed4.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 6-->
        <test>
            <param name="region" value="X:2760000-2802000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="narrow_peak_track_option" />
                    <param name="title" value="box" />
                    <param name="track_input_narrow_peak" value="test2.narrowPeak" ftype="encodepeak" />
                    <param name="color" value="#9bbb59" />
                    <param name="height_narrow_peak" value="4" />
                    <conditional name="display">
                        <param name="display_selector" value="box" />
                        <param name="use_summit" value="true" />
                    </conditional>
                    <param name="show_labels" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="narrow_peak_track_option" />
                    <param name="title" value="box line_width = 2" />
                    <param name="track_input_narrow_peak" value="test2.narrowPeak" ftype="encodepeak" />
                    <param name="color" value="#9bbb59" />
                    <param name="height_narrow_peak" value="4" />
                    <param name="line_width" value="2" />
                    <conditional name="display">
                        <param name="display_selector" value="box" />
                        <param name="use_summit" value="true" />
                    </conditional>
                    <param name="show_labels" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="narrow_peak_track_option" />
                    <param name="title" value="peak width 3" />
                    <param name="track_input_narrow_peak" value="test2.narrowPeak" ftype="encodepeak" />
                    <param name="color" value="#c0504d" />
                    <param name="height_narrow_peak" value="4" />
                    <conditional name="display">
                        <param name="display_selector" value="peak" />
                        <param name="use_summit" value="true" />
                        <param name="show_data" value="true" />
                        <param name="width_adjust" value="3" />
                        <param name="max_value" value="50" />
                    </conditional>
                    <param name="show_labels" value="false" />
                    <param name="spacer_height" value="0.5"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="narrow_peak_track_option" />
                    <param name="title" value="peak no data range" />
                    <param name="track_input_narrow_peak" value="test2.narrowPeak" ftype="encodepeak" />
                    <param name="color" value="#000000" />
                    <param name="height_narrow_peak" value="4" />
                    <conditional name="display">
                        <param name="display_selector" value="peak" />
                        <param name="use_summit" value="false" />
                        <param name="show_data" value="false" />
                    </conditional>
                    <param name="show_labels" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="bottom" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_narrowPeak.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 7-->
        <test>
            <param name="region" value="chrX:3300000-3500000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="genes" />
                    <param name="height_bed" value="10" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_subset_BDGP5.78.gtf.gz" ftype="gtf" />
                    <param name="title" value="gtf" />
                    <param name="height_bed" value="10" />
                    <conditional name="bed_style">
                        <section name="bed_advanced">
                            <param name="height_utr" value="0.75"/>
                            <conditional name="color_utr">
                                <param name="color_utr_select" value="manually"/>
                                <param name="color" value="#ff0000"/>
                            </conditional>
                            <section name ="gtf">
                                <param name="prefered_name" value="gene_name"/>
                                <param name="merge_transcripts" value="true"/>
                            </section>
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes_withrgbandscore.bed.gz" ftype="bed" />
                    <param name="title" value="genes with scores" />
                    <param name="height_bed" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="colormap" />
                        <param name="color" value="cool_r" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes_withrgbandscore.bed.gz" ftype="bed" />
                    <param name="title" value="genes with utr as bed_rgb" />
                    <param name="height_bed" value="10" />
                    <conditional name="bed_style">
                        <section name="bed_advanced">
                            <conditional name="color_utr">
                                <param name="color_utr_select" value="bed_rgb"/>
                            </conditional>
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes_withrgbandscore.bed.gz" ftype="bed" />
                    <param name="title" value="genes with coding as bed_rgb - labels_in_margin" />
                    <param name="height_bed" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="bed_rgb" />
                    </conditional>
                    <conditional name="labels">
                        <param name="plot_labels" value="true" />
                        <param name="labels_in_margin" value="true" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes_withrgbandscore.bed.gz" ftype="bed" />
                    <param name="title" value="genes bed_rgb like - all_labels_inside" />
                    <param name="height_bed" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="bed_rgb" />
                    </conditional>
                    <conditional name="bed_style">
                        <section name="bed_advanced">
                            <conditional name="color_utr">
                                <param name="color_utr_select" value="like"/>
                            </conditional>
                        </section>
                    </conditional>
                    <conditional name="labels">
                        <param name="plot_labels" value="true" />
                        <param name="all_labels_inside" value="true" />
                    </conditional>
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_gtf_flybase_param.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 8-->
        <test>
            <param name="region" value="chrX:3300000-3500000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="dm3_genes.bed" />
                    <param name="height_bed" value="10" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="UCSC"/>
                        <section name="bed_advanced">
                            <param name="global_max_row" value="true" />
                            <param name="max_labels" value="15" />
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="genes.bed.gz" />
                    <param name="height_bed" value="10" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="UCSC"/>
                        <section name="bed_advanced">
                            <param name="arrow_interval" value="10"/>
                            <param name="line_width" value="2"/>
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_ucsc_param.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 9-->
        <test>
            <param name="region" value="X:3133000-3138000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_subset_BDGP5.78.gtf.gz" ftype="gtf" />
                    <param name="title" value="test" />
                    <param name="height_bed" value="10" />
                    <param name="spacer_height" value="1"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_subset_BDGP5.78_asbed4.bed.gz" ftype="bed" />
                    <param name="title" value="test" />
                    <param name="height_bed" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="manually" />
                        <param name="color" value="red" />
                    </conditional>
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="UCSC"/>
                    </conditional>
                    <param name="spacer_height" value="1"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_subset_BDGP5.78.gtf.gz" ftype="gtf" />
                    <param name="title" value="test" />
                    <param name="height_bed" value="10" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="manually" />
                        <param name="color" value="red" />
                    </conditional>
                    <param name="spacer_height" value="1"/>
                    <conditional name="bed_style">
                        <param name="arrowhead_included" value="true"/>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="vlines_track_option" />
                    <param name="track_input_bed_single" value="dm3_subset_BDGP5.78_asbed4.bed.gz" ftype="bed" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_arrowhead_zoom.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 10-->
        <test>
            <param name="region" value="X:3340000-3380000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="domains.bed" ftype="bed" />
                    <param name="height_bed" value="6" />
                    <conditional name="color_bed">
                        <param name="color_bed_select" value="manually" />
                        <param name="color" value="yellow" />
                    </conditional>
                    <param name="display" value="triangles" />
                    <param name="spacer_height" value="1"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph_chrx_2e6_5e6.bg" ftype="bedgraph" />
                    <param name="title" value="bedgraph" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="blue" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph_chrx_2e6_5e6.bg" ftype="bedgraph" />
                    <param name="title" value="bedgraph" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="blue" />
                    <param name="use_middle" value="true" />
                    <conditional name="type_conditional">
                        <param name="type_selector" value="line_option" />
                    </conditional>
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_middle_triangle.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 11-->
        <test>
            <param name="region" value="chrX:3250000-3400000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hic_matrix_option" />
                    <param name="matrix_h5_cooler_multiple" value="Li_et_al_2015.h5"/>
                    <param name="title" value="Kc DpnII (Li et al. 2015)" />
                    <!--<param name="colormap" value="RdYlBu_r" />-->
                    <param name="depth" value="100000" />
                    <param name="transform" value="log1p" />
                    <param name="show_masked_bins" value="true" />
                    <param name="scale_factor" value="2.0" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="0.05" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_matrix_track_option" />
                    <param name="track_input_bedgraph_matrix" value="tad_score.gz" ftype="bedgraph" />
                    <param name="title" value="TAD separation score (Ramirez et al.)" />
                    <param name="height_bedgraph" value="10" />
                    <conditional name="type">
                        <param name="type_selector" value="lines" />
                        <param name="pos_score_in_bin" value="block" />
                        <param name="plot_horizontal_lines" value="true" />
                        <param name="show_data" value="true" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_matrix_track_option" />
                    <param name="track_input_bedgraph_matrix" value="tad_score.gz" ftype="bedgraph" />
                    <param name="title" value="TAD separation score (Ramirez et al.)" />
                    <param name="height_bedgraph" value="10" />
                    <conditional name="type">
                        <param name="type_selector" value="lines" />
                        <param name="pos_score_in_bin" value="center" />
                        <param name="plot_horizontal_lines" value="false" />
                    </conditional>
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_TADs_bdgm.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 12-->
        <test>
            <param name="region" value="chrX:3000000-3300000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hic_matrix_option" />
                    <param name="matrix_h5_cooler_multiple" value="Li_et_al_2015.h5"/>
                    <param name="title" value="Kc DpnII (Li et al. 2015)" />
                    <param name="colormap" value="Purples" />
                    <param name="depth" value="190000" />
                    <param name="transform" value="no" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test.arcs" ftype="bed" />
                    <param name="title" value="" />
                    <param name="line_width" value="10" />
                    <param name="links_type" value="loops" />
                    <conditional name="color_link">
                        <param name="color_link_select" value="manually" />
                        <param name="color" value="red" />
                    </conditional>
                    <param name="overlay_select" value="share-y" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test.arcs" ftype="bed" />
                    <param name="title" value="" />
                    <param name="height" value="5" />
                    <conditional name="color_link">
                        <param name="color_link_select" value="colormap" />
                        <param name="color" value="hot" />
                    </conditional>
                    <param name="max_value" value="5"/>
                    <param name="invert_orientation" value="true" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_link.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 13-->
        <test>
            <param name="region" value="chrX:3000000-3300000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test.arcs" ftype="bed" />
                    <param name="title" value="default" />
                    <conditional name="color_link">
                        <param name="color_link_select" value="manually" />
                        <param name="color" value="#000000" />
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test.arcs" ftype="bed" />
                    <param name="title" value="ylim 20kb" />
                    <conditional name="color_link">
                        <param name="color_link_select" value="manually" />
                        <param name="color" value="#000000" />
                    </conditional>
                    <param name="ylim" value="20000" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test.arcs" ftype="bed" />
                    <param name="title" value="compacted" />
                    <conditional name="color_link">
                        <param name="color_link_select" value="manually" />
                        <param name="color" value="#000000" />
                    </conditional>
                    <param name="compact_arcs_level" value="1" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test.arcs" ftype="bed" />
                    <param name="title" value="highly compacted" />
                    <conditional name="color_link">
                        <param name="color_link_select" value="manually" />
                        <param name="color" value="#000000" />
                    </conditional>
                    <param name="compact_arcs_level" value="2" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_link2.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 14-->
        <test>
            <param name="region" value="chrX:3000000-3300000"/>
            <section name="global_args">
                <param name="title" value="Scale bar"/> 
                <param name="trackLabelFraction" value="0.5"/>
                <param name="trackLabelHAlign" value="center"/>
            </section>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="1.0" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="default" />
                    <param name="spacer_height" value="1"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="scalebar where = right x_center = 3200000 size = 100002 fontsize = 8 line_width =2 color = red alpha = 0.5" />
                    <param name="color" value="red"/>
                    <param name="alpha" value="0.5"/>
                    <param name="line_width" value="2"/>
                    <section name="scalebar_pos">
                        <param name="x_center" value="3200000"/>
                        <param name="size" value="100002"/>
                    </section>
                    <param name="sb_where" value="right"/>
                    <param name="fontsize" value="8"/>
                    <param name="spacer_height" value="4"/>
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_scale_bar.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 15-->
        <test>
            <param name="region" value="chrX:3300000-3500000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="bottom" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="flybase" />
                    <param name="height_bed" value="10" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="UCSC" />
                    <param name="height_bed" value="10" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="UCSC"/>
                        <section name="bed_advanced">
                            <param name="arrow_interval" value="10"/>
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="tssarrow" />
                    <param name="height_bed" value="10" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="tssarrow"/>
                    </conditional>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="gene_track_option" />
                    <param name="track_input_bed" value="dm3_genes.bed.gz" ftype="bed" />
                    <param name="title" value="tssarrow 5kb" />
                    <param name="height_bed" value="10" />
                    <conditional name="bed_style">
                        <param name="bed_style_select" value="tssarrow"/>
                        <section name="bed_advanced">
                            <param name="arrow_length" value="5000"/>
                        </section>
                    </conditional>
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_tssarrow.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 16-->
        <test>
            <param name="region" value="X:2700000-3100000"/>
            <section name="global_args">
                <param name="decreasingXAxis" value="true"/>
            </section>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="(bigwig color=blue 2000 bins) overlayed with (bigwig mean color=red alpha = 0.5 max over 300 bins)" />
                    <param name="height_bigwig" value="7" />
                    <param name="color" value="#00b0f0" />
                    <section name="reading_bw_conditional">
                        <param name="number_of_bins" value="2000"/>
                    </section>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bigwig_track_option" />
                    <param name="track_input_bigwig" value="bigwig_chrx_2e6_5e6.bw" ftype="bigwig" />
                    <param name="title" value="" />
                    <param name="color" value="#ff0000" />
                    <param name="alpha" value="0.5" />
                    <param name="summary_method" value="max" />
                    <section name="reading_bw_conditional">
                        <param name="number_of_bins" value="300"/>
                    </section>
                    <param name="overlay_select" value="share-y"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="bottom" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_alpha_dec.png" ftype="png" compare="sim_size" delta="1000" />
        </test>
        <!--test 17-->
        <test>
            <param name="region" value="chr2:73,800,000-75,744,000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = blue transform = no" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="blue" />
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = blue transform = log" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="blue" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log"/>
                    </conditional>
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = red transform = log min_value = 1" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="red" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log"/>
                    </conditional>
                    <param name="min_value" value="1" />
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = green transform = log log_pseudocount = 2 min_value = 0" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="green" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log"/>
                        <param name="log_pseudocount" value="2"/>
                    </conditional>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = green operation = log(2+file) min_value = 0.7" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="green" />
                    <section name="op">
                        <param name="operation" value="log(2+file)" />
                    </section>
                    <param name="min_value" value="0.7" />
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = black transform = log2 log_pseudocount = 1 min_value = 0" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="black" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log2"/>
                        <param name="log_pseudocount" value="1"/>
                    </conditional>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = black operation = log2(1+file) min_value = 0" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="black" />
                    <section name="op">
                        <param name="operation" value="log2(1+file)" />
                    </section>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = black transform = log2 log_pseudocount = 1 min_value = 0 y_axis_values = original" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="black" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log2"/>
                        <param name="log_pseudocount" value="1"/>
                        <param name="y_axis_values" value="original"/>
                    </conditional>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="bottom" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_log.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 18-->
        <test>
            <param name="region" value="chrX:2700000-3100000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph_chrx_2e6_5e6.bg" ftype="bedgraph" />
                    <param name="title" value="file summary_method = mean number_of_bins=20" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="blue" />
                    <param name="show_data" value="true" />
                    <section name="reading_bdg_as_bw" >
                        <param name="summary_method" value="mean" />
                        <param name="number_of_bins" value="20" />
                    </section>
                    <param name="min_value" value="0" />
                    <param name="max_value" value="30" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph2_X_2.5e6_3.5e6.bdg" ftype="bedgraph" />
                    <param name="title" value="second_file summary_method = mean" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="red" />
                    <param name="show_data" value="true" />
                    <section name="reading_bdg_as_bw" >
                        <param name="summary_method" value="mean" />
                    </section>
                    <param name="min_value" value="0" />
                    <param name="max_value" value="30" />
                    <param name="spacer_height" value="0.5" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph_chrx_2e6_5e6.bg" ftype="bedgraph" />
                    <param name="title" value="operation = log1p(file) (no summary_method)" />
                    <param name="height_bedgraph" value="4" />
                    <param name="color" value="blue" />
                    <param name="show_data" value="true" />
                    <section name="op">
                        <param name="operation" value="log1p(file)" />
                    </section>
                    <param name="spacer_height" value="0.5" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="bedgraph_chrx_2e6_5e6.bg" ftype="bedgraph" />
                    <param name="title" value="operation = file - second_file" />
                    <param name="height_bedgraph" value="8" />
                    <param name="color" value="blue" />
                    <param name="show_data" value="true" />
                    <conditional name="color_negative">
                        <param name="color_negative_select" value="true" />
                        <param name="color" value="red" />
                    </conditional>
                    <section name="op">
                        <param name="operation" value="file - second_file" />
                        <param name="second_file" value="bedgraph2_X_2.5e6_3.5e6.bdg" ftype="bedgraph" />
                    </section>
                    <param name="min_value" value="-30" />
                    <param name="max_value" value="30" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_operation.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 19-->
        <test>
            <param name="region" value="chr2:73,800,000-75,744,000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = blue transform = no" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="blue" />
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = blue transform = log" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="blue" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log"/>
                    </conditional>
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = red transform = log min_value = 1" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="red" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log"/>
                    </conditional>
                    <param name="min_value" value="1" />
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = green transform = log log_pseudocount = 2 min_value = 0" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="green" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log"/>
                        <param name="log_pseudocount" value="2"/>
                    </conditional>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = green operation = log(2+file) min_value = 0.7" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="green" />
                    <section name="op">
                        <param name="operation" value="log(2+file)" />
                    </section>
                    <param name="min_value" value="0.7" />
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = black transform = log2 log_pseudocount = 1 min_value = 0" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="black" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log2"/>
                        <param name="log_pseudocount" value="1"/>
                    </conditional>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = black operation = log2(1+file) min_value = 0" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="black" />
                    <section name="op">
                        <param name="operation" value="log2(1+file)" />
                    </section>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="bedgraph_track_option" />
                    <param name="track_input_bedgraph" value="GSM3182416_E12DHL_WT_Hoxd11vp.bedgraph.gz" ftype="bedgraph" />
                    <param name="title" value="bedgraph color = black transform = log2 log_pseudocount = 1 min_value = 0 y_axis_values = original" />
                    <param name="height_bedgraph" value="5" />
                    <param name="color" value="black" />
                    <conditional name="logScale_conditional">
                        <param name="transform_selector" value="log2"/>
                        <param name="log_pseudocount" value="1"/>
                        <param name="y_axis_values" value="original"/>
                    </conditional>
                    <param name="min_value" value="0" />
                    <param name="show_data" value="true" />
                    <param name="grid" value="true" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="bottom" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_log_grid.png" ftype="png" compare="sim_size" delta="100" />
        </test>
        <!--test 20-->
        <test>
            <param name="region" value="chrX:3000000-3300000"/>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="top" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="0.05" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hic_matrix_option" />
                    <param name="matrix_h5_cooler_multiple" value="Li_et_al_2015.h5"/>
                    <param name="title" value="depth = 300000; transform = log1p; min_value = 5 (next track: overlay_previous = share-y links_type = loops)" />
                    <param name="depth" value="300000" />
                    <param name="transform" value="log1p" />
                    <param name="min_value" value="5" />
                    <param name="show_masked_bins" value="false" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test_wide.arcs" ftype="bed" />
                    <conditional name="color_link">
                        <param name="color" value="red" />
                    </conditional>
                    <param name="line_width" value="5" />
                    <param name="links_type" value="loops" />
                    <param name="overlay_select" value="share-y" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test_wide.arcs" ftype="bed" />
                    <conditional name="color_link">
                        <param name="color" value="RdYlGn" />
                    </conditional>
                    <param name="line_width" value="3" />
                    <param name="invert_orientation" value="true" />
                    <param name="title" value="links line_width = 3 color RdYlGn" />
                    <param name="height" value="3" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="spacer_option" />
                    <param name="spacer_height" value="1" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="hic_matrix_option" />
                    <param name="matrix_h5_cooler_multiple" value="Li_et_al_2015.h5"/>
                    <param name="title" value="depth = 300000; transform = log1p; min_value = 5 (next track: overlay_previous = share-y links_type = loops)" />
                    <param name="depth" value="300000" />
                    <param name="transform" value="log1p" />
                    <param name="min_value" value="5" />
                    <param name="show_masked_bins" value="false" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test_wide.arcs" ftype="bed" />
                    <conditional name="color_link">
                        <param name="color" value="red" />
                    </conditional>
                    <param name="line_width" value="5" />
                    <param name="links_type" value="loops" />
                    <param name="overlay_select" value="share-y" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="link_track_option" />
                    <param name="track_input_link" value="test_wide.arcs" ftype="bed" />
                    <conditional name="color_link">
                        <param name="color" value="RdYlGn" />
                    </conditional>
                    <param name="line_width" value="3" />
                    <param name="invert_orientation" value="true" />
                    <param name="use_middle" value="true" />
                    <param name="title" value="links line_width = 3 color RdYlGn use_middle = true" />
                    <param name="height" value="3" />
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="vlines_track_option" />
                    <param name="track_input_bed_single" value="tad_classification.bed" ftype="bed" />
                    <param name="line_width" value="3" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="test_arcs_use_middle.png" ftype="png" compare="sim_size" delta="1200" />
        </test>
        <!--test 21-->
        <test>
            <param name="region" value="X:3000000-3600000"/>
            <section name="global_args">
                <param name="trackLabelFraction" value="0.3"/>
                <param name="plotWidth" value="12"/>
                <param name="dpi" value="20"/>
            </section>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="scalebar where = right" />
                    <param name="where" value="right" />
                    <param name="spacer_height" value="0.5"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="scalebar scalebar_start_position = 3200000" />
                    <section name="scalebar_pos">
                        <param name="scalebar_start_position" value="3200000"/>
                    </section>
                    <param name="spacer_height" value="0.5"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="scalebar scalebar_start_position = 3200000 scalebar_end_position = 3250000" />
                    <section name="scalebar_pos">
                        <param name="scalebar_start_position" value="3200000"/>
                        <param name="scalebar_start_position" value="3250000"/>
                    </section>
                    <param name="spacer_height" value="0.5"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="scalebar scalebar_start_position = 3200000 x_center = 3250000" />
                    <section name="scalebar_pos">
                        <param name="scalebar_start_position" value="3200000"/>
                        <param name="x_center" value="3250000"/>
                    </section>
                    <param name="spacer_height" value="0.5"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="scalebar scalebar_start_position = 3200000 size = 50000" />
                    <section name="scalebar_pos">
                        <param name="scalebar_start_position" value="3200000"/>
                        <param name="size" value="50000"/>
                    </section>
                    <param name="spacer_height" value="0.5"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="scale_bar_option" />
                    <param name="title" value="scalebar scalebar_end_position = 3200000 size = 50000" />
                    <section name="scalebar_pos">
                        <param name="scalebar_end_position" value="3200000"/>
                        <param name="size" value="50000"/>
                    </section>
                    <param name="spacer_height" value="0.5"/>
                </conditional>
            </repeat>
            <repeat name="tracks">
                <conditional name="track_file_style_conditional">
                    <param name="track_file_style_selector" value="xaxis_option" />
                    <param name="xaxis_where" value="bottom" />
                </conditional>
            </repeat>
            <param name="image_file_format" value="png" />
            <output name="outFileName" file="master_scale_bar_startend.png" ftype="png" compare="sim_size" delta="100" />
        </test>
    </tests>
    <help><![CDATA[

pyGenomeTracks
==============

**pyGenomeTracks** is a visualization tool which aims to produce high-quality genome browser tracks that are highly customizable.
    Currently, it is possible to plot:

    - bigwig
    - bed/gtf (many options)
    - bedgraph
    - epilogos
    - narrow peaks
    - links
    - Hi-C matrices (cool or HiCExplorer h5)

_________________

Usage
-----

This tool takes various types of tracks as input:

    - **Hi-C tracks:**
        - **TAD vizualisation:** corrected Hi-C contact matrix to plot a contact heatmap. It is recommended to follow HiCExplorer's ``hicPlotMatrix`` instructions. Boundaries file can used, which is the output of HiCExplorer's ``hicFindTADs`` in bed format. If selected, TADs will be drawn directly on the contact heatmap.
        - **TAD score:** display TAD seperation score computed by HiCExplorer's ``hicFindTADs``.
    - **Chromatin states:** display blocks of different colors following a bed file.
    - **Gene track / Bed Track:** display genes or annotations in bed/gtf files. Labels like gene names can be toggled on or off.
    - **Link track:** display links (pair of coordinates) as arcs, triangles or loops.
    - **NarrowPeak track:** display narrowPeak (encode format) as boxes or as curve (reconstructed peak).
    - **Bigwig track:** generic bigwig track plotting.
    - **Bedgraph track:** generic bedgraph track plotting.
    - **Bedgraph matrix track** is used to specifically plot bm files computed by HiCExplorer's ``hicFindTADs`` (TAD seperation scores).
    - **Vlines:** vertical lines drawn on top of all tracks following a bed file. It is used as a visual support where regions start / end over all tracks, for example to display TAD boundaries computed by HiCExplorer's ``hicFindTADs``.
    - **Hlines:** horizontal lines drawn either by themselves or on top of other tracks.
    - **Spacer:** Add some space between two tracks.
    - **X-axis:** Plot x-axis scale wherever you want.
    - **Scale bar track:** Plot scale bar.

For each track, parameters for the color, the width or the font size can be defined.

_________________

Output
------

**pyGenomeTracks** output is similar to a genome browser screen-shot that besides the usual genes, and score data (like bigwig or bedgraph files)
may also contains Hi-C data. The plot is composed of tracks that need to be specified.
Below is represented the 85 Mb to 110 Mb region from human chromosome 2 visualized using **pyGenomeTracks**.
TADs were computed by HiCExplorer's ``hicFindTADs``. The additional tracks added correspond to:
TAD-separation score (as reported by HiCExplorer's ``hicFindTADs``), chromatin states,
principal component 1 (A/B compartment) computed using HiCExplorer's ``hicPCA``, ChIP-seq coverage for the H3K27ac mark, DNA methylation, and a gene track.
Data are from mouse cardiac myocytes, published by `Nothjunge et al. (2017)`_.

.. image:: $PATH_TO_IMAGES/pyGenomeTracks.png
   :width: 70 %

_________________

| For more information about pyGenomeTracks please consider our documentation on readthedocs_ or github_

.. _readthedocs: https://pygenometracks.readthedocs.io
.. _github: https://github.com/deeptools/pyGenomeTracks
.. _`Nothjunge et al. (2017)`: https://www.nature.com/articles/s41467-017-01724-9
]]></help>
    <expand macro="citations" />
</tool>