rewriteing for formatting, and such