from typing import Any, Literal
from sympy.polys.domains.domainelement import DomainElement
from sympy.utilities import public
from mpmath.ctx_mp_python import PythonMPContext, _mpc, _mpf

@public
class RealElement(_mpf, DomainElement):
    __slots__ = ...
    _mpf_ = ...
    def parent(self):
        ...
    


@public
class ComplexElement(_mpc, DomainElement):
    __slots__ = ...
    _mpc_ = ...
    def parent(self):
        ...
    


new = ...
@public
class MPContext(PythonMPContext):
    def __init__(ctx, prec=..., dps=..., tol=..., real=...) -> None:
        ...
    
    def make_tol(ctx) -> _mpf:
        ...
    
    def to_rational(ctx, s, limit=...) -> tuple[Any, Any | Literal[1]]:
        ...
    
    def almosteq(ctx, s, t, rel_eps=..., abs_eps=...) -> Literal[True]:
        ...
    


