revamped some stuff