@NotNull
 private static JBIterable<PsiElement> getSiblings(PsiElement element, boolean fwd) {
   SyntaxTraverser.ApiEx<PsiElement> api =
       fwd ? SyntaxTraverser.psiApi() : SyntaxTraverser.psiApiReversed();
   JBIterable<PsiElement> flatSiblings = JBIterable.generate(element, api::next).skip(1);
   return SyntaxTraverser.syntaxTraverser(api)
       .withRoots(flatSiblings)
       .expandAndSkip(e -> api.typeOf(e) == GeneratedParserUtilBase.DUMMY_BLOCK)
       .traverse();
 }