-#* Exit points (0,1)
-
-END END, no End of program.
-SUCCEED END, no Return from a subroutine, basically.
-
-#* Anchors: (2..13)
-
-BOL BOL, no Match "" at beginning of line.
-MBOL BOL, no Same, assuming multiline.
-SBOL BOL, no Same, assuming singleline.
-EOS EOL, no Match "" at end of string.
-EOL EOL, no Match "" at end of line.
-MEOL EOL, no Same, assuming multiline.
-SEOL EOL, no Same, assuming singleline.
-BOUND BOUND, no Match "" at any word boundary
-BOUNDL BOUND, no Match "" at any word boundary
-NBOUND NBOUND, no Match "" at any word non-boundary
-NBOUNDL NBOUND, no Match "" at any word non-boundary
-GPOS GPOS, no Matches where last m//g left off.
-
-#* [Special] alternatives: (14..30)
-
-REG_ANY REG_ANY, no Match any one character (except newline).
-SANY REG_ANY, no Match any one character.
-CANY REG_ANY, no Match any one byte.
-ANYOF ANYOF, sv Match character in (or not in) this class.
-ALNUM ALNUM, no Match any alphanumeric character
-ALNUML ALNUM, no Match any alphanumeric char in locale
-NALNUM NALNUM, no Match any non-alphanumeric character
-NALNUML NALNUM, no Match any non-alphanumeric char in locale
-SPACE SPACE, no Match any whitespace character
-SPACEL SPACE, no Match any whitespace char in locale
-NSPACE NSPACE, no Match any non-whitespace character
-NSPACEL NSPACE, no Match any non-whitespace char in locale
-DIGIT DIGIT, no Match any numeric character
-DIGITL DIGIT, no Match any numeric character in locale
-NDIGIT NDIGIT, no Match any non-numeric character
-NDIGITL NDIGIT, no Match any non-numeric character in locale
-CLUMP CLUMP, no Match any combining character sequence
-
-#* Alternation (31)
-
-# BRANCH The set of branches constituting a single choice are hooked
-# together with their "next" pointers, since precedence prevents
-# anything being concatenated to any individual branch. The
-# "next" pointer of the last BRANCH in a choice points to the
-# thing following the whole choice. This is also where the
-# final "next" pointer of each individual branch points; each
-# branch starts with the operand node of a BRANCH node.
+#* Exit points
+
+END END, no ; End of program.
+SUCCEED END, no ; Return from a subroutine, basically.
+
+#* Anchors:
+
+BOL BOL, no ; Match "" at beginning of line.
+MBOL BOL, no ; Same, assuming multiline.
+SBOL BOL, no ; Same, assuming singleline.
+EOS EOL, no ; Match "" at end of string.
+EOL EOL, no ; Match "" at end of line.
+MEOL EOL, no ; Same, assuming multiline.
+SEOL EOL, no ; Same, assuming singleline.
+BOUND BOUND, no ; Match "" at any word boundary
+BOUNDL BOUND, no ; Match "" at any word boundary
+NBOUND NBOUND, no ; Match "" at any word non-boundary
+NBOUNDL NBOUND, no ; Match "" at any word non-boundary
+GPOS GPOS, no ; Matches where last m//g left off.
+
+#* [Special] alternatives:
+
+REG_ANY REG_ANY, no 0 S ; Match any one character (except newline).
+SANY REG_ANY, no 0 S ; Match any one character.
+CANY REG_ANY, no 0 S ; Match any one byte.
+ANYOF ANYOF, sv 0 S ; Match character in (or not in) this class, folding is native charset for non-utf8.
+ALNUM ALNUM, no 0 S ; Match any alphanumeric character
+ALNUML ALNUM, no 0 S ; Match any alphanumeric char in locale
+NALNUM NALNUM, no 0 S ; Match any non-alphanumeric character
+NALNUML NALNUM, no 0 S ; Match any non-alphanumeric char in locale
+SPACE SPACE, no 0 S ; Match any whitespace character
+SPACEL SPACE, no 0 S ; Match any whitespace char in locale
+NSPACE NSPACE, no 0 S ; Match any non-whitespace character
+NSPACEL NSPACE, no 0 S ; Match any non-whitespace char in locale
+DIGIT DIGIT, no 0 S ; Match any numeric character
+DIGITL DIGIT, no ; Match any numeric character in locale
+NDIGIT NDIGIT, no 0 S ; Match any non-numeric character
+NDIGITL NDIGIT, no ; Match any non-numeric character in locale
+CLUMP CLUMP, no 0 V ; Match any extended grapheme cluster sequence
+
+#* Alternation
+
+# BRANCH The set of branches constituting a single choice are hooked
+# together with their "next" pointers, since precedence prevents
+# anything being concatenated to any individual branch. The
+# "next" pointer of the last BRANCH in a choice points to the
+# thing following the whole choice. This is also where the
+# final "next" pointer of each individual branch points; each
+# branch starts with the operand node of a BRANCH node.