anchor.diff:  
   ValueClass _createValueClass() {
     final builder = new ValueClassBuilder()..name = 'ValueClass';
  -  builder.superTypes.add(_classifier);
  +  builder.superTypes.add(genericClassifier);
     builder.properties.add((new PropertyBuilder()
           ..name = 'properties'
           ..type = _createBuiltSet(property))
  
positive.code:   packageBuilder.classifiers
      ..add(namedElement)
      ..add(classifier)
      ..add(property)
      ..add(valueClass);
    return packageBuilder.build();
  
negative.code:   return builder.build();
  }
  
  ValueClass _typeParameter;
  ValueClass get typeParameter => _typeParameter ??= _createTypeParameter();
  
  ValueClass _createTypeParameter() {
    final builder = new ValueClassBuilder()
      ..name = 'TypeParameter';
    builder.superTypes.add(namedElement);
    builder.properties
      ..add((new PropertyBuilder()
            ..name = 'bound'
            ..type = classifier)
          .build());
  
    return builder.build();
  }
  
  ValueClass _genericClassifier;
  ValueClass get genericClassifier =>
      _genericClassifier ??= _createGenericClassifier();
  
  ValueClass _createGenericClassifier() {
    final builder = new ValueClassBuilder()
      ..name = 'GenericClassifier'
      ..isAbstract = true;
    builder.superTypes.add(namedElement);
    builder.properties
      ..add((new PropertyBuilder()
            ..name = 'genericTypes'
            ..type = _createBuiltSet(typeParameter))
          .build());
  
    return builder.build();
  