again refactoring and salary with bonus with conditions