private static @NotNull List<String> separateCompositeKey(@NotNull String text) {
    text = text.trim();
    text = StringUtil.trimEnd(text, ':');
    int leadingDotsNumber = StringUtil.countChars(text, '.', 0, true);
    String dotPrefix = text.substring(0, leadingDotsNumber);
    text = text.substring(leadingDotsNumber);
    List<String> sequence = new ArrayList<>(StringUtil.split(text, "."));
    if (!dotPrefix.isEmpty() && sequence.size() > 0) {
      sequence.set(0, dotPrefix + sequence.get(0));
    }
    return sequence;
  }
private static @NotNull List<String> separateCompositeKey(@NotNull String text)