however, looking at this line now, if the `datatype` doesn't exist in `Existing` or `Props` why are we validating `allow_mult` in the `validat_dt_*` path? Shouldn't we mutually recurse (or preferably return) at this point?