<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pise PUBLIC "pise2.dtd" "pise2.dtd" >
<pise>
	<head>
		<title>LogCombiner on XSEDE</title>
		<version>1.8.4-2.6.0</version>
		<description>Bayesian Evolutionary Analysis by Sampling Trees - run on XSEDE</description>
		<authors>Remco Boukaert, Alexei Drummond, Andrew Rambaut, and Marc A. Suchard</authors>
		<reference>
			Drummond, A. J. and A. Rambaut. 2007. BEAST: Bayesian evolutionary analysis by sampling trees. BMC Evolutionary Biology 7:214. 
		</reference>
		<reference>
			Suchard, M.A. and A. Rambaut. 2009. Many-Core algorithms for statistical phylogenetics. Bioinformatics XX:1-9.
		</reference>
		<category>Phylogeny /  Alignment</category>
	</head>
	
	<command>logcombiner</command>
	
<!--
*****************************************************************************************************************************************
Created by Mark Miller for CSG, 9_1_2011 or thereabouts.
*****************************************************************************************************************************************
Basic setup: 

            
               LogCombiner v1.8.3, 2002-2016
                    MCMC Output Combiner
                             by
           Andrew Rambaut and Alexei J. Drummond

             Institute of Evolutionary Biology
                  University of Edinburgh
                     a.rambaut@ed.ac.uk

               Department of Computer Science
                   University of Auckland
                  alexei@cs.auckland.ac.nz


  Usage: logcombiner [-trees] [-decimal] [-burnin <i>] [-resample <i>] [-scale <r>] [-renumber] [-help] <input-file-name1> [<input-file-name2> ...] <output-file-name>
    -trees use this option to combine tree log files
    -decimal this option converts numbers from scientific to decimal notation
    -burnin the number of states to be considered as 'burn-in'
    -resample resample the log files to this frequency (the original sampling frequency must be a factor of this value)
    -scale a scaling factor that will multiply any time units by this value
    -renumber this option renumbers output states consecutively
    -help option to print this message

  Example: logcombiner test1.log test2.log combined.log
  Example: logcombiner -burnin 10000 test1.log test2.log combined.log
 -->
 <!-- Usage: LogCombiner -log <file> -n <int> [<options>]
combines multiple (trace or tree) log files into a single log file.
options:
-log <file>      specify the name of the log file, each log file must be specified with separate -log option
-o <output.log>  specify log file to write into (default output is stdout)
-b <burnin>      specify the number PERCENTAGE of lines in the log file considered to be burnin (default 10)
-dir <directory> specify particle directory -* used for particle filtering in BEASTLabs only -* if defined only one log must be specified and the -n option specified
-n <int>         specify the number of particles, ignored if -dir is not defined
-resample <int>  specify number of states to resample
-decimal         flag to indicate numbers should converted from scientific into decimal format
-renumber        flag to indicate output states should be renumbered
-help            print this message -->
<!-- 
             LogCombiner v1.10.4, 2002-2018
                    MCMC Output Combiner
                             by
           Andrew Rambaut and Alexei J. Drummond

             Institute of Evolutionary Biology
                  University of Edinburgh
                     a.rambaut@ed.ac.uk

               Department of Computer Science
                   University of Auckland
                  alexei@cs.auckland.ac.nz


  Usage: logcombiner [-trees] [-decimal] [-burnin] [-resample] [-scale <r>] [-strip] [-renumber] [-help] <input-file-name1> [<input-file-name2> ...] <output-file-name>
    -trees use this option to combine tree log files
    -decimal this option converts numbers from scientific to decimal notation
    -burnin the number of states to be considered as 'burn-in'
    -resample resample the log files to this frequency (the original sampling frequency must be a factor of this value)
    -scale a scaling factor that will multiply any time units by this value
    -strip strip out all annotations (trees only)
    -renumber this option renumbers output states consecutively
    -help option to print this message

  Example: logcombiner test1.log test2.log combined.log
  Example: logcombiner -burnin 10000 test1.log test2.log combined.log
 -->
 <!--   LogCombiner   v2.6.1, 2002-2019
                                        
                                       by
                      Andrew Rambaut and Alexei J. Drummond
                                        
           Institute of Evolutionary Biology, University of Edinburgh
                               a.rambaut@ed.ac.uk 
                                        
             Department of Computer Science, University of Auckland
                            alexei@cs.auckland.ac.nz 
                                        
                          Part of the BEAST 2 package:
                        http://beast2.cs.auckland.ac.nz/ 
                                        
                                         
