add default value support

This is sample code, what do you think about it？