#! /usr/local/bin/perl

$a=-1;
while(<>){
  s!(<h([1-6])>(.*)</h[1-6]>)!$ti[++$a]=$3;$ni[$a]=$2;"<a name=\"$a\">$1</a>"!ge;
print;
}
$ant=0;
for(0..$a){
   print "<ul>\n" x ($ni[$_]-$ant) if($ni[$_]>$ant);
   print "</ul>\n" x ($ant-$ni[$_]) if($ni[$_]<$ant);
   print "<li><a href=\"#$_\">$ti[$_]</a>\n";
   $ant=$ni[$_];


}
print "</ul>\n" x ($ant);

