style and functional changes