lots more rearranging, removing unnecessary things