redid some stuff in accordance to Ashton's suggestions