refactoring
usage improvements