@Nullable
  protected PsiBuilder.Marker parseImportStatement(PsiBuilder builder) {
    if (builder.getTokenType() != JavaTokenType.IMPORT_KEYWORD) return null;

    PsiBuilder.Marker statement = builder.mark();
    builder.advanceLexer();

    IElementType type = getImportType(builder);
    boolean isStatic = type == myJavaElementTypeContainer.IMPORT_STATIC_STATEMENT;
    boolean isModule = type == myJavaElementTypeContainer.IMPORT_MODULE_STATEMENT;
    final boolean isOk;
    if (isModule) {
      isOk = myParser.getModuleParser().parseName(builder) != null;
    } else {
      isOk = myParser.getReferenceParser().parseImportCodeReference(builder, isStatic);
    }
    if (isOk) semicolon(builder);

    done(statement, type, myWhiteSpaceAndCommentSetHolder);
    return statement;
  }
@Nullable
  protected PsiBuilder.Marker parseImportStatement(PsiBuilder builder)