'Square root of a non-negative number to context precision.
If the result must be inexact, it is rounded using the round-half-even
algorithm.
>>> ExtendedContext.sqrt(Decimal(\'0\'))
Decimal(\'0\')
>>> ExtendedContext.sqrt(Decimal(\'-0\'))
Decimal(\'-0\')
>>> ExtendedContext.sqrt(Decimal(\'0.39\'))
Decimal(\'0.624499800\')
>>> ExtendedContext.sqrt(Decimal(\'100\'))
Decimal(\'10\')
>>> ExtendedContext.sqrt(Decimal(\'1\'))
Decimal(\'1\')
>>> ExtendedContext.sqrt(Decimal(\'1.0\'))
Decimal(\'1.0\')
>>> ExtendedContext.sqrt(Decimal(\'1.00\'))
Decimal(\'1.0\')
>>> ExtendedContext.sqrt(Decimal(\'7\'))
Decimal(\'2.64575131\')
>>> ExtendedContext.sqrt(Decimal(\'10\'))
Decimal(\'3.16227766\')
>>> ExtendedContext.sqrt(2)
Decimal(\'1.41421356\')
>>> ExtendedContext.prec
9'

def sqrt(self, a):

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