nicer layout, easier to modify