refactoring use lombok