@Override
  public XmlText @NotNull [] getTextElements() {
    XmlText[] textElements = myTextElements;
    if (textElements == null) {
      textElements = Arrays.stream(myElements)
        .filter(element -> element instanceof XmlText)
        .map(element -> (XmlText)element).toArray(XmlText[]::new);
      myTextElements = textElements = textElements.length == 0 ? XmlText.EMPTY_ARRAY : textElements;
    }
    return textElements;
  }
@Override
  public XmlText @NotNull [] getTextElements()