 
     success: (client, callback)->
 
-      @remove callback
+      @fetchData (err, credentialData) =>
+        return callback err  if err
+        credentialData.remove (err) =>
+          return callback err  if err
+          @remove callback

          (signature String, Function)
        create        :
          (signature Object, Function)
        # all           :
        #   (signature Function)
      instance        :
        delete        :
          (signature Function)

              return  if failed err, callback, credential, credData
              callback null, credential


  @one$: permit 'list credentials',

    success: (client, publicKey, callback)->

      options  = { limit : 1 }
      selector = { publicKey }

      {delegate} = client.connection
      delegate.fetchCredentials {},
        targetOptions : {
          selector, options
        }, (err, res = [])->
          callback err, res[0]


  @some$: permit 'list credentials',

    success: (client, selector, options, callback)->

      [options, callback] = [callback, options]  unless callback
      options ?= { limit : 10 }

      {delegate} = client.connection
      delegate.fetchCredentials {},
        targetOptions : {
          selector, options
        }, callback


  delete: permit

    advanced: [
