make assert more useful, include incorrect value in typechecks