     provider.remove client, options, callback
 
 
-  @fetchExisting = secure revive (client, options, callback)->
+  @fetchExisting = secure revive yes, (client, options, callback)->
 
     { provider } = options
-
-    { connection: { delegate:account }, context: { group } } = client
-
-    JGroup = require '../group'
-    JGroup.one { slug: group }, (err, groupObj)=>
-
+    { r: { group, user } } = client
+
+    selector =
+      vendor : provider.slug
+      users  : $elemMatch: id: user.getId()
+      groups : $elemMatch: id: group.getId()
+
+    fieldsToFetch = label:1, meta:1, groups:1
+
+    JMachine.someData selector, fieldsToFetch, { }, (err, cursor)->
       return callback err  if err
-      return callback new Error "Group not found"  unless groupObj
-
-      account.fetchUser (err, user)=>
-
+      cursor.toArray (err, arr) ->
         return callback err  if err
-        return callback new Error "user is not defined"  unless user
-
-        selector =
-          vendor : provider.slug
-          users  : $elemMatch: id: user.getId()
-          groups : $elemMatch: id: groupObj.getId()
-
-        fieldsToFetch = label:1, meta:1, groups:1
-
-        JMachine.someData selector, fieldsToFetch, { }, (err, cursor)->
-          return callback err  if err
-          cursor.toArray (err, arr) ->
-            return callback err  if err
-
-            options.machines = arr
-            provider.fetchExisting client, options, callback
+
+        options.machines = arr
+        provider.fetchExisting client, options, callback
 
 
   @fetchAvailable = secure revive (client, options, callback)->


  @create = permit 'create machines',

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

      { provider, stack, label } = options



  @ping = permit 'ping machines',

    success: revive yes, (client, options, callback)->

      {provider} = options
      provider.ping client, options, callback
