#include <eve/module/core.hpp>
An operation that would leave the representable range returns the nearest bound rather than the value C++ would produce, so eve::abs[saturated](valmin(as<T>())) gives valmax(as<T>()) instead of wrapping back to a negative number.