refactor - improvements