Refactoring work with default values and fix version