'Round 5 to even, rest to nearest.'

def _round_half_even(self, prec):

    if (_exact_half(self._int, prec) and ((prec == 0) or (self._int[(prec - 1)] in '02468'))):
        return (-1)
    else:
        return self._round_half_up(prec)
