Rearranged a little bit
Major clean up