#!/usr/sbin/perl
####################################################
# antigenic.pl
# Author: Pedro Reche
# Date: May/15/2002
# Function: Detection of antigenic determinants using Kolaskar and Tongaonkar (1990) method
# 
#
#####################################################

print "Content-Type: text/html\n\n";
print "<HTML>\n";
print<<EOT;
	<script language = "JavaScript">
	if (top != self){top.location.href = location.href;}
	</script>\n
EOT

print "<HEAD>\n";
print<<EOT;
	<!-- #BeginEditable "doctitle" --> \n
	<title>MIF Bioinformatics: Tools >> PREDICTED ANTIGENIC PEPTIDES</title> \n
	<META name="Keywords" content="tools, utilities, MIF, bioinformatics, molecular, genetics, immunology software, databases, genomics, sequencing, protein, computational biology, nucleotide, FASTA, BLAST, SRS,ClustalW, DNA, RNA, BioInformer, science, leading edge"> \n
	<META name="Description" content="Bioinformatics, Molecular Immunology Foundation"> \n
	<script language = "javascript"> \n
	function callLoadMethods()
	{ 
	;
	} \n
	function callUnLoadMethods()
	{
	;
	} \n
	</script> \n
	<!-- #EndEditable --> \n
	<link rel="stylesheet" href="../stylesheet.css" type="text/css"> \n
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> \n
	<script language = "javascript"  src = "../master.js"></script> \n 
	<!-- #EndEditable --> \n
	<link rel="stylesheet" href="../stylesheet.css" type="text/css"> \n
	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> \n
	<script language = "javascript"  src = "../master.js"></script> \n
	</head> \n
EOT
print<<EOT;
	<body  marginwidth="0" marginheight="0" leftmargin="0" topmargin="0" rightmargin="0" bottommargin="0" onUnload = "callUnLoadMethods()" onLoad="callLoadMethods(); MM_preloadImages('../images/dark_home.jpg','../images/dark_bioinfo.jpg','../images/dark_people.jpg','../images/dark_db.jpg','../images/dark_tools.jpg','../images/dark_tutorials.jpg')"> \n
EOT

local $bin="/usr/local/bin";
local $httproot = "/var/www/Tools/icons";
local $httpdata = "/var/www/tmp";
local  $gnuplot = "/usr/bin/gnuplot";
local  $ppmtogif = "/usr/bin/pnmtopng";

#print <<end_of_text;	
#<H1>Antigenic Determinants</H1>
#<HR>
#end_of_text



&GetFormData;
$ac = $INPUT{'name'};
$ac =~ /^([\w+.])$/;
$ac = $1;
$AC = $ac;
$var = $^T;
$ac =  $ac.$var;




$entry = $INPUT{'sequence'};
unless ($entry) {&ShowForm; }

print<<EOT;
<table width="100%" height = "95%" border="0" cellspacing="0" cellpadding="0"><tr><td align = "left" valign = "top">
<table width="100%" border="0" cellspacing="0" cellpadding="0"  class = "tabletop">
<tr>
<td width="440" height="85" align = "right"><img src="../images/logo.gif" width="440" height="85"></td>
<td valign = "top" align = "right" width = "100%"><table border = "0" cellspacing="0" cellpadding="0" class = "tabletop" width = "100%" height="85">
              <tr> 
                <td valign = "top" align = "right" colspan="2"> 
                  <table border = "0" cellspacing="0" cellpadding="0" height = "28" class = "tablehead">
                    <tr> 
			
                      <td align = "left" valign = "bottom">
                      <img src="../images/top_corner_new2.jpg" width="28" height="28"></td>
                      <td><img src="../images/google.png" width="66" height="28"></td>
                      
                      <form action="http://www.google.com/search" method="GET" target="_new">
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                      	<span class = "smallwhite">
                      	<nobr><a HREF="http://www.google.com/" target="_new"></a>&nbsp;</nobr></span></td>
                      <td align = "center" valign = "middle"   class = "small"><span class = "small">
                          <input TYPE=text name=q size=8 maxlength=255 value="">
                  	  </span></td>
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                      	 <span class =" small">&nbsp;
                      	  <input type=submit name=btnG VALUE="WWW Search" class =" small">&nbsp;</span></td>
                      </form>
                        
                      <form action="http://www.google.com/search" method="GET" target="_new">
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                     	 <span class = "smallwhite">
                      	   <nobr><a HREF="http://www.google.com/" target="_new"></a>&nbsp;</nobr>
                      	 </span></td>
                      <td align = "center" valign = "middle"   class = "small"><span class = "small">
                          <input TYPE=text name=q size=8 maxlength=255 value="">
                          </span></td>
                      <td><input type="hidden" name="q" value="site:www.mifoundation.org"></td>
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                         <span class =" small">&nbsp;
                         <input type=submit name=btnG VALUE="Site Search" class =" small">&nbsp;</span></td>
                        </form>
			
                    </tr>
                  </table>
                </td>
              </tr>
              
            </table>
 
 </td>
