anchor.diff:  }
   
   
  -class $string extends $object {
  +class $string extends $object<String> {
     $string(String target) : super(target);
     
     
  
positive.code:   
    void times(f(int index), {int start: 0, bool reverse: false}) {
      if (!reverse) {
        for (int i = start; i < _target; i++) {
          f(i);
        }
        return;
      }
      for (int i = _target - 1; i >= start; i--) {
        f(i);
      }
    }
  }
  
  @proxy
  class $list extends $object {
    $list(List target) : super(target);
    
    get randomElement => target[new Random().nextInt(target.length)];
    
    List extract(type) {
      var _type = type is $type ? type._target : type;
      return _target.where((elem) =>
          reflect(elem).type.isAssignableTo(reflectType(_type))).toList();
    }
    
  
negative.code:     });
      doneLibraries.add(target);
      if (recursive) {
        target.libraryDependencies.forEach((dependency) {
          if (dependency.targetLibrary is LibraryMirror) {
            result.addAll($(dependency.targetLibrary)
                ._getClassMirrors(doneLibraries: doneLibraries));
  