reformatted for better clarity