Cleaned up the code a bit to make it more readable