refactor some stuff now