       return callback err   if err
       return callback null  if not groups
 
-      queue = groups.map (group) -> ->
+      queue = groups.map (group) -> (fin) ->
         if group.slug in ['koding', 'guests'] # just skip koding & guests
-          queue.fin()
+          fin()
         else
-          group.leave client, queue.fin
-
-      dash queue, callback
+          group.leave client, fin
+
+      async.parallel queue, callback
 
   fetchAllParticipatedGroups: secure (client, callback) ->
 

  @getFlagRole            = 'content'
  @lastUserCountFetchTime = 0

  { ObjectId, Register, secure, race, dash, daisy, signature } = require 'bongo'
  { Relationship } = jraphical
  { permit } = require './group/permissionset'
  Validators = require './group/validators'
  Protected = require '../traits/protected'
  { extend } = require 'underscore'

  validateFullName = (value) -> not /<|>/.test value



  unstoreAll: (callback) ->
    @fetchStorages [], (err, storages) ->
      queue = storages.map (storage) ->
        (next) -> storage.remove -> next()
      async.series queue, -> callback null

  _store: ({ name, content }, callback) ->
    @fetchStorage { 'data.name' : name }, (err, storage) =>
