refactoring and completing scenarios