anchor.diff:    bool _pending = false;
   
     final EventHandle<EventArgs> _outputChangedHandle;
  +  final EventHandle<EventArgs> _inputChangedHandle;
   }
  
positive.code: // TODO: real tests
  class SlowMapper<TInput, TOutput> {
    SlowMapper() :
      _outputChangedHandle = new EventHandle<EventArgs>();
  
    TInput get input() => _input;
  
  
negative.code:     } else {
        _pending = true;
      }
      _inputChangedHandle.fireEvent(EventArgs.empty);
    }
  
    TOutput get output() => _output;
  
    EventRoot<EventArgs> get outputChanged() => _outputChangedHandle;
    EventRoot<EventArgs> get inputChanged() => _inputChangedHandle;
  
    abstract Future<TOutput> getFuture(TInput value);
  
  