I'd avoid asserts on objects. Last I checked it requires a context jump. Just if and throw.