for example, we need to guard against things like: ``` static_cast<T>(-1) ``` when `T == unsigned int`