</tr>
<tr><td colspan = "2"><img src="../images/trans_new.jpg" width = "1" height = "5"></td></tr>
</table> 
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width = "100%">
<table width="679" border="0" cellspacing="0" cellpadding="0">
       <tr>
                  <td width="129" height="23"><a href="http://www.mifoundation.org/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image8','','../images/dark_home.jpg',1)"><img name="Image8" border="0" src="../images/light_home.jpg" width="129" height="23"> </a></td>
                <td width="129" height="23"><a href="" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image9','','../images/dark_bioinfo.jpg',1)"><img name="Image9" border="0" src="../images/light_bioinfo.jpg" width="129" height="23"></a></td>
                <td width="129" height="23"><a href="../People/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image10','','../images/dark_people.jpg',1)"><img name="Image10" border="0" src="../images/light_people.jpg" width="129" height="23"></a></td>
		<td width="129" height="23"><a href="../Database/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image11','','../images/dark_db.jpg',1)"><img name="Image11" border="0" src="../images/light_db.jpg" width="129" height="23"></a></td>
                <td width="129" height="23"><a href="../Tools/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image12','','../images/dark_tools.jpg',1)"><img name="Image12" border="0" src="../images/light_tools.jpg" width="129" height="23"></a></td>
                 <td width="129" height="23"><a href="" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image13','','../images/dark_tutorials.jpg',1)"><img name="Image13" border="0" src="../images/light_tutorials.jpg" width="129" height="23"></a></td>
                <td width="129" height="23"><a href="" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image14','','../images/dark_se.jpg',1)"><img name="Image14" border="0" src="../images/light_se.jpg" width="129" height="23"></a></td>
                </tr>
                      
</table></td></tr>
      <tr>
          <td width="100%" height = "5"  class = "tablehead" >
		    <table width="100%" height = "5"  border="0" cellspacing="0" cellpadding="0">
              <tr> 
                <td width = "100%" height = "20" align = "center"><!-- #BeginEditable "topnav" --> 
                  <!-- TOP LINK HERE -->
                  <nobr><a href="index.html"  class = "white">Tools</a></nobr> 
                  <!-- TOP LINK HERE -->
                  <!-- #EndEditable --></td>
              </tr>
            </table>
		  </td>
     </tr>
	 <tr>
	   <td  class = "tableborder"><img src="../images/trans.gif" height =  "3" width = "1"></td>
	 </tr>
	 </table>
      <table width="100%"  border="0" cellspacing="0" cellpadding="0">
        <tr>
    <td colspan = "6"  class = "tablebody"  height = "6"><img src="../images/trans.gif" width = "1" height = "6"></td>
	</tr>
  <tr>
    <td class = "tablebody"  width = "1%" height = "20" ><img src="../images/trans.gif" height = "20" width = "160"></td>
          <td width = "20" height = "20" valign = "top" align = "left" bgcolor = "#ffffff"><img src="../images/corner_new.gif" width="20" height="20"></td>
    <td>&nbsp;</td>
    <td width = "100%" colspan = "3"><img src="../images/trans.gif" height = "1" width = "1"></td>

  </tr>
  <tr>
          <td  width = "160" valign = "top" align = "left"> <!-- #BeginEditable "leftnav" -->
            <table width="160" border="0" cellspacing="0" cellpadding="4"  class = "tablebody"  >
            	<tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "index.html" class = "large">Tools
                  Home</a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "immunology.html" class = "large">Immunology </a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "searches.html" class = "large">Sequence Searches</a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "manipulation.html" class = "large">Sequence Manipulation </a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "structure.html" class = "large">Structure Analysis </a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "analysis.html" class = "large">DNA & Protein Analysis </a></td>
              </tr>
               <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "http://www.mifoundation.org/Tools/" target="_blank" class = "large">View all Tools</a></td>
              </tr>
                </table>
            <!-- #EndEditable -->
