anchor.diff:      _readyState = WebSocket.OPEN;
   
       var transformer = new _WebSocketProtocolTransformer(_serverSide);
  -    _socket.transform(transformer).listen(
  +    _subscription = _socket.transform(transformer).listen(
           (data) {
             if (data is _WebSocketPing) {
               if (!_writeClosed) _consumer.add(new _WebSocketPong(data.payload));
  
positive.code: 
  
  class _WebSocketImpl extends Stream implements WebSocket {
    final StreamController _controller = new StreamController(sync: true);
    StreamSink _sink;
  
    final Socket _socket;
  
negative.code:           _controller.close();
          },
          cancelOnError: true);
      _subscription.pause();
      _controller = new StreamController(sync: true,
                                         onListen: _subscription.resume,
                                         onPause: _subscription.pause,
                                         onResume: _subscription.resume);
    }
  
    StreamSubscription listen(void onData(message),
  