MAX_I64
ASSERT(tmp <= (uint64_t)(MAX_I64 - res.value));
ASSERT(tmp <= (uint64_t)(MAX_I64 - res.value));
ASSERT(tmp <= (uint64_t)(MAX_I64 - res.value));
(-MAX_I64 - 1)
ASSERT(res_value <= MAX_I64 - summand);