refactoring to improve fluent api
refactoring
refactoring