@Override
  public @NotNull Collection<StructureViewTreeElement> provideNodes(@NotNull TreeElement node) {
    PsiElement psiElem;
    String details;
    if (node instanceof DuplicatedPsiTreeElementBase yamlNode) {
      psiElem = yamlNode.getElement();
      details = yamlNode.getDetails();
    }
    else if (node instanceof PsiTreeElementBase yamlNode) {
      psiElem = yamlNode.getElement();
      if (psiElem == null) {
        // not sure it is possible
        return Collections.emptyList();
      }
      details = calculateStartPath(psiElem);
    }
    else {
      return Collections.emptyList();
    }
    YAMLPsiElement yamlElem = psiElem instanceof YAMLPsiElement ? (YAMLPsiElement)psiElem : null;
    YAMLValue value = getContainedValue(yamlElem);
    if (!(value instanceof YAMLAlias)) {
      return Collections.emptyList();
    }
    return YAMLStructureViewFactory.createChildrenViewTreeElements(resolveAlias((YAMLAlias)value), details);
  }
@Override
  public @NotNull Collection<StructureViewTreeElement> provideNodes(@NotNull TreeElement node)