<table width="160" height = "100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td  class = "tablebody"  valign = "top" width="140" height="20"><img src="../images/trans.gif" height = "20" width = "140"></td>
                <td align = "right" valign = "top" width="20" height="20"><img src="../images/right_new.jpg" width="20" height="20"></td>
  </tr>
  <tr>
                <td colspan = "2" bgcolor = "#ffffff"><!-- #BeginEditable "explanation" --><!-- #EndEditable --></td>
              </tr>
</table>
	</td>
    <td width="20">&nbsp;</td>
          <td align = "left" valign = "top" width="593"> 
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
                <td valign = "top"> <!-- #BeginEditable "content" --> 
                  <table width="650" border="0" cellspacing="0" cellpadding="4">
                    <tr> 
                      <td class = "tableblue" nowrap width="1%">&nbsp;<span class = "whitetitle">Tools</span>&nbsp;</td>
                     <td> <nobr class="pagetitle">&nbsp; >> Predicting Antigenic Peptides</nobr></td>
                    </tr>
                  </table>
               
                  <table width="650" border="0" cellspacing="0" cellpadding="0">
                    <tr> 
                      <td height="3" background="../images/hor.gif"><img src="../images/trans.gif" width="25" height="3"></td>
                    </tr>
                  </table>
<table width="650" border=0 cellspacing=0 cellpadding=4>
<tr>
	<td bgcolor="white"><img SRC="/icons/ab.gif" align=CENTER></td>

	<td bgcolor="white">
		<H1><font color="purple">PREDICTED ANTIGENIC PEPTIDES</font></h1>
	</td>

</tr>
<tr>
	<td colspan="2" align="center"><h4><font color="red">YOUR RESULTS</font></h4></td>
</tr>
</table>
EOT

chop($entry);
$sq="";


#put sequence in entry
$ID = $INPUT{'name'};



&GetDateTime;
&DoData;

print "</BODY></HTML>\n";
close (FILE);
exit;

