sort markers for genotype download.
[sgn.git] / mason / primer3 / primer3results.mas
bloba71febf3dc078b93f663ce8c6953ed8ae79936d4
1 <%args>
2   $resultshash
3 </%args>
5 <%once>
6 use POSIX qw/ceil/;
7 </%once>
9 <& /page/page_title.mas, title => "Primer 3" &>
11 <HR></HR>
13 <h1> Results </h1>
15 Primer picking results for: <% $resultshash->{'SEQUENCE_ID'} %>
17 <p>
18 % if (exists $resultshash->{'PRIMER_MISPRIMING_LIBRARY'} ) {
19 Using <% $resultshash->{'PRIMER_MISPRIMING_LIBRARY'} %> mispriming library
20 % }
21 % else {
22 No mispriming library specified.
23 % }
24 <p>
26 <p>
27 % if (exists $resultshash->{'PRIMER_INTERNAL_MISHYB_LIBRARY'}) {
28 Using <% $resultshash->{'PRIMER_INTERNAL_MISHYB_LIBRARY'} %> mispriming library
29 % }
30 % else {
31 No hyb oligo mishyb library specified.
32 % }
33 </p>
35 % if (exists $resultshash->{'PRIMER_INTERNAL_0_SEQUENCE'}) {
36 <center>
37 <table border=1" cellpadding=4 cellspacing=4>
38 <tr><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
39 % my @left = split(',', $resultshash->{'PRIMER_LEFT_0'});
40 % my @right = split(',', $resultshash->{'PRIMER_RIGHT_0'});
41 % my @hybrid = split(',', $resultshash->{'PRIMER_INTERNAL_0'});
43 <tr><th>LEFT PRIMER</th><td><% $left[0] %></td><td><% $left[1] %></td><td><% $resultshash->{'PRIMER_LEFT_0_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_0_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_0_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_0_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_0_SEQUENCE'} %></td></tr>
45 <tr><th>RIGHT PRIMER</th><td><% $right[0] %></td><td><% $right[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_0_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_0_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_0_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_0_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_0_SEQUENCE'} %></td></tr>
47 <tr><th>HYB OLIGO</th><td><% $hybrid[0] %></td><td><% $hybrid[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_0_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_0_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_0_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_0_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_0_SEQUENCE'} %></td></tr> 
48 </table>
49 </center>
51 <p>
52 SEQUENCE SIZE:  <% length($resultshash->{'SEQUENCE_TEMPLATE'}) %>
53 </p>
55 <p>
56 % if (exists $resultshash->{'PRIMER_PAIR_0_PRODUCT_SIZE'}) {
57 PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_0_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_0_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_0_COMPL_END'} %>
58 % }
59 </p>
61 <p>
62 TARGETS {start, len}*:  <% $resultshash->{'SEQUENCE_TARGET'} %>
63 </p>
64 <p>
65 EXCLUDED REGIONS {start, len}*: <% $resultshash->{'SEQUENCE_EXCLUDED_REGION'} %>
66 </p>
69 <p>
70 <center>
71 <table style="font-family:arial;">
72 % my $sequence = $resultshash->{'SEQUENCE_TEMPLATE'};
73 % my @seq = split(undef,$sequence);
74 % my $numrows= ceil((length($sequence))/60);
75 % my $line = -59;
76 % my @excluded = split(',', $resultshash->{'SEQUENCE_EXCLUDED_REGION'});
77 % my @target = split(',', $resultshash->{'SEQUENCE_TARGET'});
78 % while ($numrows > 0) {
79 %       $line += 60;
80         <tr>
81         <td> <b> <% $line %> </b> </td>
82 %       foreach my $i ($line .. $line+59) {
83 %               if (exists $seq[$i-1]) {
84                         <td> <% $seq[$i-1] %> </td>
85 %               }
86 %       }
87         </tr>
88         <tr>
89         <td></td>
90 %       foreach my $i ($line .. $line+59) {
91 %               if ( ($i >= int($excluded[0])) && ($i <= (int($excluded[0]))+(int($excluded[1])-1)) ) {
92                         <td style="color:red;"> X </td>
93 %               }
94 %               elsif ( $i >= (int($target[0])) && $i <= (int($target[0])+int($target[1])-1) ) {
95                         <td> * </td>
96 %               }
97 %               elsif ( $i >= int($left[0]) && $i <= (int($left[0])+int($left[1])-1) ) {
98                         <td style="color:blue;"> > </td>
99 %               }
100 %               elsif ( ($i <= int($right[0])) && ($i >= ((int($right[0]))-(int($right[1])-1))) ) {
101                         <td style="color:blue;"> < </td>
102 %               }
103 %               elsif ( $i >= (int($hybrid[0])) && $i <= (int($hybrid[0])+int($hybrid[1])-1) ) {
104                         <td style="color:green;"> ^ </td>
105 %               }
106 %               else {
107                         <td> </td>
108 %               }
109 %       };
110         </tr>
111         <tr>
112         </tr>
113 %       $numrows--;
114 % }
115 </table border=1">
116 <table cellpadding=2>
117 KEYS (in order of precedence)
118 <tr><td style="color:red;">XXXXXX</td><td>excluded region</td></tr>
119 <tr><td>******</td><td>target</td></tr>
120 <tr><td style="color:blue;">>>>>>></td><td>left primer</td></tr>
121 <tr><td style="color:blue;"><<<<<<</td><td>right primer</td></tr>
122 <tr><td style="color:green;">^^^^^^</td><td>hyb oligo</td></tr>
123 </table>
124 </center>
125 </p>
126 % }
127 % else {
128 <HR></HR>
129 <h1> No Acceptable Primers Were Found </h1>
131 The statistics below should indicate why no acceptable primers were found. Try relaxing various parameters, including the self-complementarity parameters and max and min oligo melting temperatures. For example, for very A-T-rich regions you might have to increase maximum primer size or decrease minimum melting temperature. 
132 </p>
133 % }
135 % if (exists $resultshash->{'PRIMER_INTERNAL_1_SEQUENCE'}) {
136 <HR></HR>
137 <h5>Additional Oligos</h5>
138 <table border=1" cellpadding=4 cellspacing=4>
139 <tr><td>1</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
141 % my @left1 = split(',', $resultshash->{'PRIMER_LEFT_1'});
142 % my @right1 = split(',', $resultshash->{'PRIMER_RIGHT_1'});
143 % my @hybrid1 = split(',', $resultshash->{'PRIMER_INTERNAL_1'});
145 <tr><td></td><th>LEFT PRIMER</th><td><% $left1[0] %></td><td><% $left1[1] %></td><td><% $resultshash->{'PRIMER_LEFT_1_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_1_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_1_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_1_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_1_SEQUENCE'} %></td></tr>
146 <tr><td></td><th>RIGHT PRIMER</th><td><% $right1[0] %></td><td><% $right1[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_1_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_1_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_1_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_1_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_1_SEQUENCE'} %></td></tr>
148 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid1[0] %></td><td><% $hybrid1[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_1_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_1_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_1_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_1_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_1_SEQUENCE'} %></td></tr> 
150 </table>
152 <table>
153 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_1_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_1_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_1_COMPL_END'} %> </td>
154 </table>
155 % }
157 % if (exists $resultshash->{'PRIMER_INTERNAL_2_SEQUENCE'}) {
158 <table border=2" cellpadding=4 cellspacing=4>
159 <tr><td>2</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
161 % my @left2 = split(',', $resultshash->{'PRIMER_LEFT_2'});
162 % my @right2 = split(',', $resultshash->{'PRIMER_RIGHT_2'});
163 % my @hybrid2 = split(',', $resultshash->{'PRIMER_INTERNAL_2'});
165 <tr><td></td><th>LEFT PRIMER</th><td><% $left2[0] %></td><td><% $left2[1] %></td><td><% $resultshash->{'PRIMER_LEFT_2_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_2_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_2_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_2_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_2_SEQUENCE'} %></td></tr>
166 <tr><td></td><th>RIGHT PRIMER</th><td><% $right2[0] %></td><td><% $right2[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_2_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_2_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_2_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_2_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_2_SEQUENCE'} %></td></tr>
168 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid2[0] %></td><td><% $hybrid2[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_2_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_2_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_2_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_2_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_2_SEQUENCE'} %></td></tr> 
170 </table>
172 <table>
173 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_2_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_2_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_2_COMPL_END'} %> </td>
174 </table>
175 % }
177 % if (exists $resultshash->{'PRIMER_INTERNAL_3_SEQUENCE'}) {
178 <table border=3" cellpadding=4 cellspacing=4>
179 <tr><td>3</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
181 % my @left3 = split(',', $resultshash->{'PRIMER_LEFT_3'});
182 % my @right3 = split(',', $resultshash->{'PRIMER_RIGHT_3'});
183 % my @hybrid3 = split(',', $resultshash->{'PRIMER_INTERNAL_3'});
185 <tr><td></td><th>LEFT PRIMER</th><td><% $left3[0] %></td><td><% $left3[1] %></td><td><% $resultshash->{'PRIMER_LEFT_3_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_3_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_3_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_3_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_3_SEQUENCE'} %></td></tr>
186 <tr><td></td><th>RIGHT PRIMER</th><td><% $right3[0] %></td><td><% $right3[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_3_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_3_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_3_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_3_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_3_SEQUENCE'} %></td></tr>
188 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid3[0] %></td><td><% $hybrid3[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_3_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_3_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_3_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_3_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_3_SEQUENCE'} %></td></tr> 
190 </table>
192 <table>
193 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_3_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_3_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_3_COMPL_END'} %> </td>
194 </table>
195 % }
197 % if (exists $resultshash->{'PRIMER_INTERNAL_4_SEQUENCE'}) {
198 <table border=4" cellpadding=4 cellspacing=4>
199 <tr><td>4</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
201 % my @left4 = split(',', $resultshash->{'PRIMER_LEFT_4'});
202 % my @right4 = split(',', $resultshash->{'PRIMER_RIGHT_4'});
203 % my @hybrid4 = split(',', $resultshash->{'PRIMER_INTERNAL_4'});
205 <tr><td></td><th>LEFT PRIMER</th><td><% $left4[0] %></td><td><% $left4[1] %></td><td><% $resultshash->{'PRIMER_LEFT_4_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_4_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_4_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_4_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_4_SEQUENCE'} %></td></tr>
206 <tr><td></td><th>RIGHT PRIMER</th><td><% $right4[0] %></td><td><% $right4[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_4_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_4_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_4_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_4_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_4_SEQUENCE'} %></td></tr>
208 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid4[0] %></td><td><% $hybrid4[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_4_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_4_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_4_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_4_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_4_SEQUENCE'} %></td></tr> 
210 </table>
212 <table>
213 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_4_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_4_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_4_COMPL_END'} %> </td>
214 </table>
215 % }
217 % if (exists $resultshash->{'PRIMER_INTERNAL_5_SEQUENCE'}) {
218 <table border=5" cellpadding=4 cellspacing=4>
219 <tr><td>5</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
221 % my @left5 = split(',', $resultshash->{'PRIMER_LEFT_5'});
222 % my @right5 = split(',', $resultshash->{'PRIMER_RIGHT_5'});
223 % my @hybrid5 = split(',', $resultshash->{'PRIMER_INTERNAL_5'});
225 <tr><td></td><th>LEFT PRIMER</th><td><% $left5[0] %></td><td><% $left5[1] %></td><td><% $resultshash->{'PRIMER_LEFT_5_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_5_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_5_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_5_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_5_SEQUENCE'} %></td></tr>
226 <tr><td></td><th>RIGHT PRIMER</th><td><% $right5[0] %></td><td><% $right5[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_5_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_5_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_5_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_5_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_5_SEQUENCE'} %></td></tr>
228 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid5[0] %></td><td><% $hybrid5[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_5_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_5_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_5_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_5_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_5_SEQUENCE'} %></td></tr> 
230 </table>
232 <table>
233 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_5_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_5_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_5_COMPL_END'} %> </td>
234 </table>
235 % }
237 % if (exists $resultshash->{'PRIMER_INTERNAL_6_SEQUENCE'}) {
238 <table border=6" cellpadding=4 cellspacing=4>
239 <tr><td>6</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
241 % my @left6 = split(',', $resultshash->{'PRIMER_LEFT_6'});
242 % my @right6 = split(',', $resultshash->{'PRIMER_RIGHT_6'});
243 % my @hybrid6 = split(',', $resultshash->{'PRIMER_INTERNAL_6'});
245 <tr><td></td><th>LEFT PRIMER</th><td><% $left6[0] %></td><td><% $left6[1] %></td><td><% $resultshash->{'PRIMER_LEFT_6_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_6_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_6_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_6_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_6_SEQUENCE'} %></td></tr>
246 <tr><td></td><th>RIGHT PRIMER</th><td><% $right6[0] %></td><td><% $right6[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_6_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_6_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_6_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_6_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_6_SEQUENCE'} %></td></tr>
248 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid6[0] %></td><td><% $hybrid6[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_6_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_6_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_6_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_6_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_6_SEQUENCE'} %></td></tr> 
250 </table>
252 <table>
253 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_6_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_6_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_6_COMPL_END'} %> </td>
254 </table>
255 % }
257 % if (exists $resultshash->{'PRIMER_INTERNAL_7_SEQUENCE'}) {
258 <table border=7" cellpadding=4 cellspacing=4>
259 <tr><td>7</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
261 % my @left7 = split(',', $resultshash->{'PRIMER_LEFT_7'});
262 % my @right7 = split(',', $resultshash->{'PRIMER_RIGHT_7'});
263 % my @hybrid7 = split(',', $resultshash->{'PRIMER_INTERNAL_7'});
265 <tr><td></td><th>LEFT PRIMER</th><td><% $left7[0] %></td><td><% $left7[1] %></td><td><% $resultshash->{'PRIMER_LEFT_7_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_7_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_7_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_7_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_7_SEQUENCE'} %></td></tr>
266 <tr><td></td><th>RIGHT PRIMER</th><td><% $right7[0] %></td><td><% $right7[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_7_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_7_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_7_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_7_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_7_SEQUENCE'} %></td></tr>
268 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid7[0] %></td><td><% $hybrid7[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_7_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_7_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_7_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_7_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_7_SEQUENCE'} %></td></tr> 
270 </table>
272 <table>
273 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_7_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_7_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_7_COMPL_END'} %> </td>
274 </table>
275 % }
277 % if (exists $resultshash->{'PRIMER_INTERNAL_8_SEQUENCE'}) {
278 <table border=8" cellpadding=4 cellspacing=4>
279 <tr><td>8</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
281 % my @left8 = split(',', $resultshash->{'PRIMER_LEFT_8'});
282 % my @right8 = split(',', $resultshash->{'PRIMER_RIGHT_8'});
283 % my @hybrid8 = split(',', $resultshash->{'PRIMER_INTERNAL_8'});
285 <tr><td></td><th>LEFT PRIMER</th><td><% $left8[0] %></td><td><% $left8[1] %></td><td><% $resultshash->{'PRIMER_LEFT_8_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_8_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_8_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_8_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_8_SEQUENCE'} %></td></tr>
286 <tr><td></td><th>RIGHT PRIMER</th><td><% $right8[0] %></td><td><% $right8[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_8_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_8_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_8_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_8_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_8_SEQUENCE'} %></td></tr>
288 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid8[0] %></td><td><% $hybrid8[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_8_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_8_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_8_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_8_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_8_SEQUENCE'} %></td></tr> 
290 </table>
292 <table>
293 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_8_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_8_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_8_COMPL_END'} %> </td>
294 </table>
295 % }
297 % if (exists $resultshash->{'PRIMER_INTERNAL_9_SEQUENCE'}) {
298 <table border=9" cellpadding=4 cellspacing=4>
299 <tr><td>9</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
301 % my @left9 = split(',', $resultshash->{'PRIMER_LEFT_9'});
302 % my @right9 = split(',', $resultshash->{'PRIMER_RIGHT_9'});
303 % my @hybrid9 = split(',', $resultshash->{'PRIMER_INTERNAL_9'});
305 <tr><td></td><th>LEFT PRIMER</th><td><% $left9[0] %></td><td><% $left9[1] %></td><td><% $resultshash->{'PRIMER_LEFT_9_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_9_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_9_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_9_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_9_SEQUENCE'} %></td></tr>
306 <tr><td></td><th>RIGHT PRIMER</th><td><% $right9[0] %></td><td><% $right9[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_9_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_9_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_9_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_9_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_9_SEQUENCE'} %></td></tr>
308 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid9[0] %></td><td><% $hybrid9[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_9_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_9_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_9_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_9_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_9_SEQUENCE'} %></td></tr> 
310 </table>
312 <table>
313 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_9_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_9_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_9_COMPL_END'} %> </td>
314 </table>
315 % }
317 % if (exists $resultshash->{'PRIMER_INTERNAL_10_SEQUENCE'}) {
318 <table border=10" cellpadding=4 cellspacing=4>
319 <tr><td>10</td><th>OLIGO</th><td>start</td><td>len</td><td>tm</td><td>qc%</td><td>any</td><td>3'</td><td>seq</td></tr>
321 % my @left10 = split(',', $resultshash->{'PRIMER_LEFT_10'});
322 % my @right10 = split(',', $resultshash->{'PRIMER_RIGHT_10'});
323 % my @hybrid10 = split(',', $resultshash->{'PRIMER_INTERNAL_10'});
325 <tr><td></td><th>LEFT PRIMER</th><td><% $left10[0] %></td><td><% $left10[1] %></td><td><% $resultshash->{'PRIMER_LEFT_10_TM'} %></td><td><% $resultshash->{'PRIMER_LEFT_10_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_LEFT_10_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_LEFT_10_SELF_END'} %></td><td><% $resultshash->{'PRIMER_LEFT_10_SEQUENCE'} %></td></tr>
326 <tr><td></td><th>RIGHT PRIMER</th><td><% $right10[0] %></td><td><% $right10[1] %></td><td><% $resultshash->{'PRIMER_RIGHT_10_TM'} %></td><td><% $resultshash->{'PRIMER_RIGHT_10_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_RIGHT_10_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_RIGHT_10_SELF_END'} %></td><td><% $resultshash->{'PRIMER_RIGHT_10_SEQUENCE'} %></td></tr>
328 <tr><td></td><th>HYB OLIGO</th><td><% $hybrid10[0] %></td><td><% $hybrid10[1] %></td><td><% $resultshash->{'PRIMER_INTERNAL_10_TM'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_10_GC_PERCENT'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_10_SELF_ANY'} %></td><td> <% $resultshash->{'PRIMER_INTERNAL_10_SELF_END'} %></td><td><% $resultshash->{'PRIMER_INTERNAL_10_SEQUENCE'} %></td></tr> 
330 </table>
332 <table>
333 <tr><td></td><td>PRODUCT SIZE:  <% $resultshash->{'PRIMER_PAIR_10_PRODUCT_SIZE'} %>, PAIR ANY COMPL:  <% $resultshash->{'PRIMER_PAIR_10_COMPL_ANY'} %>, PAIR 3' COMPL:  <% $resultshash->{'PRIMER_PAIR_10_COMPL_END'} %> </td>
334 </table>
335 % }
337 <HR></HR>
338 <h5> Statistics </h5>
341 LEFT:  <% $resultshash->{'PRIMER_LEFT_EXPLAIN'} %>
342 </p>
344 RIGHT:  <% $resultshash->{'PRIMER_RIGHT_EXPLAIN'} %>
345 </p>
347 HYB:  <% $resultshash->{'PRIMER_INTERNAL_EXPLAIN'} %>
348 </p>
350 Pair Stats:  <% $resultshash->{'PRIMER_PAIR_EXPLAIN'} %>
351 </p>
353 % if (exists $resultshash->{'PRIMER_ERROR'}) {
354 ERROR MESSAGE: <% $resultshash->{'PRIMER_ERROR'} %>
355 % }