Usage: LogCombiner -log <file> -n <int> [<options>]
combines multiple (trace or tree) log files into a single log file.
options:
-log <file>      specify the name of the log file, each log file must be specified with separate -log option
-o <output.log>  specify log file to write into (default output is stdout)
-b <burnin>      specify the number PERCENTAGE of lines in the log file considered to be burnin (default 10)
-dir <directory> specify particle directory -* used for particle filtering in BEASTLabs only -* if defined only one log must be specified and the -n option specified
-n <int>         specify the number of particles, ignored if -dir is not defined
-resample <int>  specify number of states to resample
-decimal         flag to indicate numbers should converted from scientific into decimal format
-renumber        flag to indicate output states should be renumbered
-help            print this message

  -->

<parameters>

<!--  submission on comet: the invocation line and any needed thread specification  
					<parameter ismandatory="1" ishidden="1" type="String">
						<name>beast0_trestles</name>
						<attributes>
							<precond>
								<language>perl</language>
								<code>!$no_beagle &amp;&amp; $which_beast eq "0"</code>		
							</precond>
							<format>
								<language>perl</language>		
								<code>"<![CDATA[beastwrapper_1.8.0]]>"</code>
							</format>
							<group>0</group>
						</attributes>
					</parameter>			-->				
									
<!--  submission on comet: the invocation line and any needed thread specification  
					<parameter ismandatory="1" ishidden="1" type="String">
						<name>beast1_trestles</name>
						<attributes>
							<precond>
								<language>perl</language>
								<code>$which_beast eq "1"</code>		
							</precond>
							<format>
								<language>perl</language>		
								<code>"<![CDATA[beastwrapper_1.8.1]]>"</code>
							</format>
							<group>0</group>
						</attributes>
					</parameter>			-->				
					
<!--  submission on comet: the invocation line and any needed thread specification  
					<parameter ismandatory="1" ishidden="1" type="String">
						<name>beast2_trestles</name>
						<attributes>
							<precond>
								<language>perl</language>
								<code>$which_beast eq "2"</code>		
							</precond>
							<format>
								<language>perl</language>		
								<code>"<![CDATA[beastwrapper_1.8.2_comet]]>"</code>
							</format>
							<group>0</group>
						</attributes>
					</parameter>				-->			
					
<!--  submission on comet: the invocation line and any needed thread specification  -->
					<parameter ismandatory="1" ishidden="1" type="String">
						<name>beast4_comet</name>
						<attributes>
							<precond>
								<language>perl</language>
								<code>$which_beast eq "4"</code>		
							</precond>
							<format>
								<language>perl</language>		
								<code>"<![CDATA[logcombiner_1.8.4_expanse]]>"</code>
							</format>
							<group>0</group>
						</attributes>
					</parameter>							
								
<!--  submission on comet: the invocation line and any needed thread specification  -->
					<parameter ismandatory="1" ishidden="1" type="String">
						<name>beast104_comet</name>
						<attributes>
							<precond>
								<language>perl</language>
								<code>$which_beast eq "104"</code>		
							</precond>
							<format>
								<language>perl</language>		
								<code>"<![CDATA[logcombiner_1.10.4_expanse]]>"</code>
							</format>
							<group>0</group>
						</attributes>
					</parameter>

<!--  submission on comet: the invocation line and any needed thread specification  -->
					<parameter ismandatory="1" ishidden="1" type="String">
						<name>beast260_comet</name>
						<attributes>
							<precond>
								<language>perl</language>
								<code>$which_beast eq "260"</code>		
							</precond>
							<format>
								<language>perl</language>		
								<code>"<![CDATA[logcombiner_2.6.3_expanse]]>"</code>
							</format>
							<group>0</group>
						</attributes>
					</parameter>
					
<!-- this section defines the file scheduler.conf that accompanies the command line to the TG resource. It instructs the machine how to run the job.  --> 
<!-- RUNS THAT USE CODON PARTITIONING
 * If the data set has codon partitioning:

- Run in the shared Slurm partition with -threads <t>, where t = min(data partitions,4),
  along with -beagle_instances 1 -beagle_SSE -beagle_scaling dynamic.

