'Returns to be "a - b * n", where n is the integer nearest the exact
value of "x / b" (if two integers are equally near then the even one
is chosen).  If the result is equal to 0 then its sign will be the
sign of a.
This operation will fail under the same conditions as integer division
(that is, if integer division on the same two operands would fail, the
remainder cannot be calculated).
>>> ExtendedContext.remainder_near(Decimal(\'2.1\'), Decimal(\'3\'))
Decimal(\'-0.9\')
>>> ExtendedContext.remainder_near(Decimal(\'10\'), Decimal(\'6\'))
Decimal(\'-2\')
>>> ExtendedContext.remainder_near(Decimal(\'10\'), Decimal(\'3\'))
Decimal(\'1\')
>>> ExtendedContext.remainder_near(Decimal(\'-10\'), Decimal(\'3\'))
Decimal(\'-1\')
>>> ExtendedContext.remainder_near(Decimal(\'10.2\'), Decimal(\'1\'))
Decimal(\'0.2\')
>>> ExtendedContext.remainder_near(Decimal(\'10\'), Decimal(\'0.3\'))
Decimal(\'0.1\')
>>> ExtendedContext.remainder_near(Decimal(\'3.6\'), Decimal(\'1.3\'))
Decimal(\'-0.3\')
>>> ExtendedContext.remainder_near(3, 11)
Decimal(\'3\')
>>> ExtendedContext.remainder_near(Decimal(3), 11)
Decimal(\'3\')
>>> ExtendedContext.remainder_near(3, Decimal(11))
Decimal(\'3\')'

def remainder_near(self, a, b):

    a = _convert_other(a, raiseit=True)
    return a.remainder_near(b, context=self)
