'Returns a copy, unless it is a sNaN.
Rounds the number (if more then precision digits)'

def __pos__(self, context=None):

    if self._is_special:
        ans = self._check_nans(context=context)
        if ans:
            return ans
    sign = self._sign
    if (not self):
        sign = 0
    if (context is None):
        context = getcontext()
    if (context._rounding_decision == ALWAYS_ROUND):
        ans = self._fix(context)
    else:
        ans = Decimal(self)
    ans._sign = sign
    return ans
