anchor.diff:              "seq": this.sequence
             });
           }
  +        this.heartbeatInterval =
  +            new Duration(milliseconds: json['d']['heartbeat_interval']);
  +        new Timer.periodic(heartbeatInterval, (Timer t) => this.heartbeat());
           break;
   
         case _OPCodes.invalidSession:
  
positive.code:   /// Sends a heartbeat packet.
    void heartbeat() {
      this.send("HEARTBEAT", this.sequence);
    }
  
    Future<Null> handleMsg(String msg, bool resume) async {
  
negative.code:       this.sequence = json['s'];
      }
  
      if (json['op'] == 11) print(11);
  
      switch (json['op']) {
        case _OPCodes.hello:
          if (this.sessionId == null || !resume) {
            this.send("IDENTIFY", <String, dynamic>{
              "token": this.ws.client._token,
  