private QueryOptions calculateStatic() {
        ImmutableContextSet.Builder accumulator = new ImmutableContextSetImpl.BuilderImpl();
        ContextConsumer consumer = accumulator::add;

        for (StaticContextCalculator calculator : this.calculators.staticCalculators()) {
            callStaticContextCalculator(calculator, consumer);
        }

        QueryOptions.Builder builder = this.plugin.getConfiguration().get(ConfigKeys.GLOBAL_QUERY_OPTIONS).toBuilder().context(accumulator.build());
        customizeStaticQueryOptions(builder);
        return builder.build();
    }
Base implementation of {@link ContextManager}.

@param <S> the subject type
@param <P> the player type
common/src/main/java/me/lucko/luckperms/common/context/manager/ContextManager.java