formatting, changing functions and all that shizzle