some reorganize and style change