add support for default value