anchor.diff:    }) {
       _temperature = new HandlerWatchStream<Temperature>(_startPollingTemperature, _endPollingTemperature);
       _status = new HandlerWatchStream<ThermostatStatus>(_startPollingStatus, _endPollingStatus);
  +    _report = new HandlerWatchStream<ThermostatReport>(_startPollingReport, _endPollingReport);
       _initialize();
     }
   
  
positive.code:               _commands.remove(key);
                command._completer.complete(result);
              }
              if (_temperatureSubscriptionActive || _statusSubscriptionActive) {
                String result = await _rawSend(connection, buffer, 'RAS1');
                _processStatus(result);
                if (_commands.isEmpty)
  
negative.code:   final ErrorHandler onError;
    final LogCallback onLog;
  
    bool _temperatureSubscriptionActive = false;
    WatchStream<Temperature> _temperature;
    WatchStream<Temperature> get temperature => _temperature;
    
    bool _statusSubscriptionActive = false;
    WatchStream<ThermostatStatus> _status;
    WatchStream<ThermostatStatus> get status => _status;
  
    bool _reportSubscriptionActive = false;
    WatchStream<ThermostatReport> _report;
    WatchStream<ThermostatReport> get report => _report;
  
    MeasurementStation _station;
    bool _active = true;
  
    void _processStatus(String message) {
      assert(_station != null);
  