fix last commit (4th refactor)