@NotNull
  @Override
  public ASTNode parse(@NotNull IElementType root, @NotNull PsiBuilder builder) {
    builder.setDebugMode(ApplicationManager.getApplication().isUnitTestMode());

    PsiBuilder.Marker rootMarker = builder.mark();
    while (!builder.eof()) {
      parseSection(builder);
    }
    rootMarker.done(root);

    return builder.getTreeBuilt();
  }
@NotNull
  @Override
  public ASTNode parse(@NotNull IElementType root, @NotNull PsiBuilder builder)