Moved some stuff around to make more sense.