adding responsabilities
refactoring and adding responsabilities