reformatted to make it a little cleaner