@NotNull
  default <T extends PyAstElement> T childToPsiNotNull(TokenSet filterSet, int index) {
    final PyAstElement child = childToPsi(filterSet, index);
    if (child == null) {
      throw new RuntimeException("child must not be null: expression text " + getText());
    }
    //noinspection unchecked
    return (T)child;
  }
@NotNull
  default <T extends PyAstElement> T childToPsiNotNull(TokenSet filterSet, int index)