anchor.diff:    Stream<PreferenceEvent> get onPreferenceChange => _controller.stream;
   
     void _startTimer() {
  +    // Flush dirty preferences periodically.
       if (_timer == null) {
  -      // Flush dirty preferences every 6 seconds.
  -      _timer = new Timer(new Duration(seconds: 6), flush);
  +      _timer = new Timer(_flushInterval, flush);
       }
     }
   }
  
positive.code: /**
   * A PreferenceStore backed by `chome.storage.local`.
   */
  PreferenceStore localStore = new _ChromePreferenceStore(chrome.storage.local, 'local');
  
  /**
   * A PreferenceStore backed by `chome.storage.sync`.
   */
  PreferenceStore syncStore = new _ChromePreferenceStore(chrome.storage.sync, 'sync');
  
  /**
   * A persistent preference mechanism.
  
negative.code:  * A [PreferenceStore] implementation based on `chrome.storage`.
   *
   * This preferences implementation will automatically flush any dirty changes
   * out to `chrome.storage` periodically.
   */
  class _ChromePreferenceStore implements PreferenceStore {
    chrome.StorageArea _storageArea;
    Duration _flushInterval;
    Map _map = {};
    StreamController<PreferenceEvent> _controller = new StreamController.broadcast();
    Timer _timer;
  
    _ChromePreferenceStore(this._storageArea, String name, this._flushInterval) {
      chrome.storage.onChanged.listen((chrome.StorageOnChangedEvent event) {
        if (event.areaName == name) {
          for (String key in event.changes.keys) {
  