undefined and 0 shouldn't behave differently, should they? I think this should just be `if (!dc)`