docs: function(){
        if (this.deferredToken)
        {
          this.deferredToken.destroy();
          this.deferredToken = null;
        }
  
        this.attach = $undef;
        this.detach = $undef;
  
        var cursor = this;
        while (cursor = cursor.handler)
          if (cursor.destroy)
            cursor.destroy.call(cursor.context);
  
        this.handler = null;
        this.value = null;
      }