light refactoring