protected List<String> getGroupOrder(List<? extends BooleanOptionKey> options) {
    List<String> groupOrder = new ArrayList<>();
    for (BooleanOptionKey each : options) {
      if (each.groupName != null && !groupOrder.contains(each.groupName)) {
        groupOrder.add(each.groupName);
      }
    }
    return groupOrder;
  }
protected List<String> getGroupOrder(List<? extends BooleanOptionKey> options)