anchor.diff:      implements MigrationResolutionHooks {
     FixBuilder _fixBuilder;
   
  -  TypeProvider get typeProvider => _fixBuilder.typeProvider;
  -
     final Expando<List<CollectionElement>> _collectionElements = Expando();
   
     final Expando<bool> _shouldStayNullAware = Expando();
  
positive.code:     }
      return type;
    }
  
    Element get _elementToString =>
        _fixBuilder.typeProvider.objectType.getMethod('toString');
    Element get _elementHashCode =>
        _fixBuilder.typeProvider.objectType.getGetter('hashCode');
    Element get _elementRuntimeType =>
        _fixBuilder.typeProvider.objectType.getMethod('runtimeType');
    Element get _elementNoSuchMethod =>
        _fixBuilder.typeProvider.objectType.getGetter('noSuchMethod');
  
    bool _needsNullCheckDueToStructure(Expression node) {
      var parent = node.parent;
  
negative.code: 
    FlowAnalysis<AstNode, Statement, Expression, PromotableElement, DartType>
        _flowAnalysis;
  
    TypeProvider get typeProvider => _fixBuilder.typeProvider;
  
    Element get _elementHashCode =>
        _fixBuilder.typeProvider.objectType.getGetter('hashCode');
  
    Element get _elementNoSuchMethod =>
        _fixBuilder.typeProvider.objectType.getGetter('noSuchMethod');
  
    Element get _elementRuntimeType =>
        _fixBuilder.typeProvider.objectType.getMethod('runtimeType');
  
    Element get _elementToString =>
        _fixBuilder.typeProvider.objectType.getMethod('toString');
  
    @override
    void freshTypeParameterCreated(TypeParameterElement newTypeParameter,
  