mini refactor
updated version