...
if (! defined $phash{"D"}) { print "\$phash{D} is undefined, We expected that.\n"; }
Instead of defined $phash{"D"} use exists $phash{"D"} This has bitten me before. Stewart -- Stewart Leicester | JenSoft Technologies, LLC "Per Ardua Ad Astra" | <mailto:[EMAIL PROTECTED]>