@Nullable
  @Override
  protected Indent getIndentInBlock(@NotNull Project project,
                                    @Nullable Language language,
                                    @NotNull SemanticEditorPosition blockStartPosition) {
    SemanticEditorPosition beforeStart = blockStartPosition.before().beforeOptional(Whitespace);
    if (beforeStart.isAt(JavaTokenType.EQ) ||
        beforeStart.isAt(JavaTokenType.RBRACKET) ||
        beforeStart.isAt(JavaTokenType.LPARENTH)
    ) {
      // For arrays like int x = {<caret>0, 1, 2}
      return getDefaultIndentFromType(CONTINUATION);
    }
    else if (beforeStart.isAt(JavaTokenType.IDENTIFIER)) {
      moveBeforeExtendsImplementsAndIdentifier(beforeStart);
      if (beforeStart.isAt(JavaTokenType.CLASS_KEYWORD) && doNotIndentClassMembers(beforeStart)) {
        return Indent.getNoneIndent();
      }
    }
    return super.getIndentInBlock(project, language, blockStartPosition);
  }
@Nullable
  @Override
  protected Indent getIndentInBlock(@NotNull Project project,
                                    @Nullable Language language,
                                    @NotNull SemanticEditorPosition blockStartPosition)