Thus, include the following in the run script.

  #SBATCH -p shared
  #SBATCH -N 1
  #SBATCH -*ntasks-per-node=<t> change -* to double dash
  ...
  module load beast/1.8.3
  beast -threads <t> ... -->

<!-- configure scheduler.conf shared queue, one thread, one core, no beagle -->									
				<parameter type="String" ishidden="1" >
					<name>number_nodes</name>
					<attributes>
						<group>2</group>
						<paramfile>scheduler.conf</paramfile>
						<format>
							<language>perl</language>
							<code>
									"nodes=1\\n" .
									"node_exclusive=0\\n" .
									"mem=8G" .
									"threads_per_process=3\\n"
							</code>
						</format>
					</attributes>
				</parameter>
				
<!--  			<parameter issimple="1" ishidden="1" type="String">
					<name>set_threads</name>
					<attributes>
						<format>
							<language>perl</language>
							<code> "-threads 1"</code>
						</format>
						<group>4</group>
					</attributes>
				</parameter> -->	
<!-- end number of nodes  -->		
				
<!-- input file specification -->
<!-- the input file to be operated on ends the command line -->
		<parameter issimple="1" ismandatory="1" isinput="1" type="Sequence">
			<name>infile</name>
			<attributes>
				<prompt>Input File</prompt>
<!-- this file designator seems to come next to last in the command string, so we set if for 98 currently -->				
				<group>80</group>
				<filenames>logfile1.txt</filenames>
			</attributes>
		</parameter>
<!-- separate treatment of beast and beast2 -->
<!-- 				<format>
					<language>perl</language>
					<code>"logfile1.txt"</code>
				</format> -->
				
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>$which_beast &lt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"logfile1.txt"</code>
				</format>
				<group>80</group>
			</attributes>
		</parameter>
						
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast2</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>$which_beast &gt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"-log logfile1.txt"</code>
				</format>
				<group>80</group>
			</attributes>
		</parameter>					
				
<!-- Results section. To start we return all results files available-->

		<parameter ishidden="1" type="Results">
			<name>all_results</name>
			<attributes>
				<filenames>*</filenames>
			</attributes>
		</parameter>
		
<!-- This section provides visible queries that help configure the interface  -->

<!-- Dont use Beagle -->
			<parameter issimple="1" ismandatory="1" type="Excl">
			<name>which_beast</name>
			<attributes>
				<prompt>Choose your Beast/Beast2 Version</prompt>
				<vlist>
<!-- 					<value>0</value>
					<label>Version 1.8.0</label>
					<value>1</value>
					<label>Version 1.8.1</label>
					<value>2</value>
					<label>Version 1.8.2</label> -->
					<value>4</value>
					<label>Version 1.8.4</label>
					<value>104</value>
					<label>Version 1.10.4</label>
					<value>260</value>
					<label>Version 2.6.0</label>
				</vlist>
				<vdef>
					<value>104</value>				
				</vdef>
				<ctrls>
					<ctrl>
						<message>Please choose a BEAST version</message>
						<language>perl</language>
						<code>!defined $which_beast</code>
					</ctrl>
				</ctrls>
				<group>4</group>
				<comment>
<value>We can add more versions, just send a request. We can get it done in a day or so.</value>
				</comment>
			</attributes>
		</parameter>
		
<!-- this sets the run time -->
				<parameter type="Float" issimple="1" ismandatory="1">
					<name>runtime</name> 
					<attributes>
						<group>1</group>
						<paramfile>scheduler.conf</paramfile>
						<prompt>Maximum Hours to Run (up to 168 hours)</prompt>
						<vdef>
							<value>0.5</value>
						</vdef>
						<ctrls>
							<ctrl>
								<message>The maximum hours to run must be less than 168</message>
								<language>perl</language>
								<code>$runtime &gt; 168.0</code>
							</ctrl>
							<ctrl>
								<message>The maximum hours to run must be greater than 0.05</message>
								<language>perl</language>
								<code>$runtime &lt; 0.05</code>
							</ctrl>
						</ctrls>
						<format>
							<language>perl</language>
							<code>"runhours=$value\\n"</code>
						</format>
						<warns>
							<warn>
								<message>The job will run on 1 processor as configured. If it runs for the entire configured time, it will consume 1 X $runtime cpu hours</message>
								<language>perl</language>
								<code>$runtime &gt; 0</code>
							</warn>
						</warns>
						<comment>
