adding more changes. this feels way dirtier than it should be