sub list { join ", " => @_ [0 .. $#_ - 2], join " and " => @_ [grep {$_ >= 0} $#_ - 1, $#_] }