add default value from extra key

use fields name for extra values
Let's also add some documentation here, that if no key is provided, the variable name will be used.