teil 1 refactor