'Rounds 5 up (away from 0)'

def _round_half_up(self, prec, expdiff, context, tmp=None):

    if (tmp is None):
        tmp = Decimal((self._sign, self._int[:prec], (self._exp - expdiff)))
    if (self._int[prec] >= 5):
        tmp = tmp._increment(round=0, context=context)
        if (len(tmp._int) > prec):
            return Decimal((tmp._sign, tmp._int[:(-1)], (tmp._exp + 1)))
    return tmp
