int main(void) {
std::vector<std::pair<uint32_t, uint32_t>> checks = {
{ 0, 0},
{ 0, 1},
{ 1, 0},
{ 1, 1},
{ 0, UINT32_MAX - 1},
{ 0, UINT32_MAX},
{ 1, UINT32_MAX - 1},
{ 1, UINT32_MAX},
{UINT32_MAX - 1, 0},
{UINT32_MAX - 1, 1},
{ UINT32_MAX, 0},
{ UINT32_MAX, 1},
{UINT32_MAX - 1, UINT32_MAX - 1},
{UINT32_MAX - 1, UINT32_MAX},
{ UINT32_MAX, UINT32_MAX - 1},
{ UINT32_MAX, UINT32_MAX},
};
for (auto i: checks) {
assert(fast_max_u32(i.first, i.second) == std::max(i.first, i.second));
assert(fast_min_u32(i.first, i.second) == std::min(i.first, i.second));
}
return 0;
}