private static @Nullable GetDataRule getDataRule(@NotNull String dataId, @NotNull GetDataRuleType ruleType) {
    return switch (ruleType) {
      case FAST -> {
        List<GetDataRule> rules = rulesForKey(dataId, GetDataRuleType.FAST);
        yield rules == null ? null : rules.size() == 1 ? rules.get(0) : dataProvider -> getRulesData(dataId, rules, dataProvider);
      }
      case PROVIDER -> getDataRuleInner(dataId, GetDataRuleType.PROVIDER);
      case CONTEXT -> getDataRuleInner(dataId, GetDataRuleType.CONTEXT);
    };
  }
private static @Nullable GetDataRule getDataRule(@NotNull String dataId, @NotNull GetDataRuleType ruleType)