reformatted for consistency and readability