sub DoData {
	$sq=$entry;
	$sq=~s/[^ ACDEFGHIKLMNPQRSTVWY]//g;
	$sq=~s/ //g;
	$lenseq=length($sq);
	print "<h4>Your $AC sequence is $lenseq residues long</h4>\n";
	$AP{'A'}=1.064;
	$AP{'C'}=1.412;
	$AP{'D'}=0.866;
	$AP{'E'}=0.851;
	$AP{'F'}=1.091;
	$AP{'G'}=0.874;
	$AP{'H'}=1.105;
	$AP{'I'}=1.152;
	$AP{'K'}=0.930;
	$AP{'L'}=1.250;
	$AP{'M'}=0.826;
	$AP{'N'}=0.776;
	$AP{'P'}=1.064;
	$AP{'Q'}=1.015;
	$AP{'R'}=0.873;
	$AP{'S'}=1.012;
	$AP{'T'}=0.909;
	$AP{'V'}=1.383;
	$AP{'W'}=0.893;
	$AP{'Y'}=1.161;

	#STEP 2
	$total=0;
	for ($n=0;$n<$lenseq;$n++) {
		$char=substr($sq,$n,1);
		$total+=$AP{$char};	
	}
	$aap=$total/$lenseq;
    $aap=sprintf "%.4f",$aap;
	print "<h4>Average antigenic propensity for this protein is $aap</h4>\n";
	
	#STEP 1
	$ymax=0;
	$window_width=7;
	$firstone=int($window_width/2)+1;
	$w=$firstone-1;
	$n=$firstone;
	$lastone=$lenseq-$firstone;
	for ($n=$firstone;$n<=$lastone;$n++) {
		$sum=0;
		for ($k=-$w;$k<=$w;$k++) {
			$thispos=$n+$k;
			$char=substr($sq,$thispos,1);
			$sum+=$AP{$char};
		}
		$av[$n]=$sum/$window_width;
		if($av[$n]>$ymax) { $ymax=$av[$n]; }
	}
	#STEP 3
	if ($aap>=1.0) {
		for ($n=$firstone;$n<=$lastone;$n++) {
			if ($av[$n]>1.0) {
				$par[$n]=1;
			} else {
				$par[$n]=0;
			}
		}
	} else {
		for ($n=$firstone;$n<=$lastone;$n++) {
			if ($av[$n]>$aap) {
				$par[$n]=1;
			} else {
				$par[$n]=0;
			}
		}			
	}

	#STEP 4
	$numinarow=0;
	$nagd=0;
	for ($n=$firstone;$n<=$lastone;$n++) {
		$agd[$n]=0;
		if ($par[$n]==1) {
			if($numinarow==0) {	$first1=$n;	}
			$numinarow++;
		} else {
			if ($numinarow>=7) {
				for($j=$first1;$j<$n;$j++) {
					$agd[$j]=1;
				}
				$nagd++;
				$agd_start[$nagd]=$first1;
				$agd_end[$nagd]=$n-1;
			}
			$numinarow=0;
		}
	}
	if ($numinarow>=7) {
		for($j=$first1;$j<$n;$j++) {
			$agd[$j]=1;
		}
		$nagd++;
		$agd_start[$nagd]=$first1;
		$agd_end[$nagd]=$n-1;
	}		
	
	#print results
    # results file
	$res = $ac.'.txt';	
	open (FILE,">/tmp/$res");
		for ($n=$firstone;$n<=$lastone;$n++) { print FILE "$n $av[$n] $agd[$n]\n"; }
	close(FILE);

			$im=$ac.".gif";
	

		#gnuplot file
		$gpfile = $ac.'.plt';	
		open (FILE1,">/tmp/$gpfile");
		print FILE1 "set terminal pbm color \n";
		print FILE1 "set title \"AC: $AC ($lenseq bases)\"\n";
		print FILE1 "set xlabel \"Sequence Number\"\n";
		print FILE1 "set ylabel \"Average antigenic propensity\"\n";
		print FILE1 "set label 1 \"Span $window_width\" at graph 0.98,0.93 right\n";
		print FILE1 "set time \"$date1\" 5,-0.5\n";
		print FILE1 "set nokey\n";
		print FILE1 "plot \"/tmp/$res\" using 1:2 w lines, \\\n";
		print FILE1 "     \"/tmp/$res\" using 1:(\$3>0.5? $ymax : 1/0) w lines lt 0 lw 4 \n";		
		close(FILE1);
		system("$gnuplot /tmp/$gpfile  | $ppmtogif  2>/dev/null >  $httproot/$im");
	
	print "<h4>Antigenic plot for sequence $AC</h4>\n";
	print "<img src=\"http://bio.dfci.harvard.edu/Tools/icons/$im\">";
	
	print "<h4>There are $nagd antigenic determinants in your sequence:</h4>\n";
	print "<table border=1 cellspacing=1 cellpadding=3><tr bgcolor=\"yellow\">
	<th>n</th><th>Start Position</th><th>Sequence</th><th>End Position</th></tr>";
	for ($k=1;$k<=$nagd;$k++) {
        $ini = $agd_start[$k] -1;
		$ter = $agd_end[$k] - $ini;
		$pep = substr($sq, $ini, $ter);
		print "<tr><td align=center>$k</td><td align=center>$agd_start[$k]</td>
		<td align=center>$pep</td>
		<td align=center>$agd_end[$k]</td></tr>\n";
	}
	print "</table>\n";
print<<THIS;
<table width="650" border="0">
		<tr><td colspan=4 align="center"><p> Contact <a href="mailto:parecheg@med.ucm.es" class="red">Pedro Reche</a></p></td></tr>
<tr><td colspan=4 align="center"><p>Powered by www.mifoundation.org</p></td></tr>
<tr><td colspan=4 align="center"><p>Last Update: <script language ="javascript"  src ="../lastmod.js"></script></p></td></tr>
</table>
	<script language="javascript" type="text/javascript">
    <!--
	    var Days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
    	var d = new Date();
    	var tmonth = "0" + (d.getMonth()+1).toString();
    	var tmins = "0" + (d.getMinutes()).toString();
    	var zmonth = tmonth.substring((tmonth.length-2), (tmonth.length))
    	var zmins = tmins.substring((tmins.length-2), (tmins.length))
    	var output = Days[d.getDay()] + ', ' + zmonth + '/'+ d.getDate() + '/' + d.getFullYear()+ ' ' +d.getHours()+ ':' +zmins;
	//-->
    </script>
		  	<tr>

	<td width = "438" class = "tablebody" background = "../images/hor.gif" height="3"></td>
	<td colspan = "2"><img src="../images/trans_new.jpg" height="1" width="1"></td>
	</tr>

<tr><td height="25" class = "tablehead" align="center"><span class="white"><a href="http://www.mifoundation.org/cgi-bin/MailForm?mailTO=bioinfo&mailRE=Feedback" class="footer">MIF Bioinformatics</a>&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp <a href="http://www.mifoundation.org/" class="footer">Molecular Immunology Foundation</a>&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp<script language="JavaScript"> document.write(output); </script></span></td></tr>
<tr><td height="25"></td></tr>

</table>
THIS

#print "<table><tr><td><font size=1 face=\"verdana, geneva, helvetica\">It is now $longdate</font></td></tr></table>\n";


unlink("/tmp/$res");
unlink("/tmp/$gpfile");

}

