public boolean contains(Permission perms, Player player) {
        if (groups != null && !groups.isEmpty()) {
            for (GroupAssignment group : groups) {
                if (!perms.playerInGroup(group.getWorld(), player.getName(), group.getGroup())) {
                    return false;
                }
            }
        }
        return true;
    }