patterns----------------
(
[0, "..e......."],
[11, "..m......."],
[22, "..e......."],
[33, "..r......."],
[44, "..o......."],
[55, ".m........"],
[55, "..i......."],
[55, "...d......"],
[55, "....d....."],
[55, ".....i...."],
[55, "......e..."],
[55, ".......s.."],
[66, "..d......."],
####
my $underpat = qr/[^@under@tiles]/;
say "underpat is $underpat";
my @words = grep {
length $pat == length $_
&& !/$underpat/
&& /^$pat$/
&& ( ( $old ^ $_ ) !~ /^\0+\]$/ ) # adding just an 's' not allowed
##
##
underpat is (?^u:[^mh h i m q r t])
underpat is (?^u:[^mh h i m q r t])
underpat is (?^u:[^e m e r o i dh h i m q r t])
underpat is (?^u:[^e m e r o i dh h i m q r t])
underpat is (?^u:[^e m e r o i dh h i m q r t])
underpat is (?^u:[^e m e r o i dh h i m q r t])
underpat is (?^u:[^e m e r o i dh h i m q r t])
underpat is (?^u:[^e m e r o i dh h i m q r t])
underpat is (?^u:[^e m e r o i dh h i m q r t])
underpat is (?^u:[^dh h i m q r t])
underpat is (?^u:[^dh h i m q r t])
underpat is (?^u:[^dh h i m q r t])
##
##
say "new mask is $newmask";
substr $heights, $pos, length $highs,
( $highs & $newmask ) =~ tr/0-4/1-5/r | ( $highs & ~$newmask );