<value>Estimate the maximum time your job will need to run. We recommend testing initially with a &lt; 0.5hr test run because Jobs set for 0.5 h or less depedendably run immediately in the "debug" queue. 
Once you are sure the configuration is correct, you then increase the time. The reason is that jobs &gt; 0.5 h are submitted to the "normal" queue, where jobs configured for 1 or a few hours times may
	run sooner than jobs configured for the full 168 hours. 
</value>
						</comment>
					</attributes>
				</parameter>
				
<!--     -trees use this option to combine tree log files  -->
		<parameter issimple="1" ismandatory="1" ishidden="0" type="Excl">
			<name>file_type</name>
			<attributes>
				<prompt>What file type? (BEAST only)</prompt>
				<precond>
					<language>perl</language>
					<code>$which_beast &lt; 200 </code>
				</precond>
				<vlist>
					<value>lgfiles</value>
					<label>Log Files</label>
					<value>trees</value>
					<label>Tree Files</label>
				</vlist>
				<format>
					<language>perl</language>
					<code>($value ne $vdef) ? "-trees":""</code>
				</format>
				<vdef>
					<value>lgfiles</value>				
				</vdef>
						<ctrls>
							<ctrl>
								<message>Please specify your file type</message>
								<language>perl</language>
								<code>!defined $file_type</code>
							</ctrl>
						</ctrls>				
				<group>4</group>
			</attributes>
		</parameter> 
				
<!--     -decimal this option converts numbers from scientific to decimal notation
      -->
				<parameter issimple="1"  type="Switch">
					<name>set_decimal</name>
					<attributes>
						<prompt>Convert numbers from scientific to decimal notation (-decimal)</prompt>
						<format>
							<language>perl</language>
							<code> ($value) ? "-decimal" : ""</code>
						</format>
						<vdef>
							<value>0</value>
						</vdef>
						<group>5</group>
						<comment>
							<value>This option will help the application determine how to run the job</value>
						</comment>
					</attributes>
				</parameter>
				
<!--   -renumber this option renumbers output states consecutively -->
<!--  				<parameter issimple="1" type="Switch">
					<name>renumber</name>
					<attributes>
						<prompt>Renumber output states consecutively(-renumber)</prompt>
						<format>
							<language>perl</language>
							<code> ($value) ? "-renumber":"" </code>
						</format>
						<vdef>
							<value>0</value>
						</vdef>
						<group>6</group>
						<comment>
							<value>This option will help the application determine how to run the job</value>
						</comment>
					</attributes>
				</parameter> -->
				
<!-- -resample resample the log files to this frequency (the original sampling frequency must be a factor of this value)-->
		<parameter issimple="1" ishidden="0" type="Integer">
			<name>resample_val</name>
			<attributes>
				<prompt>Resample the log files to lower frequency (-resample)</prompt>
				<format>
					<language>perl</language>
					<code> (defined $value) ? "-resample $value" : ""</code>
				</format>
				<group>4</group>
<!-- ERROR: Resampling frequency is not a multiple of existing sampling frequency
Finished - Quit program to exit. -->
				<comment>
					<value>This number must be a multiple of original specified sampling frequency. If you sampled every 1000 states, you can use any integer multiple of 1000</value>
				</comment>
			</attributes>
		</parameter> 

<!--      -scale a scaling factor that will multiply any time units by this value -->
		<parameter issimple="1" ishidden="0" type="Float">
			<name>scale_factor</name>
			<attributes>
				<prompt>Scaling factor for time (-scale)</prompt>
						<precond>
							<language>perl</language>
							<code>$which_beast &lt; 200 </code>
						</precond>
				<format>
					<language>perl</language>
					<code> (defined $value) ? "-scale $value" : ""</code>
				</format>
				<group>4</group>
				<comment>
<value>Specify a scaling factor that will multiply any time units by this value</value>
				</comment>
			</attributes>
		</parameter> 
		
