this is why we can't have type-unsafe things