we'll also assert instead of throwing an exception because that just seems more useful. this should never *ever* happen, and it is on the callers of such conversions to ensure that the conversion *is* safe. Change-Id: Ib0696af4f037046f2d45bf5b1b255393ea9b5f05