public function detachPermission(&$permission, $reload = true)
    {
        if ( ! $this->hasPermission($permission))
            return;

        /** @var  \Arcanesoft\Contracts\Auth\Models\Permission  $permission */
        $permission = $this->getPermissionFromGroup($permission);

        event(new DetachingPermissionFromGroup($this, $permission));
        $permission->update(['group_id' => 0]);
        event(new DetachedPermissionFromGroup($this, $permission));

        $this->loadPermissions($reload);
    }