* I failed to invoke `new' when I made `BAD', which meant that `BAD'
actually ended up set to `undefined'.
* I didn't set `DEP.val' properly if `value' wasn't passed explicitly,
so, err, it ended up being `undefined', which is then erroneously
considered to be equivalent to `BAD'.