              JName.release group.slug, => callback err
            else
              queue.next()
-        -> group.addMember delegate, (err)->
+        -> group.addMember owner, (err)->
             if err then callback err
             else
               console.log 'member is added'
               queue.next()
-        -> group.addAdmin delegate, (err)->
+        -> group.addAdmin owner, (err)->
             if err then callback err
             else
               console.log 'admin is added'
               queue.next()
-        -> group.addOwner delegate, (err)->
+        -> group.addOwner owner, (err)->
             if err then callback err
             else
               console.log 'owner is added'

          console.log "#{label} is saved"
          queue.next()

    create = secure (client, formData, callback)->
      JAccount = require '../account'
      {delegate} = client.connection
      unless delegate instanceof JAccount
        return callback new KodingError 'Access denied.'

      JPermissionSet = require './permissionset'
      JMembershipPolicy = require './membershippolicy'
      JName = require '../name'
      group                 = new this formData
      permissionSet         = new JPermissionSet
      defaultPermissionSet  = new JPermissionSet
      queue = [

      ]
      if 'private' is group.privacy
        queue.push -> group.createMembershipPolicy -> queue.next()

      queue.push =>
        @emit 'GroupCreated', { group, creator: owner }
        callback null, group

      daisy queue

  @create$ = secure (client, formData, callback)->
    JAccount = require '../account'
    {delegate} = client.connection

    unless delegate instanceof JAccount
      return callback new KodingError 'Access denied.'

    @create formData, delegate, callback

  @findSuggestions = (client, seed, options, callback)->
    {limit, blacklist, skip}  = options
