refactor the size
refactor the layout