Refactored default value handling