code: @MemoMismatches
      public Rule UlOrStarLine() {
          // This keeps the parser from getting bogged down on long strings of '*', '_' or '~',
          // or strings of '*', '_' or '~' with space on each side:
          return NodeSequence(
                  FirstOf(CharLine('_'), CharLine('*'), CharLine('~')),
                  push(new TextNode(match()))
          );
      }
docs: ************* EMPHASIS / STRONG ****************