anchor.diff:    }
   
     bool operator ==(Object other) {
  -    if (this === other) {
  +    if (identical(this, other)) {
         return true;
       }
       if ((other is !String) ||
  
positive.code:         ++startIndex;  // empty match, advance and restart
          continue;
        }
        result.add(this.substring(previousIndex, match.start));
        startIndex = previousIndex = endIndex;
      }
      return result;
  
negative.code:     int previousIndex = 0;
      while (true) {
        if (startIndex == length || !iterator.hasNext) {
          result.add(this._substringUnchecked(previousIndex, length));
          break;
        }
        Match match = iterator.next();
        if (match.start == length) {
          result.add(this._substringUnchecked(previousIndex, length));
          break;
        }
        int endIndex = match.end;
  