sub pscolour ($;$) {
my ($spec, $adj1) = @_;
confess unless defined $spec;
- my @rgb = map { hex($_) / 15.0 } split //, $spec;
+ my $le = (length $spec)/3;
+ my $re = ("(.{$le})") x 3;
+ my @rgb = $spec =~ m/^$re$/; @rgb or confess "$re ?";
+ @rgb = map { hex($_) / (16**$le -1) } @rgb;
$adj1 //= sub { };
$adj1->(@rgb);
my $r = join ' ',