anchor.diff:                  ? IndexSeparator.fromChar(markerRes.value[0][3])
                   : null);
               int startIndex = type == _listTypeOrdered
  -                ? int.parse(markerRes.value[0][2].join(),
  -                    onError: (String any) => 1)
  +                ? int.parse(markerRes.value[0][2].join(), onError: (_) => 1)
                   : 1;
               BulletType bulletType = (type == _listTypeUnordered
                   ? BulletType.fromChar(markerRes.value[0][2])
  
positive.code:     if (colon >= 1) {
        String schema = contents.substring(0, colon).toLowerCase();
        if (allowedSchemes.contains(schema)) {
          return res.copy(value: [new Autolink(contents)]);
        }
      }
  
      if (contents.contains(autolinkEmailRegExp)) {
        return res.copy(value: [new Autolink.email(contents)]);
      }
  
      return _failure(s, pos);
  
negative.code:           ]).manyUntil(char(']')).record) ^
        (String label) => label.substring(0, label.length - 1);
  
    static final Set<String> _linkStopChars =
        new Set.from(['&', '\\', '\n', ' ', '(', ')']);
    static final Parser<String> linkBalancedParenthesis = ((char("(") >
                choiceSimple([
                  noneOfSet(_linkStopChars),
                  escapedChar1,
                  htmlEntity1,
                  oneOf2('&', '\\')
                ]).many1) <
            char(')')) ^
        (List<String> i) => "(${i.join()})";
  
    static final Parser<String> linkInlineDestination =
        (((char("<") > noneOf3("<", ">", "\n").many) < char(">")) |
                choiceSimple([
                  noneOfSet(_linkStopChars),
                  escapedChar1,
                  htmlEntity1,
                  linkBalancedParenthesis,
                  oneOf2('&', '\\')
                ]).many) ^
            (List<String> i) => i.join();
  
    static final Parser<String> linkBlockDestination =
        (((char("<") > noneOf3("<", ">", "\n").many1) < char(">")) |
                choiceSimple([
                  noneOfSet(_linkStopChars),
                  escapedChar1,
                  htmlEntity1,
                  linkBalancedParenthesis,
                  oneOf2('&', '\\')
                ]).many1) ^
            (List<String> i) => i.join();
  
    static final Parser<String> oneNewLine = newline.notFollowedBy(blankline);
    static final Parser<String> linkTitle = choiceSimple([
          ((char("'") >
                  choiceSimple([
                    noneOf4("'", "&", "\\", "\n"),
                    oneNewLine,
                    escapedChar1,
                    htmlEntity1,
                    oneOf2('&', '\\')
                  ]).many) <
              char("'")),
          ((char('"') >
                  choiceSimple([
                    noneOf4('"', "&", "\\", "\n"),
                    oneNewLine,
                    escapedChar1,
                    htmlEntity1,
                    oneOf2('&', '\\')
                  ]).many) <
              char('"')),
          ((char('(') >
                  choiceSimple([
                    noneOf4(')', "&", "\\", "\n"),
                    oneNewLine,
                    escapedChar1,
                    htmlEntity1,
                    oneOf2('&', '\\')
                  ]).many) <
              char(')'))
        ]) ^
        (List<String> i) => i.join();
  
    //
  