rebase and fixed some checkstyle issue