needs a isdefined check or a default value