<!-- -burnin the number of states to be considered as 'burn-in'  -->
				<parameter issimple="1" type="Integer">
					<name>set_burnin1</name>
					<attributes>
						<group>5</group>
						<prompt>Set the number of states for burn-in (-burnin; Beast)</prompt>
						<precond>
							<language>perl</language>
							<code>$which_beast &lt; 200</code>
						</precond>
						<format>
							<language>perl</language>
							<code> (defined $value) ? "-burnin $value":""</code>
						</format>
						<vdef>
							<value>200</value>
						</vdef>
						<ctrls>
							<ctrl>
								<message>Please enter a burnin value</message>
								<language>perl</language>
								<code>!defined $set_burnin1</code>
							</ctrl>
						</ctrls>
					</attributes>
				</parameter>
				
				<!-- -burnin the number of states to be considered as 'burn-in' for beast2 -->
				<parameter issimple="1" type="Integer">
					<name>set_burnin2</name>
					<attributes>
						<group>5</group>
						<prompt>Set the Percentage of states for burn-in (-b; Beast2)</prompt>
						<precond>
							<language>perl</language>
							<code>$which_beast &gt; 200</code>
						</precond>
						<format>
							<language>perl</language>
							<code> ($value) ? "-b $value":""</code>
						</format>
						<vdef>
							<value>10</value>
						</vdef>
						<ctrls>
							<ctrl>
								<message>Please enter a burnin value between 1 and 100</message>
								<language>perl</language>
								<code>!defined $set_burnin2</code>
							</ctrl>
							<ctrl>
								<message>Please enter a burnin value between 1 and 100</message>
								<language>perl</language>
								<code>$set_burnin2 &gt; 100</code>
							</ctrl>
							<ctrl>
								<message>Please enter a burnin value between 1 and 100</message>
								<language>perl</language>
								<code>$set_burnin2 &lt; 1</code>
							</ctrl>
						</ctrls>
						<comment>
							<value>This option will help the application determine how to run the job</value>
						</comment>
					</attributes>
				</parameter>
				
<!-- choose your log files -->
			<parameter type="Excl" issimple = "1">
			<name>num_logfiles</name>
			<attributes>
				<prompt>How many more log files do you need to upload? (0-5)</prompt>
				<vlist>
					<value>0</value>
					<label>0</label>
					<value>1</value>
					<label>1</label>
					<value>2</value>
					<label>2</label>
					<value>3</value>
					<label>3</label>
					<value>4</value>
					<label>4</label>
					<value>5</value>
					<label>5</label>
				</vlist>
			</attributes>
			</parameter>

		<parameter type="InFile" issimple = "1">
			<name>log_file2</name>
			<attributes>
				<prompt>Choose your second log file</prompt>
					<precond>
						<language>perl</language>
						<code>$num_logfiles &gt; 0</code>
					</precond>
					<ctrls>
						<ctrl>
							<message>Please supply logfile 2</message>
							<language>perl</language>
							<code>$num_logfiles &gt; 0 &amp;&amp; !defined $log_file2</code>
						</ctrl>
					</ctrls>
				<filenames>logfile2.txt</filenames>
			<group>81</group>
			</attributes>
		</parameter>
<!-- separate beast and beast2  -->
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast_a</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file2 &amp;&amp; $which_beast &lt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"logfile2.txt"</code>
				</format>
				<group>81</group>
			</attributes>
		</parameter>
						
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast2_a</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file2 &amp;&amp; $which_beast &gt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"-log logfile2.txt"</code>
				</format>
				<group>81</group>
			</attributes>
		</parameter>	
		
		<parameter type="InFile" issimple = "1">
			<name>log_file3</name>
			<attributes>
				<prompt>Choose your third log file</prompt>
					<precond>
						<language>perl</language>
						<code>$num_logfiles &gt; 1</code>
					</precond>
					<ctrls>
						<ctrl>
							<message>Please supply logfile 3</message>
						<language>perl</language>
							<code>$num_logfiles &gt; 1 &amp;&amp; !defined $log_file3</code>
						</ctrl>
					</ctrls>
				<filenames>logfile3.txt</filenames>
			<group>82</group>
			</attributes>
		</parameter>
		
