anchor.diff:        });
     }
   
  -  void restart([Map args = const {}]) {
  +  void restart({Map args: const {}, initialData}) {
       logger.info("Restarting ${this} with args: ${args}");
       this.args = args;
       if (!_started) {
         logger.fine("First restart of subscription");
  -      _start();
  +      _start(initialData: initialData);
       } else {
         if (!_initialSync.isCompleted) _initialSync.completeError(new CanceledException());
         _initialSync = createInitialSync();
  
positive.code:     _subscriptions.add(_periodicDiffRequesting);
    }
  
    void _start() {
      _started = true;
      logger.info("${this} starting");
      _errorStreamController.stream.listen((error){
  
negative.code:         return;
        }
        _version = response['version'];
       _handleData(response['data'], this);
        _connected = true;
  
        logger.warning("Got initial data for $resourceName, synced to version ${_version}");
  
        // TODO remove the check? (restart/dispose should to sth about initialSynd)
        if (!_initialSync.isCompleted) _initialSync.complete();
  