in reply to cgi programming...

Since the table row tag (tr) collides with a perl's transliteration operator (tr///), you need to use Tr (notice the capital T) to generate table rows. This is all in the CGI pod.

$cgi -> table ( #opening table Tr({-align=>CENTER,-valign=>TOP}, [ #TR td(['Name', 'Surename','Phone']) ] #TR ) ); #Closing table
--- print map { my ($m)=1<<hex($_)&11?' ':''; $m.=substr('AHJPacehklnorstu',hex($_),1) } split //,'2fde0abe76c36c914586c';