sub ShowForm {
print <<eeee;
<!table width="650" border=0 cellspacing=0 cellpadding=4 background= \"/icons/Antibody.5JPG\">
<table width="100%" height = "95%" border="0" cellspacing="0" cellpadding="0"><tr><td align = "left" valign = "top">
<table width="100%" border="0" cellspacing="0" cellpadding="0"  class = "tabletop">
<tr>
<td width="440" height="85" align = "right"><img src="../images/logo.gif" width="440" height="85"></td>
<td valign = "top" align = "right" width = "100%"><table border = "0" cellspacing="0" cellpadding="0" class = "tabletop" width = "100%" height="85">
              <tr> 
                <td valign = "top" align = "right" colspan="2"> 
                  <table border = "0" cellspacing="0" cellpadding="0" height = "28" class = "tablehead">
                    <tr> 
			
                      <td align = "left" valign = "bottom">
                      <img src="../images/top_corner_new2.jpg" width="28" height="28"></td>
                      <td><img src="../images/google.png" width="66" height="28"></td>
                      
                      <form action="http://www.google.com/search" method="GET" target="_new">
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                      	<span class = "smallwhite">
                      	<nobr><a HREF="http://www.google.com/" target="_new"></a>&nbsp;</nobr></span></td>
                      <td align = "center" valign = "middle"   class = "small"><span class = "small">
                          <input TYPE=text name=q size=8 maxlength=255 value="">
                  	  </span></td>
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                      	 <span class =" small">&nbsp;
                      	  <input type=submit name=btnG VALUE="WWW Search" class =" small">&nbsp;</span></td>
                      </form>
                        
                      <form action="http://www.google.com/search" method="GET" target="_new">
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                     	 <span class = "smallwhite">
                      	   <nobr><a HREF="http://www.google.com/" target="_new"></a>&nbsp;</nobr>
                      	 </span></td>
                      <td align = "center" valign = "middle"   class = "small"><span class = "small">
                          <input TYPE=text name=q size=8 maxlength=255 value="">
                          </span></td>
                      <td><input type="hidden" name="q" value="site:www.mifoundation.org"></td>
                      <td align = "center" valign = "middle"   class = "small" nowrap>
                         <span class =" small">&nbsp;
                         <input type=submit name=btnG VALUE="Site Search" class =" small">&nbsp;</span></td>
                        </form>
			
                    </tr>
                  </table>
                </td>
              </tr>
              
            </table>
 
 </td>
</tr>
<tr><td colspan = "2"><img src="../images/trans_new.jpg" width = "1" height = "5"></td></tr>
</table> 
<table width="100%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width = "100%">
<table width="679" border="0" cellspacing="0" cellpadding="0">
       <tr>
                  <td width="129" height="23"><a href="http://www.mifoundation.org/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image8','','../images/dark_home.jpg',1)"><img name="Image8" border="0" src="../images/light_home.jpg" width="129" height="23"> </a></td>
                <td width="129" height="23"><a href="" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image9','','../images/dark_bioinfo.jpg',1)"><img name="Image9" border="0" src="../images/light_bioinfo.jpg" width="129" height="23"></a></td>
                <td width="129" height="23"><a href="../People/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image10','','../images/dark_people.jpg',1)"><img name="Image10" border="0" src="../images/light_people.jpg" width="129" height="23"></a></td>
		<td width="129" height="23"><a href="../Database/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image11','','../images/dark_db.jpg',1)"><img name="Image11" border="0" src="../images/light_db.jpg" width="129" height="23"></a></td>
                <td width="129" height="23"><a href="../Tools/" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image12','','../images/dark_tools.jpg',1)"><img name="Image12" border="0" src="../images/light_tools.jpg" width="129" height="23"></a></td>
                 <td width="129" height="23"><a href="" onMouseOut="MM_swapImgRestore()" onMouseOver="MM_swapImage('Image13','','../images/dark_tutorials.jpg',1)"><img name="Image13" border="0" src="../images/light_tutorials.jpg" width="129" height="23"></a></td>
                </tr>
                      
</table></td></tr>
      <tr>
          <td width="100%" height = "5"  class = "tablehead" >
		    <table width="100%" height = "5"  border="0" cellspacing="0" cellpadding="0">
              <tr> 
                <td width = "100%" height = "20" align = "center"><!-- #BeginEditable "topnav" --> 
                  <!-- TOP LINK HERE -->
                  <nobr><a href="index.html"  class = "white">Tools</a></nobr> 
                  <!-- TOP LINK HERE -->
                  <!-- #EndEditable --></td>
              </tr>
            </table>
		  </td>
     </tr>
	 <tr>
	   <td  class = "tableborder"><img src="../images/trans.gif" height =  "3" width = "1"></td>
	 </tr>
	 </table>
      <table width="100%"  border="0" cellspacing="0" cellpadding="0">
        <tr>
    <td colspan = "6"  class = "tablebody"  height = "6"><img src="../images/trans.gif" width = "1" height = "6"></td>
	</tr>
  <tr>
    <td class = "tablebody"  width = "1%" height = "20" ><img src="../images/trans.gif" height = "20" width = "160"></td>
          <td width = "20" height = "20" valign = "top" align = "left" bgcolor = "#ffffff"><img src="../images/corner_new.gif" width="20" height="20"></td>
    <td>&nbsp;</td>
    <td width = "100%" colspan = "3"><img src="../images/trans.gif" height = "1" width = "1"></td>

  </tr>
  <tr>
          <td  width = "160" valign = "top" align = "left"> <!-- #BeginEditable "leftnav" -->
            <table width="160" border="0" cellspacing="0" cellpadding="4"  class = "tablebody"  >
            	<tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "index.html" class = "large">Tools
                  Home</a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "immunology.html" class = "large">Immunology </a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "searches.html" class = "large">Sequence Searches</a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "manipulation.html" class = "large">Sequence Manipulation </a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "structure.html" class = "large">Structure Analysis </a></td>
              </tr>
              <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "analysis.html" class = "large">DNA & Protein Analysis </a></td>
              </tr>
               <tr valign = "top">
                <td>&nbsp;<img src="../images/bullet.gif" width="6" height="8">&nbsp;<a href = "http://www.mifoundation.org/Tools/" target="_blank" class = "large">View all Tools</a></td>
              </tr>
                </table>
            <!-- #EndEditable -->
<table width="160" height = "100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
    <td  class = "tablebody"  valign = "top" width="140" height="20"><img src="../images/trans.gif" height = "20" width = "140"></td>
                <td align = "right" valign = "top" width="20" height="20"><img src="../images/right_new.jpg" width="20" height="20"></td>
  </tr>
  <tr>
                <td colspan = "2" bgcolor = "#ffffff"><!-- #BeginEditable "explanation" --><!-- #EndEditable --></td>
              </tr>
</table>
	</td>
    <td width="20">&nbsp;</td>
          <td align = "left" valign = "top" width="593"> 
            <table width="100%" border="0" cellspacing="0" cellpadding="0">
  <tr>
                <td valign = "top"> <!-- #BeginEditable "content" --> 
                  <table width="650" border="0" cellspacing="0" cellpadding="4">
                    <tr> 
                      <td class = "tableblue" nowrap width="1%">&nbsp;<span class = "whitetitle">Tools</span>&nbsp;</td>
                     <td> <nobr class="pagetitle">&nbsp; >> Predicting Antigenic Peptides</nobr></td>
                    </tr>
                  </table>
               
                  <table width="650" border="0" cellspacing="0" cellpadding="0">
                    <tr> 
                      <td height="3" background="../images/hor.gif"><img src="../images/trans.gif" width="25" height="3"></td>
                    </tr>
                  </table>
<table width="650" border=0 cellspacing=0 cellpadding=4>
<tr>
	<td bgcolor="white"><img SRC="/icons/ab.gif" align=CENTER></td>

	<td bgcolor="white">
		<H1><font color="purple">PREDICTED ANTIGENIC PEPTIDES</font></h1>
	</td>

</tr>
</table>
<table width="650" border=0 cellspacing=0 cellpadding=4>
            <tr bgcolor="#2E8B57">
            <th width="21%" bgcolor="#6b84d2" class="bar2"><a href="antigenic.html" class="blacklink">
            <font color="white">Antigenic</a></font></th>

            <th width="19%" bgcolor="#6b84d2"><a href="antigenic.html#Introduction" class="whitelink">
            <font color="white">Introduction</a></font></th>
            <th width="19%" bgcolor="#6b84d2" class="bar2"><a href="antigenic.html#Directions" class="whitelink">
            <font color="white">Directions</font></a></th>
            <th width="19%" bgcolor="#6b84d2"><a href="antigenic.html#Software" class="whitelink">
            <font color="white">Software</font></a></th>
            </tr>
        </table>
<table width="650" border=0 cellspacing=0 cellpadding=4>
<tr><td><h4><font color ="purple">Function</font></h4></td></tr>
<tr><td><p>This program predicts those segments from within a protein sequence that are likely to be 
		antigenic by eliciting an antibody response. </p></td></tr>
<tr><td><h4><font color ="purple">Method</font></h4></td></tr>
<tr><td><p>Antigenic peptides are determined using the method of <a href="http://www.ncbi.nlm.nih.gov:80/entrez/query.fcgi?cmd=Retrieve&db=PubMed&list_uids=1702393&dopt=Abstract" target = "_new" class="red">Kolaskar and Tongaonkar (1990)</a>. 
                    Predictions are based on a table that reflects the occurrence of amino acid residues in experimentally known segmental epitopes. Segments are only reported if the have a minimum size of 8 residues. The reported accuracy of method is about 75%. </p></td>
</tr>
<tr><td><h4><font color ="purple">Input Data</font></h4></td></tr>
</table>
	

eeee
&GetDateTime;
print <<ffff;

<form action="antigenic.pl" method="post">
<table width="650" border=1 CELLPADDING="1" CELLSPACING="1">
	<tr>
		<td><b>	Enter a short name for your sequence</b><br></td>
	</tr>
	<tr>
		<td>
		<code>
			<INPUT SIZE=25 NAME="name"></code>
		</td>
	</tr>
	<tr>
		<td><b>Replace the example sequence with your protein sequence</b></br>
		</td>
	</tr>
	<tr>
		<td>
	<code>
	<textarea NAME="sequence" ROWS=10 COLS=60>
MWNLLHETDSAVATARRPRWLCAGALVLAGGFFLLGFLFGWFIKSSNEAT
NITPKHNMKAFLDELKAENIKKFLYNFTQIPHLAGTEQNFQLAKQIQSQW
KEFGLDSVELAHYDVLLSYPNKTHPNYISIINEDGNEIFNTSLFEPPPPG
YENVSDIVPPFSAFSPQGMPEGDLVYVNYARTEDFFKLERDMKINCSGKI
VIARYGKVFRGNKVKNAQLAGAKGVILYSDPADYFAPGVKSYPDGWNLPG
GGVQRGNILNLNGAGDPLTPGYPANEYAYRRGIAEAVGLPSIPVHPIGYY
DAQKLLEKMGGSAPPDSSWRGSLKVPYNVGPGFTGNFSTQKVKMHIHSTN
EVTRIYNVIGTLRGAVEPDRYVILGGHRDSWVFGGIDPQSGAAVVHEIVR
SFGTLKKEGWRPRRTILFASWDAEEFGLLGSTEWAEENSRLLQERGVAYI
NADSSIEGNYTLRVDCTPLMYSLVHNLTKELKSPDEGFEGKSLYESWTKK
SPSPEFSGMPRISKLGSGNDFEVFFQRLGIASGRARYTKNWETNKFSGYP
LYHSVYETYELVEKFYDPMFKYHLTVAQVRGGMVFELANSIVLPFDCRDY
AVVLRKYADKIYSISMKHPQEMKTYSVSFDSLFSAVKNFTEIASKFSERL
QDFDKSNPIVLRMMNDQLMFLERAFIDPLGLPDRPFYRHVIYAPSSHNKY
AGESFPGIYDALFDIESKVDPSKAWGEVKRQIYVAAFTVQAAAETLSEVA
</textarea>
</code>
		</td>
	</tr>
	<tr>
		<td align="center">	
			<input type="submit"><input type="Reset">
		</td>
	</tr>
<tr>
<td colspan ="2">
<font size=-1>Hits since June/2002 </font><img src="/cgi-bin/count.pl?countfile=counter/antigenic_job&style=digits" align="middle"></td>
<td align=" right"><font size = -1>Last updated:
<script language="JavaScript" type="text/javascript">
<!--  Copy this code into the BODY of your HTML document  -->
<!-- This script and many more are available free online at -->
<!-- The JavaScript Source!! http://javascript.internet.com -->
<!-- Begin
var days = new Array(8);
days[1] = "Sunday";
days[2] = "Monday";
days[3] = "Tuesday";
days[4] = "Wednesday";
days[5] = "Thursday";
days[6] = "Friday";
days[7] = "Saturday";
var months = new Array(13);
months[1] = "January";
months[2] = "February";
months[3] = "March";
months[4] = "April";
months[5] = "May";
months[6] = "June";
months[7] = "July";
months[8] = "August";
months[9] = "September";
months[10] = "October";
months[11] = "November";
months[12] = "December";
var dateObj = new Date(document.lastModified)
var wday = days[dateObj.getDay() + 1]
var lmonth = months[dateObj.getMonth() + 1]
var date = dateObj.getDate()
var fyear = dateObj.getYear()
if (fyear < 2000)
fyear = fyear + 1900
document.write(date + " " + lmonth + " " + fyear)
// End -->
</script>
</font> </td>
</tr>
</form>
<table>
<tr>
<td>Developer's site <font ="+2"><a href="http://imed.med.ucm.es/Tools/antigenic.pl">here</font></a></td>
</tr>
</table.

<table width="650" border="0">
	<script language="javascript" type="text/javascript">
    <!--
	    var Days = new Array('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday');
    	var d = new Date();
    	var tmonth = "0" + (d.getMonth()+1).toString();
    	var tmins = "0" + (d.getMinutes()).toString();
    	var zmonth = tmonth.substring((tmonth.length-2), (tmonth.length))
    	var zmins = tmins.substring((tmins.length-2), (tmins.length))
    	var output = Days[d.getDay()] + ', ' + zmonth + '/'+ d.getDate() + '/' + d.getFullYear()+ ' ' +d.getHours()+ ':' +zmins;
	//-->
    </script>
		  	<tr>

	<td width = "438" class = "tablebody" background = "../images/hor.gif" height="3"></td>
	<td colspan = "2"><img src="../images/trans_new.jpg" height="1" width="1"></td>
	</tr>

<tr><td height="25" class = "tablehead" align="center"><span class="white"><a href="http://www.mifoundation.org/cgi-bin/MailForm?mailTO=bioinfo&mailRE=Feedback" class="footer">MIF Bioinformatics</a>&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp <a href="http://www.mifoundation.org/" class="footer">Molecular Immunology Foundation</a>&nbsp&nbsp&nbsp|&nbsp&nbsp&nbsp<script language="JavaScript"> document.write(output); </script></span></td></tr>
<tr><td height="25"></td></tr>

</table>
</BODY></HTML>
ffff

exit;
}

