Why do you set a default value to then immediately fail when the default is used? Is that because the base class allows not passing a value for `value`?