<!-- separate beast and beast2  -->
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast_b</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file3 &amp;&amp; $which_beast &lt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"logfile3.txt"</code>
				</format>
				<group>82</group>
			</attributes>
		</parameter>
						
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast2_b</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file3 &amp;&amp; $which_beast &gt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"-log logfile3.txt"</code>
				</format>
				<group>82</group>
			</attributes>
		</parameter>	
		
		<parameter type="InFile" issimple = "1">
			<name>log_file4</name>
			<attributes>
				<prompt>Choose your fourth log file</prompt>
					<precond>
						<language>perl</language>
						<code>$num_logfiles &gt; 2</code>
					</precond>
					<ctrls>
						<ctrl>
							<message>Please supply logfile 4</message>
							<language>perl</language>
							<code>$num_logfiles &gt; 2 &amp;&amp; !defined $log_file4</code>
						</ctrl>
					</ctrls>
				<filenames>logfile4.txt</filenames>
			<group>83</group>
			</attributes>
		</parameter>

<!-- separate beast and beast2  -->
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast_c</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file4 &amp;&amp; $which_beast &lt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"logfile4.txt"</code>
				</format>
				<group>84</group>
			</attributes>
		</parameter>
						
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast2_c</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file4 &amp;&amp; $which_beast &gt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"-log logfile4.txt"</code>
				</format>
				<group>84</group>
			</attributes>
		</parameter>	
		
		<parameter type="InFile" issimple = "1">
			<name>log_file5</name>
			<attributes>
				<prompt>Choose your fifth log file</prompt>
					<precond>
						<language>perl</language>
						<code>$num_logfiles &gt; 3</code>
					</precond>
					<ctrls>
						<ctrl>
							<message>Please supply logfile 5</message>
							<language>perl</language>
							<code>$num_logfiles &gt; 3 &amp;&amp; !defined $log_file5</code>
						</ctrl>
					</ctrls>
				<filenames>logfile5.txt</filenames>
			<group>84</group>
			</attributes>
		</parameter>

<!-- separate beast and beast2  -->
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast_d</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file5 &amp;&amp; $which_beast &lt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"logfile5.txt"</code>
				</format>
				<group>85</group>
			</attributes>
		</parameter>
						
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast2_d</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file5 &amp;&amp; $which_beast &gt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"-log logfile5.txt"</code>
				</format>
				<group>85</group>
			</attributes>
		</parameter>	
		
		<parameter type="InFile" issimple = "1">
			<name>log_file6</name>
			<attributes>
				<prompt>Choose your sixth log file</prompt>
					<precond>
						<language>perl</language>
						<code>$num_logfiles &gt; 4</code>
					</precond>
					<ctrls>
						<ctrl>
							<message>Please supply logfile 6</message>
							<language>perl</language>
							<code>$num_logfiles &gt; 3 &amp;&amp; !defined $log_file6</code>
						</ctrl>
					</ctrls>
				<filenames>logfile6.txt</filenames>
			<group>84</group>
			</attributes>
		</parameter>
<!-- separate beast and beast2  -->
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast_f</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file6 &amp;&amp; $which_beast &lt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"logfile6.txt"</code>
				</format>
				<group>86</group>
			</attributes>
		</parameter>
						
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>infile_beast2_f</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>defined $log_file6 &amp;&amp; $which_beast &gt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"-log logfile6.txt"</code>
				</format>
				<group>86</group>
			</attributes>
		</parameter>	
		
<!--  specify the output file name  -->
				<parameter issimple="1" ismandatory="1" type="String">
					<name>set_output</name>
					<attributes>
						<prompt>Specify the name of the output file</prompt>
						<vdef>
							<value>out.txt</value>
						</vdef>
	<!-- this file designator seems to come last in the command string, so we set if for 99 currently -->
						<group>99</group>	
						<ctrls>
							<ctrl>
								<message>Please specify an output name</message>
								<language>perl</language>
								<code>!$set_output</code>
							</ctrl>
						</ctrls>
					</attributes>
				</parameter>
				
				<!-- separate beast and beast2  -->
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>outfile_beast_a</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>$which_beast &lt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"$set_output"</code>
				</format>
				<group>99</group>
			</attributes>
		</parameter>
						
<parameter issimple="1" ismandatory="1" ishidden="1" type="String">
			<name>outfile_beast2_a</name>
			<attributes>
						<precond>
							<language>perl</language>
							<code>$which_beast &gt; 200 </code>
						</precond>			
				<format>
					<language>perl</language>
					<code>"-o $set_output"</code>
				</format>
				<group>99</group>
			</attributes>
		</parameter>	
</parameters>
</pise>