sub GetDateTime {
	$date = localtime();
	$now=time;
	@days=("Sun","Mon","Tue","Wed","Thu","Fri","Sat");
	@longdays=("Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday");
	@month=("Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec");
	@longmonth=("January","February","March","April","May","June","July","August","September","October","November","December");

	($sec,$min,$hour,$mday,$mon,$yr,$wday,$yday,$isdst) = localtime(time);
	if ($min < 10) {$min="0".$min; }
	$shorttime="$hour:$min";
	$year=$yr+1900;
	$date1="$days[$wday] $mday $month[$mon] $year at $shorttime";
	$longdate="$longdays[$wday] $mday $longmonth[$mon] $year";
	$thisyear=$year;
}

sub GetFormData {
	$request_method=$ENV{'REQUEST_METHOD'};
	if ($request_method eq "GET") {
		$form_info=$ENV{'QUERY_STRING'};
	} else {
	   $size_of_info=$ENV{'CONTENT_LENGTH'};
	   read(STDIN, $form_info, $size_of_info);
	}
	@key_value_pairs=split(/&/,$form_info);
	foreach $key_value (@key_value_pairs) {
	    ($key,$value)=split(/=/,$key_value);
	    $value=~ tr/+/ /;
	    $value=~ s/%([\dA-Fa-f][\dA-Fa-f])/pack("C",hex($1))/eg;
	    $INPUT{$key} = $value;
	    #print "<font color=","\"","green","\"",">",$key,"</font> = ",$value,"<BR>\n";
	}
}
