public static void includeMatchingUsers(List<? super User> holders, Collection<ConstraintNodeMatcher<Node>> matchers, boolean includeOffline, LuckPermsPlugin plugin) {
        Map<UUID, User> users = new LinkedHashMap<>(plugin.getUserManager().getAll());

        if (!matchers.isEmpty()) {
            users.values().removeIf(user -> {
                for (ConstraintNodeMatcher<Node> matcher : matchers) {
                    if (user.normalData().asList().stream().anyMatch(matcher)) {
                        return false;
                    }
                }
                return true;
            });
        }

        if (includeOffline && users.size() < MAX_USERS) {
            if (matchers.isEmpty()) {
                findMatchingOfflineUsers(users, null, plugin);
            } else {
                for (ConstraintNodeMatcher<Node> matcher : matchers) {
                    if (users.size() < MAX_USERS) {
                        findMatchingOfflineUsers(users, matcher, plugin);
                    } else {
                        break;
                    }
                }
            }
        }

        users.values().stream()
                .sorted(Comparator
                        // sort firstly by the users relative weight (depends on the groups they inherit)
                        .<User>comparingInt(u -> u.getCachedData().getMetaData(QueryOptions.nonContextual()).getWeight(CheckOrigin.INTERNAL).intResult()).reversed()
                        // then, prioritise users we actually have a username for
                        .thenComparing(u -> u.getUsername().isPresent(), ((Comparator<Boolean>) Boolean::compare).reversed())
                        // then sort according to their username
                        .thenComparing(User::getPlainDisplayName, String.CASE_INSENSITIVE_ORDER)
                )
                .forEach(holders::add);
    }
Generates a web editor request payload.

@param holders the holders to edit
@param tracks the tracks to edit
@param sender the sender who is creating the session
@param cmdLabel the command label used by LuckPerms
@param plugin the plugin
@return a payload
common/src/main/java/me/lucko/luckperms/common/webeditor/WebEditorRequest.java