void func()
{
    if (!negative)
        return this;
    else if (a.negative)
        return max();
    else
        return a.value == 0 ? a : this;
}